Table de chute de Cassandra

Table de chute de Cassandra

Apache Cassandra est une base de données NOSQL libre et open source qui est couramment utilisée dans des environnements à grande échelle et à haute disponibilité. Cassandra fournit un langage de requête étroitement similaire à SQL dans les bases de données relationnelles.

Ce langage de requête vous permet d'effectuer les opérations quotidiennes à partir de la ligne de commande en utilisant des commandes simples et intuitives.

Bien que Cassandra ne soit pas une base de données relationnelle traditionnelle, elle emprunte les fonctionnalités standard telles que les bases de données ou les espaces de clés, les tables, les colonnes et les lignes.

Dans Cassandra, un tableau fait référence à un ensemble de paires de valeurs clés qui ressemblent à une ligne et une colonne dans une base de données relationnelle. Les tableaux existent en tant qu'entités imbriquées d'une casse Cassandra spécifique.

Ce guide vous apprendra à créer et à déposer une table dans une casse Cassandra spécifique.

Cassandra - Comment créer une table

Dans Cassandra, nous utilisons l'instruction Create Table pour créer une table dans un espace de clé spécifique. La syntaxe de requête est comme indiqué:

Créer une table [s'il n'existe pas] [keyspace_name.]nom de la table (
Column_Definition [,…]
Clé primaire (collumn_name [, colonnel_name…])
[Avec table_options
| Ordre de clustering par (Clustering_Column_Name Ordre])
| Id = 'table_hash_tag'
| Stockage compact]

Par défaut, Cassandra crée un tableau sous l'espace de clé actuellement sélectionné. Cependant, vous pouvez spécifier l'espace de clé où vous souhaitez créer le tableau à l'aide de la notation de points.

L'instruction If Not Exist vous permet d'éviter les erreurs si une table avec le nom spécifié existe déjà sur l'espace de touche spécifié. Cassandra renvoie une erreur sur la collision du nom si vous n'utilisez pas le mot clé If non.

C'est parce que vous ne pouvez pas avoir plus d'une table avec le même nom dans une touche donnée.

Ensuite, à l'intérieur de la parenthèse, vous fournissez votre définition de colonne. Une définition de colonne unique comprend des propriétés telles que le nom de la colonne, le type de données de la colonne (doit être un type de définition CQL pris en charge) et d'autres «contraintes».

Les contraintes acceptées dans une définition de colonne comprennent:

  1. Statique - Cela indique que la colonne devrait contenir une seule valeur.
  2. Clé primaire = il définit la colonne spécifiée comme la clé principale de ce tableau.

Lors de la création d'une table, assurez-vous ce qui suit:

  1. Il n'y a qu'une seule clé primaire dans ce tableau.
  2. Une clé statique n'est pas définie comme la clé principale.

Commençons par créer un simple espace de clés comme indiqué:

Cassandra @ CQLSH> Créer Keyspace s'il n'est pas existant LinuxHint avec réplication = 'class': 'Simplestrategy', 'réplication_factor': '1';

Cela devrait créer un espace de clés simple avec un facteur de réplication de 1. Consultez notre tutoriel sur la création de cassandra clés pour en savoir plus.

Nous pouvons ensuite passer à cet espace de clé comme suit:

Cassandra @ CQLSH> Utilisez LinuxHint;

Enfin, nous pouvons créer une table simple comme:

Cassandra @ CQLSH: LinuxHint> Créer des utilisateurs de table (
… Id uuid,
… Texte Full_name,
… Score Int,
… Clé primaire (ID));

L'instruction précédente doit créer un tableau appelé utilisateurs dans l'espace de touche LinuxHint.

Nous pouvons ensuite ajouter un échantillon d'enregistrement comme indiqué dans ce qui suit:

Cassandra @ CQLSH: LinuxHint> Insérer dans les utilisateurs (id, full_name, score) VALEURS (49425092-1CB7-4CCE-8370-B9466F08EA4E, 'Michael Q', 100);

Montrez la table comme:

Cassandra @ CQLSH: LinuxHint> SELECT * dans les utilisateurs;

Sortir:

Table de chute de Cassandra

Dans Cassandra, nous pouvons supprimer un tableau à l'aide de l'instruction TABLE DROP comme indiqué dans la syntaxe suivante:

Tableau de dépôt [si existe] keyspace_name.nom de la table;

De même, la commande Drop laisse tomber le tableau dans l'espace de touche actuel sauf si spécifié. Par exemple, pour supprimer la table des utilisateurs dans l'espace de keyshint LinuxHint, nous pouvons exécuter la commande suivante:

Cassandra @ CQLSH: LinuxHint> Utilisateurs de table de dépôt;

Si nous sommes dans un autre espace de touche, nous pouvons explicitement spécifier l'espace de clé cible comme suit:

Cassandra @ CQLSH> TABLE DE DROP LINUXHINT.utilisateurs;

NOTE: Cassandra vous empêche de laisser tomber les tables avec des vues matérialisées existantes. Par conséquent, avant de laisser tomber une table, supprimez toutes les vues matérialisées correspondantes.

Conclusion

Dans cet article, nous avons couvert le processus de création et de suppression d'une table à partir d'un espace de clés spécifique dans un cluster Cassandra.