Huis Persoonlijke financiën 10 Redenen Developers Love NoSQL - dummies

10 Redenen Developers Love NoSQL - dummies

Inhoudsopgave:

Video: The future of gaming at Google 2024

Video: The future of gaming at Google 2024
Anonim

De populariteit van NoSQL-databases vloeit voort uit het grote aantal ontwikkelaars dat enthousiast is over het gebruik ervan. Ontwikkelaars zien NoSQL als een enabling en bevrijdende technologie. In tegenstelling tot de traditionele relationele aanpak, biedt NoSQL u een manier om met gegevens te werken die dichter bij de toepassing staan ​​dan met het relationele gegevensmodel.

Ontwikkelaars gebruiken NoSQL-technologieën om vele redenen, waarvan sommige hier worden benadrukt:

SQL-opdracht schrijven is niet nodig

Het schrijven van gestructureerde querytaal (SQL) - en dat doet het goed - is de vloek van het bestaan ​​van veel zakelijke ontwikkelaars. Deze pijn is omdat het schrijven van zeer complexe query's met meerdere joins in gerelateerde tabellen niet eenvoudig is. Bovendien is het bijhouden van complexe query-code, in het licht van regelmatige wijzigingen in de database in de tijd, een taak op zich.

Enterprise-ontwikkelaars hebben een aantal manieren verzonnen om te voorkomen dat er SQL wordt geschreven. Een van de populairste manieren is het gebruik van de bibliotheek Object-Relational Mapping (ORM), Hibernate. Hibernate neemt een configuratiebestand en een of meer objecten weg en abstraheert de vervelende SQL zodat ontwikkelaars deze niet hoeven te gebruiken. Dit levert uiteraard kosten op voor de prestaties en lost niet alle gebruiksgevallen van vragen op. Soms moet je terugvallen op SQL.

NoSQL-databases bieden hun eigen query-talen, die zijn afgestemd op de manier waarop de gegevens worden beheerd door de database en op de bewerkingen die ontwikkelaars het vaakst uitvoeren. Deze aanpak biedt een eenvoudiger query-mechanisme dan geneste SQL-instructies.

Sommige NoSQL-databases bieden ook een SQL-interface om query's uit te voeren op NoSQL-databases, voor het geval ontwikkelaars de SQL-gewoonte niet kunnen doorbreken!

U hoeft geen maanden te besteden aan het ontwerpen van schema

Schema-agnostiek in NoSQL-databases stelt u in staat om gegevens snel te laden zonder dat u gedurende een periode van maanden een relationeel schema hoeft aan te maken. U hoeft niet elk gegevensitem afzonderlijk te analyseren dat u in NoSQL moet opslaan, net als bij een RDBMS.

Minder gegevens-transformatiecode (ETL)

Een veelvoorkomend probleem met relationele databases die het gevolg zijn van een schemaontwerp vooraf, is dat u niet-relationele gegevens in rijen en kolommen moet forceren. Dit vernietigingsmechanisme, samen met andere codemethoden die informatie verwerken voor opslag en post-proces voor ophalen, wordt aangeduid als uitpakken, transformeren en laden (ETL) .

Deze code dwingt ontwikkelaars hun mooie glanzende object en documentmodellen te nemen en code te schrijven om elk laatste element op te slaan. Dit is smerig en leidt ook tot zeer bekwame ontwikkelaars die slecht presterende en oninteressante sanitaire code schrijven.

Met NoSQL-databases kunt u de opgeslagen gegevensstructuren veel dichter bij hun oorspronkelijke vorm houden. Gegevens die tussen systemen doorlopen, zijn meestal in een XML-indeling, terwijl als het op webtoepassingen aankomt, de gegevens in een JSON-document zijn opgemaakt. Het kunnen opslaan, beheren en doorzoeken van JSON is een groot voordeel voor applicatieontwikkelaars.

Eenvoudiger om code te onderhouden

Alle code die u schrijft moet worden gehandhaafd. Door databasestructuren dicht bij de gegevensindelingen van de toepassingscode te houden, minimaliseert u de hoeveelheid code, die op zijn beurt het onderhoud van code- en regressietests die u in de loop van de tijd moet doen, tot een minimum beperkt.

Wanneer gegevensstructuren op een RDBMS worden gewijzigd, moet u alle SQL-code die de gewijzigde tabellen gebruikt, controleren. In NoSQL voegt u simpelweg ondersteuning toe voor de nieuwe elementen of negeert u ze gewoon! Veel eenvoudiger te onderhouden, dankzij de schema-agnostische aard van NoSQL-databases.

