Home

kolomfamiliedatabases

Kolomfamiliedatabases, ook wel column-family databases genoemd, zijn een soort NoSQL-databases die data organiseren in kolomfamilies in plaats van rijen en kolommen zoals relationele systemen. In dit model worden data voor een rij verdeeld over meerdere kolomfamilies, zodat veelgebruikte kolommen samen kunnen worden opgeslagen en geanalyseerd. Het schema is doorgaans flexibel: kolommen kunnen per rij verschillen en nieuwe kolomfamilies kunnen zonder migraties worden toegevoegd.

Het data-model bestaat uit rijen die worden geïdentificeerd door een rij-sleutel. Binnen elke rij zijn kolommen

Architecturen variëren per implementatie, maar veel kolomfamiliedatabases zijn ontworpen voor schaal en lage latentie bij grote

Toepassingen omvatten tijdreeksen, IoT- en logdata, en gebruikersprofielen met veel attributen, waarvoor gecombineerde toegang tot meerdere

Voordelen zijn onder meer schaalbaarheid, snelle writes en reads voor brede rijen, en een flexibel schema. Nadelen

gegroepeerd
in
kolomfamilies;
kolommen
worden
aangeduid
door
een
kolomnaam
en
kunnen
een
tijdstempel
en
meerdere
versies
hebben.
Kolomfamilies
bepalen
welke
kolomgroepen
samen
worden
opgeslagen
en
kunnen
efficiënte
toegang
bieden
voor
brede
rijen.
Schaling
is
meestal
horizontaal:
data
wordt
verdeeld
over
meerdere
nodes
en
gerepliceerd
voor
beschikbaarheid
en
fouttolerantie.
datasets.
Opslag
kan
logisch
worden
georganiseerd
als
kolomfamilies
binnen
distributed
storage,
bijvoorbeeld
Cassandra
met
SSTables
en
memtables,
of
HBase
op
HDFS.
De
systemen
bieden
doorgaans
configureerbare
consistentieniveaus,
waardoor
toepassingen
kunnen
kiezen
tussen
sterke
en
eventual
consistency.
kolomfamilies
nodig
is.
Voorbeelden
van
populaire
kolomfamiliedatabases
zijn
Apache
Cassandra
en
Apache
HBase;
ScyllaDB
en
Google
Bigtable
bouwen
voort
op
hetzelfde
principe.
omvatten
complexiteit
bij
data-modellering
en
beperkingen
bij
het
uitvoeren
van
complexe
querying
en
bij
het
gebruik
van
secundaire
indexes.
Consistentie
kan
configureerbaar
zijn,
maar
sterke,
gecentraliseerde
transacties
zijn
doorgaans
duurder.