Huis databases Wat is NOSQL? - definitie van techopedia

Wat is NOSQL? - definitie van techopedia

Inhoudsopgave:

Anonim

Definitie - Wat betekent NoSQL?

NoSQL is een klasse van databasebeheersystemen (DBMS) die niet alle regels van een relationeel DBMS volgen en geen traditionele SQL kunnen gebruiken om gegevens op te vragen. De term is enigszins misleidend wanneer deze wordt geïnterpreteerd als "Geen SQL" en de meeste woorden worden vertaald als "Niet alleen SQL", omdat dit type database over het algemeen geen vervanging is, maar eerder een aanvulling op RDBMS en SQL.

Op NoSQL gebaseerde systemen worden meestal gebruikt in zeer grote databases, die bijzonder gevoelig zijn voor prestatieproblemen die worden veroorzaakt door de beperkingen van SQL en het relationele model van databases. Velen beschouwen NoSQL als de moderne favoriete database die schaalbaar is met webvereisten. Enkele opvallende implementaties van NoSQL zijn de Cassandra-database van Facebook, Google's BigTable en Amazon's SimpleDB en Dynamo.

Techopedia verklaart NoSQL

Een NoSQL-database volgt niet noodzakelijk de strikte regels die gelden voor transacties in relationele databases. Deze overtreden regels staan ​​bekend onder de afkorting ACID (Atomicity, Consistency, Integrity, Durability). NoSQL-databases maken bijvoorbeeld geen gebruik van vaste schemastructuren en SQL-joins.

In een traditioneel RDBMS worden de basisbewerkingen gelezen en geschreven. Lezen kunnen worden geschaald door gegevens naar meerdere machines te repliceren, dus leesvervullende leesverzoeken. Dit heeft echter invloed op het schrijven omdat de gegevensconsistentie moet worden gehandhaafd. Alleen schrijven kan worden geschaald door de gegevens te partitioneren. Dit heeft invloed op het lezen, omdat gedistribueerde joins meestal traag en moeilijk te implementeren zijn. Bovendien moeten databases gegevens vergrendelen om de ACID-eigenschappen te behouden. Dit betekent dat wanneer een gebruiker een gegevensitem opent, geen andere gebruiker hetzelfde item mag wijzigen. Deze beperking heeft ernstige gevolgen voor de prestaties.

Deze beperkingen zijn in het verleden geen groot probleem geweest. Met de komst van sociale netwerken en big data werd een aantal enorme databases die opkwamen echter gedwongen om de tientallen, of zelfs honderden, miljoenen klanten over de hele wereld te bedienen met elke minuut duizenden lees- en schrijfopdrachten. Traditionele RDBMS'en voldoen eenvoudigweg niet aan deze behoefte omdat ze alleen kunnen 'opschalen' of de bronnen op een centrale server kunnen vergroten. Een NoSQL-implementatie daarentegen kan de databasebelasting 'opschalen' of over meerdere servers verdelen.

NoSQL-databases zijn gericht op specifieke probleemklassen - van flexibeler omgaan met opgeslagen gegevens (documentarchieven) tot het richten van gebruikssituaties, zoals relaties (grafiekdatabases) en het verzamelen van gegevens (kolomdatabases) of het vereenvoudigen van het idee van een database tot iets dat een waarde opslaat (sleutel / waardeopslag).

NoSQL-databases bieden de voordelen van snelle schaalbaarheid, veel betere prestaties en een eenvoudigere structuur in vergelijking met RDBMS's. Ze hebben echter ook last van een relatief nieuwe en onbewezen technologie en kunnen geen uitgebreide rapportage- en analytische functionaliteit van RDBMS bieden.

Deze definitie is geschreven in de context van Database
Wat is NOSQL? - definitie van techopedia