Geen resultaten gevonden

Uw zoekopdracht heeft geen resultaten opgeleverd.

We raden u aan het volgende te proberen om te vinden wat u zoekt:

  • Controleer de spelling van het trefwoord in uw zoekopdracht.
  • Gebruik synoniemen voor het trefwoord dat u hebt getypt. Probeer bijvoorbeeld “applicatie” in plaats van “software”.
  • Probeer een van de onderstaande populaire zoekopdrachten.
  • Start een nieuwe zoekopdracht.
Populaire vragen

Wat is NoSQL?

De term 'NoSQL' verwijst naar niet-relationele databases en in dit type databases wordt data in een andere indeling opgeslagen dan in relationele tabellen. In NoSQL-databases kan echter worden gezocht met behulp van idiomatische taal-API's, declaratieve gestructureerde querytalen en query-by-example-talen. Daarom worden deze databases ook wel "niet alleen SQL"-databases genoemd.

Waar wordt een NoSQL-database voor gebruikt?

NoSQL-databases worden wijd en zijd gebruikt in realtime webapplicaties en big data, omdat hoge schaalbaarheid en hoge beschikbaarheid de belangrijkste voordelen van deze databases zijn.

NoSQL-databases genieten ook de voorkeur van ontwikkelaars, omdat ze zich van nature lenen voor een flexibel ontwikkelingsparadigma door zich snel aan te passen aan veranderende vereisten. Met NoSQL-databases kan de data op intuïtievere en gemakkelijker te begrijpen manieren worden opgeslagen, of dichter bij de manier staan waarop de data door applicaties wordt gebruikt, met minder transformaties die nodig zijn bij het opslaan of ophalen met behulp van API's in NoSQL-stijl. Bovendien kunnen NoSQL-databases volledig profiteren van de cloud met als grote voordeel geen downtime.

SQL versus NoSQL

SQL-databases zijn relationeel, terwijl NoSQL-databases niet-relationeel zijn. Het relationele databasebeheersysteem (RDBMS) is de basis voor gestructureerde querytaal (SQL), waarmee gebruikers data in zeer gestructureerde tabellen kunnen openen en manipuleren. Dit is het basismodel voor databasesystemen zoals MS SQL Server, IBM DB2, Oracle en MySQL. Maar bij NoSQL-databases kan de syntaxis voor toegang tot data per database verschillen.

Relationele database versus NoSQL-database

Om NoSQL-databases te kunnen begrijpen, is het belangrijk om te weten wat het verschil is tussen RDBMS en niet-relationele databases.

De data in een RDBMS wordt opgeslagen in databaseobjecten die tabellen worden genoemd. Een tabel is een verzameling gerelateerde data-vermeldingen en bestaat uit kolommen en rijen. Voor deze databases moet het schema eerst worden gedefinieerd, wat wil zeggen dat alle kolommen en de bijbehorende datatypen vooraf bekend moeten zijn, zodat de data door applicaties naar de database kan worden geschreven. Deze database slaan ook informatie op die meerdere tabellen met elkaar verbindt door middel van sleutels, waardoor er een relatie tussen meerdere tabellen ontstaat. In het eenvoudigste geval wordt er een sleutel gebruikt om een specifieke rij op te halen, zodat deze kan worden onderzocht of gewijzigd.

Omgekeerd kan in NoSQL-databases data worden opgeslagen zonder eerst het schema van tevoren te moeten definiëren, wat inhoudt dat u snel aan de slag kunt en kunt herhalen, waarbij u het datamodel gaandeweg definieert. Dit kan geschikt zijn voor specifieke zakelijke vereisten, of het nu grafiekgebaseerde, kolomgerichte of documentgerichte opslag of als sleutelwaardeopslag is.

Tot voor kort waren relationele databases de meest gebruikte modellen. Ze worden momenteel nog veel gebruikt bij het merendeel van de bedrijven; door de verscheidenheid, snelheid en de grote volumes data waar gebruikers tegenwoordig toegang toe moeten hebben, is echter soms een totaal andere database als aanvulling op de relationele database nodig. Dit heeft geleid tot de acceptatie in sommige gebieden van NoSQL-databases, die ook wel "niet-relationele databases" worden genoemd. Vanwege hun vermogen om horizontaal en snel uit te schalen, kunnen niet-relationele databases grote hoeveelheden dataverkeer aan, waardoor ze ook zeer flexibel zijn.

Wanneer valt de keuze op een NoSQL-database?

