Cassandra : Gestion de données (INSERT et SELECT)

Collections

DéfinitionCollections

Dans Cassandra, les collections permettent de stocker plusieurs valeurs dans uns seule variable.

3 types de collections

  • Set

  • List

  • Map

ExempleUtilisateurs avec des adresses email

Reprenons l'exemple précédent :

Dans cet exemple nous pourrions résoudre la relation "un-vers-plusieurs" en définissant les colonnes comme des collections.

On peut par exemple utiliser un Set :

CTRL+C pour copier, CTRL+V pour coller
1
ALTER TABLE users ADD emails set<varchar>;
2
3
ALTER TABLE users ADD emails set<varchar>;

Ou la créer directement ainsi :

CTRL+C pour copier, CTRL+V pour coller
1
CREATE TABLE users (user_id varchar PRIMARY KEY, first_name varchar, last_name varchar, emails set<varchar>);
CREATE TABLE users (user_id varchar PRIMARY KEY, first_name varchar, last_name varchar, emails set<varchar>);

DéfinitionQuand utiliser quoi ?

Aucune collection ne peut contenir des éléments de plus de 64Ko car les collections ne sont pas distribuées puisqu'elles sont dans une même colonne.

  • Set : stocker un groupe d'éléments qui seront restitué dans un ordre (alphanumérique, ...)

  • List : pour des éléments dont l'ordre importe ou si on doit stocker la même valeur plusieurs fois

  • Map : stocker des paires d'éléments <clé,valeur>

Attention

Un set, une list ou une map n'existent que si il y a au moins un élément dedans. Donc le set vide est équivalent à la valeur nulle.

PrécédentPrécédentSuivantSuivant
AccueilAccueilImprimerImprimer Sofian Toujja, Mathieu Moulin, Emilie Confais, Alaeddine Hajjem, David Martins, 2014-2017 (Contributions : Stéphane Crozat, les étudiants de l'UTC) Paternité - Partage des Conditions Initiales à l'IdentiqueRéalisé avec Scenari (nouvelle fenêtre)