Les bases orientées colonnes
Le modèle à colonnes larges sur Cassandra : espace de clés, table, clé de partition et colonnes de regroupement, une table par requête, et la différence avec le stockage en colonnes des entrepôts.
- 21 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Mises en situation
- Comprendre
Quelques cartes du deck
Base à colonnes larges : de quoi s'agit-il ?
Voir la réponse
Base distribuée où des lignes sont réparties entre machines selon une partie de leur identifiant, puis rangées triées à l'intérieur de chaque groupe.
Lire un groupe entier de lignes voisines est très rapide, mais une requête qui ne dit pas dans quel groupe chercher oblige à interroger toutes les machines.
Avec cette table, dans quel ordre les lignes de la partition du capteur
c7sont-elles rangées ?
```sql
CREATE TABLE mesures (
capteur text,
instant timestamp,
valeur double,
PRIMARY KEY ((capteur), instant)
);`- Par
instantcroissant - Par
valeurcroissante, de la plus petite mesure à la plus grande - Dans l'ordre d'insertion, sans tri particulier
- Par
capteur, puis parvaleur
Voir la réponse
Par
instantcroissantLa colonne de regroupement
instantfixe le tri dans la partition, croissant par défaut.valeurne fait pas partie de la clé : aucun tri ne s'y applique.- Par
Dans Cassandra, un … (keyspace) regroupe des tables et fixe leur facteur de ….
Voir la réponse
Dans Cassandra, un espace de clés (keyspace) regroupe des tables et fixe leur facteur de réplication.
Le facteur de réplication dit sur combien de nœuds chaque partition est copiée. Un espace de clés joue donc un rôle proche de celui d'un schéma, avec la réplication en plus.
Clé de partition : de quoi s'agit-il ?
Voir la réponse
Partie de la clé primaire dont la valeur, passée à une fonction de hachage, décide sur quels nœuds du cluster une ligne est rangée.
Toutes les lignes qui partagent la même valeur forment une partition, rangée ensemble. Une requête efficace donne toujours cette valeur en entier.
Les lectures d'un capteur expirent et sa partition pèse 2 Go. La clé de partition est
capteurseul. Quelle correction applique-t-on ?- Ajouter une colonne de regroupement supplémentaire à la fin de la clé
- Augmenter le facteur de réplication de l'espace de clés
- Ajouter le jour à la clé de partition :
((capteur, jour), instant) - Interroger avec
ALLOW FILTERINGpour que le serveur parcoure moins de lignes
Voir la réponse
Ajouter le jour à la clé de partition :
((capteur, jour), instant)Tant que la clé de partition ne contient pas de borne de temps, la partition d'un capteur grossit sans fin et ne se répartit pas. Un jour dans la clé la coupe en morceaux bornés. Un regroupement de plus ou plus de copies ne change pas sa taille.