Voor bedrijven en organisaties die zeer snel moeten innoveren, is het zaak om flexibel te blijven en in alle geledingen van de onderneming operationeel te blijven. NoSQL-databases bieden flexibele schema's en ondersteunen ook een verscheidenheid aan datamodellen die ideaal zijn voor het bouwen van applicaties waarvoor grote datavolumes en lage latentie- of reactietijden nodig zijn, bijvoorbeeld online gaming en e-webapplicaties voor e-commerce.

Wanneer valt de keuze niet op een NoSQL-database?

NoSQL-databases vertrouwen doorgaans op gedenormaliseerde data, die de typen applicaties ondersteunen waarbij minder tabellen (of containers) worden gebruikt en waarvan de datarelaties niet worden gemodelleerd met behulp van referenties, maar eerder als ingesloten records (of documenten). Veel klassieke backoffice-bedrijfsapplicaties op het gebied van finance, boekhouding en Enterprise Resource Planning zijn afhankelijk van sterk genormaliseerde data om data-afwijkingen en dataduplicatie te voorkomen. Dit zijn de doorgaans de typen applicaties die niet geschikt zijn voor een NoSQL-database.

Een ander verschil van NoSQL-databases is de complexiteit van zoekopdrachten. NoSQL-databases werken fenomenaal goed bij zoekopdrachten die op één tabel worden uitgevoerd. Naarmate de complexiteit van de zoekopdrachten toeneemt, zijn relationele databases een betere keuze. NoSQL-database bieden doorgaans geen complexe joins, subquery's en het nesten van query's in een WHERE-clausule.

Soms hoeft er echter geen keuze tussen relationele en niet-relationele databases te worden gemaakt. Bedrijven hebben vaak gekozen voor databases die een geconvergeerd model bieden, waarin ze een combinatie van relationele en niet-relationele datamodellen kunnen gebruiken. Deze hybride benadering biedt meer flexibiliteit bij het verwerken van verschillende typen data, terwijl tegelijkertijd de lees- en schrijfconsistentie wordt gegarandeerd zonder dat de prestaties slechter worden.

Wat biedt NoSQL dat andere databases niet bieden?

Een van de belangrijkste verschillen tussen NoSQL-databases en andere typen databases is dat bij NoSQL-databases doorgaans een ongestructureerde opslag wordt gebruikt. NoSQL-databases zijn in de afgelopen twee decennia ontwikkeld en zijn ontworpen voor snelle, eenvoudige zoekopdrachten, uitgebreide data en veelvuldige wijzigingen in applicaties. Bovendien wordt door deze databases het programmeren voor ontwikkelaars ook veel eenvoudiger.

Een andere belangrijke onderscheidende factor is dat NoSQL-databases vertrouwen op een proces genaamd "sharding" voor het horizontaal uitschalen, wat betekent dat er meer machines kunnen worden toegevoegd om data op meerdere servers te kunnen verwerken. Voor de verticale schaalvergroting die in andere SQL-databases wordt aangetroffen, hebben de hedendaagse machines meer processorkracht en geheugen nodig, wat onhoudbaar kan zijn omdat er dan steeds meer opslagruimte nodig is.

De aard van horizontaal schalen met NoSQL-databases betekent dat ze extreem grote hoeveelheden data, zelfs hoeveelheden data die steeds groter worden, op een efficiëntere manier kunnen verwerken. Het kan verhelderend zijn om verticaal schalen te zien als het plaatsen van een nieuwe verdieping op uw huis, terwijl horizontaal schalen kan worden vergeleken met het bouwen van een huis naast uw huis.

Voordelen van een NoSQL-database