Voer code uit dicht bij de gegevens voor de beste prestaties

Een RDBMS biedt opgeslagen procedures voor het uitvoeren van code op een databaseserver. Deze code wordt op één plaats uitgevoerd. Deze nuttige benadering vormt de basis van vele analytische en complexe toepassingen voor gegevensbeheer.

Veel NoSQL-databases staan ​​toe dat dit type code wordt gedistribueerd over alle servers die relevante gegevens opslaan, waardoor een grotere parallellisatie van de werkbelasting mogelijk is. Deze aanpak is vooral belangrijk voor grote hoeveelheden gegevens die moeten worden verwerkt en voor complexe aggregatieanalyses tijdens de query.

Door de gebruiker gedefinieerde functies (UDF's) en server-side scripting in verschillende NoSQL-databases bieden deze gedistribueerde mogelijkheid. UDF's zijn vergelijkbaar met de MapReduce-mogelijkheden van Hadoop, behalve dat UDF's in realtime kunnen plaatsvinden in plaats van in de batchmodus en niet dezelfde infrastructuuruitrusting vereisen als Hadoop plus een database zou vereisen.

Veel open source-opties

In veel zakelijke softwaregebieden ontbreekt de keuze voor een solide open-sourceoplossing. Er kunnen slechts een of twee wijdverspreide opties bestaan. Beschikbaarheid van vaardigheden en lokale ondersteuning door het land zijn nog grotere problemen.

Er zijn echter een groot aantal open-source NoSQL-databases. Veel van deze hebben volwaardige commerciële bedrijven die ondersteuning bieden en wereldwijd kantoren hebben. Dus als je ondersteuning of meer functies nodig hebt, kun je uiteindelijk naar die versies gaan.

Dit vermindert de kosten van het gebruik van NoSQL-technologie en stelt u in staat om "te proberen voordat u koopt. "Deze beschikbaarheid van open source-alternatieven heeft ervoor gezorgd dat commerciële bedrijven in de NoSQL-ruimte gratis maar goed uitgeruste versies van hun software hebben aangeboden of speciale opstartlicenties voor kleine organisaties bieden.

Eenvoudig te schalen

U hoeft geen dure DBA te kopen om dagen te besteden aan het reviseren van SQL en het creëren van gematerialiseerde views om elke centimeter aan prestaties uit NoSQL-systemen te kunnen bekijken.

Key-value-winkels kunnen honderdduizenden bewerkingen per server afhandelen. Alle typen NoSQL kunnen horizontaal worden geschaald over relatief goedkope commodity-servers.Het is dus veel eenvoudiger om uw databasecluster te schalen met NoSQL dan met traditionele relationele databases.

Bovendien passen NoSQL-databases vanwege hun schaalvaardigheden ook goed in publieke en private clouds. NoSQL-databases zijn ontworpen om flexibel te zijn en uit te breiden en samen te trekken naarmate het gebruik van uw toepassing verandert. Deze mogelijkheid wordt vaak elasticiteit genoemd.

Uiteindelijk consistentiegegevensmodel

Hoewel bedrijfskritieke zaken ACID-conformiteit vereisen, hoeft niet elke toepassing dit te doen. Het kunnen gebruiken van consistentie over zeer grote clusters kan nuttig zijn voor sommige toepassingen.

Met NoSQL-databases kunt u deze beperkingen versoepelen of sterke consistentie en zwakke consistentie in dezelfde database combineren voor verschillende recordtypen.

Esoterische taalondersteuning

Vrijwel alle databases ondersteunen de belangrijkste programmeertalen zoals Java en C #. NETTO. Veel databases ondersteunen het graag van PHP, Python en Ruby on Rails.

NoSQL heeft een bloeiende verzameling taalstuurprogramma's voor nog meer programmeertalen. Als uw organisatie een domeinspecifieke taal heeft, vindt u hier mogelijk ondersteuning voor in een NoSQL-database.

JavaScript end-to-end

Het gebruik van JavaScript is de afgelopen jaren explosief toegenomen. Het is een handige scripttaal, zowel op internet als, dankzij Node. js, aan de serverzijde.

Veel NoSQL-databases ondersteunen nu volledige end-to-end JavaScript-ontwikkeling. Dit betekent dat uw organisatie nu dezelfde verzameling programmeertaalvaardigheden kan gebruiken om webtoepassingen en API's voor middelhoge niveaus en bedrijfslogica te maken, en om back-enddatabase-triggers en op MapReduce gebaseerde analytische verwerking naast de gegevens te verwerken. Als gevolg hiervan, in vergelijking met andere databasetechnologieën, is de total cost of ownership (TCO) van NoSQL lager.

10 Redenen Developers Love NoSQL - dummies

Bewerkers keuze

Setup Menu 3 op de Rebel T6i / 750D - dummies

Setup Menu 3 op de Rebel T6i / 750D - dummies

Er wachten nogal wat aanpassingsmogelijkheden op de Setup-menu van de Rebel T6i / 750D 3. Setup-menu 3, weergegeven in de volgende afbeelding, bevat de volgende aanpassingsmogelijkheden: Schermkleur: standaard bevat het scherm Opname-instellingen opnamegegevens in het wit op een eenvoudige zwarte achtergrond. Er worden grijstinten in grijstinten gebruikt en accenten worden meestal oranje gemarkeerd. ...

Bewerkers keuze

Tekst invoeren en in een PowerPoint-dia passen - dummies

Tekst invoeren en in een PowerPoint-dia passen - dummies

Tekst aan een inhoud toevoegen tijdelijke aanduiding in Microsoft PowerPoint, klik op het gebied Klik om tekst toe te voegen en typ wat u wilt. Als u een ander type inhoud wilt toevoegen, klikt u op het pictogram in de tijdelijke aanduiding voor het gewenste type. Als u meer tekst typt dan in dat tekstvak past (vooral gebruikelijk voor ...

Voor senioren: de Prullenbak van uw computer leegmaken - dummies

Voor senioren: de Prullenbak van uw computer leegmaken - dummies

De Prullenbak op uw computer bevat onlangs verwijderde items. Uw oude bestanden bevinden zich in de Prullenbak en u kunt ze ophalen totdat u deze leegt of totdat deze de maximale maximale grootte heeft bereikt, en Windows automatisch enkele bestanden dumpt. Nadat u de Prullenbak hebt leeggemaakt, zijn alle bestanden daarin niet beschikbaar voor ...

Hoe tekst in te voeren in een Microsoft Office-document - dummies

Hoe tekst in te voeren in een Microsoft Office-document - dummies

Nadat u een document hebt gemaakt, bent u klaar om te beginnen met typen. Tekst op de pagina plaatsen (of op het scherm) is een beetje anders in elk van de drie grote Microsoft Office-toepassingen: Word, Excel en PowerPoint. Woord: Het belangrijkste werkgebied van het programma is een lege lei waarop u rechtstreeks kunt typen. Klik gewoon in de ...

Bewerkers keuze

Animatie maken met de HTML5-canvastag - dummies

Animatie maken met de HTML5-canvastag - dummies

Hoewel de HTML5-canvastag misschien niet als vervanging voor Flash als mechanisme voor het implementeren van games en animaties in de browser, is het redelijk eenvoudig om animaties aan een canvasafbeelding toe te voegen. De sleutel is om de animatiefuncties te gebruiken die al in de browser zijn ingebouwd. Basisstructuur van de animatielus in HTML5-canvas Een animatie ...

Hoe externe stijlen maken in CSS3 - dummies

Hoe externe stijlen maken in CSS3 - dummies

De meeste ontwikkelaars gebruiken externe stijlen in CSS3 om te verkleinen de hoeveelheid werk die nodig is om een ​​site te onderhouden. Een. CSS-bestand bevat alle stijlen voor de site, wat betekent dat het veranderen van een stijl voor de hele site net zo eenvoudig is als het veranderen van dat ene bestand (in plaats van elke pagina). Omdat de wijziging plaatsvindt in slechts ...

Hoe u volledige interactieve CSS3-toepassingen maakt met YUI - dummies

Hoe u volledige interactieve CSS3-toepassingen maakt met YUI - dummies

De Yahoo! Gebruikersinterface (YUI) -bibliotheek (Yuilibrary) is een complete ontwikkeling - API verwant met jQuery en jQuery UI CSS3 gecombineerd in sommige opzichten en rijker dan deze bibliotheken in andere. Dit is een complexe API die is ontworpen om aan de behoeften van grotere applicaties te voldoen. Eigenlijk moet je echt de tutorials doorlopen, ...