sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvad betyder dokumentorienteret vs. nøgleværdi, når man taler om MongoDB vs. Cassandra?

Et nøgleværdilager giver den enklest mulige datamodel og er præcis, hvad navnet antyder:det er et lagersystem, der gemmer værdier indekseret med en nøgle. Du er begrænset til at søge efter nøgle, og værdierne er ugennemsigtige , butikken ved ikke noget omkring dem. Dette tillader meget hurtige læse- og skriveoperationer (en simpel diskadgang), og jeg ser denne model som en slags ikke-flygtig cache (dvs. velegnet, hvis du har brug for hurtig adgang med nøgle til data med lang levetid).

En dokument-orienteret database udvider den tidligere model, og værdier gemmes i en struktureret format (et dokument, deraf navnet), som databasen kan forstå. Et dokument kunne for eksempel være et blogindlæg og kommentarerne og tags gemt på en denormaliseret måde. Da dataene er gennemsigtige , butikken kan udføre mere arbejde (som indeksering af felter i dokumentet), og du er ikke begrænset til forespørgsel efter nøgle. Som jeg antydede, gør sådanne databaser det muligt at hente en hel sides data med en enkelt forespørgsel og er velegnede til indholdsorienterede applikationer (hvilket er grunden til, at store websteder som Facebook eller Amazon kan lide dem).

Andre typer NoSQL-databaser omfatter kolonneorienterede butikker , grafdatabaser og endda objektdatabaser . Men dette går ud over spørgsmålet.

Se også



  1. Node.js - Mongoose - Tjek om der findes en samling

  2. Mongoose skema sæt tidsstempel på indlejret dokument

  3. Forstå WriteConcern i MongoDB C#

  4. Mongo DB finder alle poster med højeste værdi afhængigt af et nøglefelt