De ongekende snelheid en schaal van digitale interactie en dataconsumptie in de afgelopen twee decennia heeft ertoe geleid dat bedrijven een modernere, veranderlijke benadering moeten volgen van hoe ze data opslaan en hoe ze er toegang toe hebben. Met gebruikers over de hele wereld die een ononderbroken stroom van content en functies verlangen, is het geen wonder dat databases snel moesten worden aangepast. Met dit in gedachten staan hieronder enkele van de belangrijkste redenen waarom ontwikkelaars kiezen voor NoSQL-/niet-relationele databases:

  • Flexibiliteit: bij SQL-databases wordt data in een veel vastere vooraf gedefinieerde structuur opgeslagen. Maar bij NoSQL kan data op een veel vrijere manier zonder die vaste schema's worden opgeslagen. Dit ontwerp maakt innovatie en snelle applicatieontwikkeling mogelijk. Ontwikkelaars kunnen zich concentreren op het maken van systemen om hun klanten beter van dienst te zijn zonder zich zorgen te hoeven maken over schema's. NoSQL-databases kunnen gemakkelijk elk data-indeling aan, zoals gestructureerde, semi-gestructureerde en niet-gestructureerde data in één datastore.
  • Schaalbaarheid: NoSQL-databases kunnen worden uitgebreid met standaardhardware in plaats van te hoeven opschalen door meer servers toe te voegen. Zo kan meer dataverkeer worden ondersteund en kan er zonder downtime aan de vraag worden voldaan. Door te schalen kunnen NoSQL-databases groter en krachtiger worden, en daarom zijn ze de voorkeursoptie voor datasets die steeds verder worden ontwikkeld.
  • Krachtige prestaties: de schaalbare architectuur van een NoSQL-database kan met name waardevol zijn wanneer het datavolume of het dataverkeer toeneemt. Zoals in onderstaande afbeelding te zien is, zorgt deze architectuur voor snelle en voorspelbare responstijden van één cijfer in milliseconden. NoSQL-databases kunnen ook data opnemen en deze snel en betrouwbaar leveren. Daarom worden NoSQL-databases gebruikt in applicaties waarmee elke dag terabytes aan data worden verzameld, terwijl er voor die databases ook een zeer interactieve gebruikerservaring nodig is. In de onderstaande afbeelding ziet u een inkomende snelheid van 300 leesbewerkingen per seconde (blauwe lijn) met een 95ste latentie in het 3-4ms bereik, en een inkomende snelheid van 150 schrijfbewerkingen per seconde (groene lijn) met een 95ste latentie in het 4-5ms bereik.

    nosql-database

  • Beschikbaarheid: NoSQL-databases repliceren automatisch data over meerdere servers, datacenters of cloudbronnen. Dit minimaliseert op zijn beurt de latentie voor gebruikers, ongeacht waar ze zich bevinden. Deze functie werkt ook om de last van het databasebeheer te verminderen, waardoor er tijd vrij komt om andere prioriteiten aan te pakken.
  • Zeer functioneel: NoSQL-databases zijn ontworpen voor gedistribueerde datastores waarvoor extreem grote dataopslagen nodig zijn. Dit maakt NoSQL de ideale keuze voor big data, realtime webapps, 360-gradenanalyse van klanten, online shopping, online gamen, Internet of Things, sociale netwerken en online advertentieapplicaties.

Typen NoSQL-databases

Er zijn vier hoofdtypen NoSQL-databases:

  • Sleutelwaarde: dit is het meest flexibele type NoSQL-database omdat de applicatie zonder enige beperking volledige controle heeft over wat er in het waardeveld wordt opgeslagen.
  • Document: deze databases worden ook wel documentstores of documentgeoriënteerde databases genoemd en worden gebruikt voor het opslaan, ophalen en beheren van semi-gestructureerde data. Er hoeft niet te worden opgegeven welke velden er in het document moeten staan.
  • Grafiek: deze database deelt data georganiseerd in als knooppunten en relaties, die de verbindingen tussen knooppunten laten zien. Dit ondersteunt een uitgebreidere en completere weergave van data. Grafiekdatabases worden toegepast in sociale netwerken, reserveringssystemen en bij fraudedetectie.
  • Brede kolom: deze databases slaan data op en beheren die in de vorm van tabellen, rijen en kolommen. Ze worden breed ingezet bij applicaties waarin een kolomindeling nodig is om schemavrije data te kunnen vastleggen.

Oracle NoSQL Database proberen

Oracle NoSQL Database Cloud Service maakt het gemakkelijk voor ontwikkelaars om applicaties te bouwen met behulp van documentmodellen, kolommodellen en databasemodellen met sleutelwaarden die voorspelbare responstijden van één cijfer in milliseconden bieden bij datareplicatie voor hoge beschikbaarheid. De service biedt ACID-transacties, serverloze schaling, uitgebreide beveiliging en lage prijzen per gebruik.

Oracle NoSQL Database Cloud Service maakt nu deel uit van Oracle Cloud Free Tier, dat een gratis, tijdelijke promotietest omvat waarmee u een breed scala aan cloudservices kunt bekijken, evenals een reeks Always Free-services die nooit verlopen.

Applicaties bouwen, testen en implementeren in Oracle Cloud - helemaal gratis.