Introducció a la família de columnes amb Cassandra



Aquest bloc posa de manifest la importància de la família de columnes amb Cassandra

Família de columnes

Una família de columnes és similar a una taula de RDBMS o Relational Database Management System i és una divisió lògica que associa dades similars. Bàsicament, en dades similars es tendeix a emmagatzemar algun tipus de dades de temes similars.

Per exemple, les dades d'una comanda s'emmagatzemen en una família de columnes única, de manera que podeu tenir un identificador de comanda com a clau de fila, així com diverses columnes, com ara el tipus de producte que es va incloure com a part d'aquest ordre, per emmagatzemar-les a la família de comandes concreta. . Per posar certs exemples, una família de columnes d'usuari consisteix en un identificador d'usuari com a clau. Per tant, un és lliure de triar un identificador i les columnes poden ser 'nom = Kunal'. I els valors de les columnes són Kunal i Bangalore. Hi ha una segona família de columnes anomenada família de columnes Cricketer que permet emmagatzemar estadístiques de cricketer en una família de columnes. Per exemple, podeu tenir Sachin Tendulkar en una columna i un nombre de segles en una altra. Per tant, pot haver-hi qualsevol nombre de columnes.





Tipus de columnes

Column Family no és més que una taula que és anàloga a una taula en un món RDBMS. Hi ha certs tipus, a saber

Columna estàtica Família - La família de columnes estàtiques és on es defineixen els noms i els tipus de dades. Així, quan es crea la família de columnes, hi ha disponible l’opció per anomenar el nom de la columna i els tipus de dades. Es diu estàtic perquè les columnes continuen estàtiques i es coneixerà el nombre de columnes disponibles.



Família de columnes dinàmiques - Per contra, una família de columnes dinàmiques no defineix els noms de columna per davant i la capacitat de Cassandra d’utilitzar noms arbitraris d’aplicacions i columnes per emmagatzemar dades està disponible. Per tant, la dinàmica ajuda en certa manera, ja que en una informació desestructurada, la majoria de les vegades, la família de columnes dinàmiques ajuda a tenir cura de nous camps que podrien haver estat afegits més endavant.

Si teniu una família de columnes estàtiques i voleu afegir una família de columnes dinàmiques al codi mentre carregueu les dades, es pot afegir a una família de columnes estàtiques en qualsevol moment. Cassandra ofereix la llibertat de triar noms de columnes.

Diferència amb RDBMS

La família de columnes Cassandra no té esquemes i és molt escalable. La família de columnes Cassandra té dos atributs: nom i comparador. Per tant, quan es té una família de columnes Cassandra, donar-li un nom es fa obligatori i Comparator és bàsicament un tipus de dades per als noms de columnes. Si no especifiqueu el comparador, assumirà que és un comparador predeterminat.



Cassandra també té una columna de famílies de super columnes. Utilitzarà una super columna internament. És una agrupació lògica i un altre nivell d’agrupació de columnes. Per tant, en una família de columnes d’usuaris, podeu tenir dues super columnes on podem obtenir informació personal i de productes dels usuaris.

Columnes

Una columna és l’increment de dades més petit de Cassandra. Té 3 components:

  • Nom
  • Valor
  • Segell de temps - S'utilitza en la resolució de conflictes i no es pot editar la marca horària. És un mecanisme intern per veure quan s’han actualitzat aquestes dades o columnes.
  • Columnes caducades - Es pot donar una data de caducitat a una columna per saber que la columna caducarà.
  • Columnes de comptador - Les columnes de comptador no són més que mantenir les columnes de manera que pugueu augmentar i disminuir aquestes columnes.

Super Columnes

Super Columns agrupa totes les columnes en funció de les necessitats empresarials i de l’agrupació lògica. Afegeix un altre nivell de nidificació a l'estructura familiar de columnes regulars. Comprèn una estructura familiar de super columnes.

El cas principal de les super columnes és desnormalitzar diverses files d'altres famílies de columnes en una sola fila, permetent la recuperació materialitzada de dades de visualització.

Casos d’ús

Limitacions de les super columnes

Una de les limitacions és que totes les subcolumnes d’una família de super columnes s’han de des serialitzar per llegir una sola família de subcolumnes. Una altra limitació és que no podem crear índexs secundaris a les subcolumnes d'una super columna.

Tipus de dades de columnes

Tipus de dades de columnes

A la imatge superior, hi ha diferents tipus de dades. El tipus de dades d’un valor de columna s’anomena validador. I el comparador és el tipus de dades d’una columna. El nom i l'adreça es converteixen en un nom de columna. Per tant, podeu tenir una data en cas de noms de columnes. També podeu tenir dades de sèries temporals tenint la data com a nom de columna.

Fileres

Hi pot haver files amples i diverses files. Hi pot haver milions de columnes i files disponibles.

Les files primes tenen un nombre reduït de columnes amb l'opció de tenir només files limitades.

Tecla composta

Consisteix en un o més camps clau clau. Suposem que el nom d’una ciutat s’estableix com a clau de fila, potser hi ha una ciutat nomenada en dos estats diferents, de manera que haureu d’esmentar quina ciutat i quin estat. Això significa simplement que s’ha d’indicar la clau. En lloc de tenir una clau de columna simple d'un tipus, podeu agregar diversos valors també anomenats components de diversos tipus per formar una clau de columna única.

Tens alguna pregunta? Esmenteu-los a la secció de comentaris i us respondrem.

Articles Relacionats:

programa Java per a sèries Fibonacci

Introducció a Snitches a Cassandra