Apache Cassandra ist eine kostenlose Open-Source-NoSQL. Cassandra bietet eine Abfragesprache, die SQL in relationalen Datenbanken sehr ähnlich ist.
Mit dieser Abfragesprache können Sie die alltäglichen Operationen aus der Befehlszeile mit einfachen und intuitiven Befehlen ausführen.
Obwohl Cassandra keine herkömmliche relationale Datenbank ist, leiht es die Standardfunktionen wie Datenbanken oder Schlüsselflächen, Tabellen, Spalten und Zeilen aus.
In Cassandra bezieht sich eine Tabelle auf einen Satz von Schlüsselwertpaaren, die einer Zeile und Spalte in einer relationalen Datenbank ähneln. Tabellen existieren als verschachtelte Einheiten eines spezifischen Cassandra -Keyspace.
In diesem Leitfaden werden Sie beigebracht, wie Sie eine Tabelle in einem bestimmten Cassandra -Schlüsselspace erstellen und fallen lassen.
Cassandra - So erstellen Sie eine Tabelle
In Cassandra verwenden wir die Anweisung Create Table, um eine Tabelle innerhalb eines bestimmten Schlüsselspace zu erstellen. Die Abfragesyntax ist wie gezeigt:
Erstellen Sie Tabelle [falls nicht existiert] [keyspace_name.]Tabellenname (
column_definition [,…]
Primärschlüssel (column_name [, column_name…])
[Mit table_options
| Clustering Order by (clustering_column_name order]))
| Id = 'table_hash_tag'
| Kompaktlagerung]
Standardmäßig erstellt Cassandra eine Tabelle unter dem aktuell ausgewählten Schlüsselspace. Sie können jedoch den Schlüsselraum angeben, in dem Sie die Tabelle mit der Punktnotation erstellen möchten.
Mit der Anweisung "Wenn nicht existieren" können Sie Fehler vermeiden, wenn eine Tabelle mit dem angegebenen Namen bereits auf dem angegebenen Schlüsselspace vorhanden ist. Cassandra gibt einen Fehler bei der Kollision des Namens zurück, wenn Sie das Schlüsselwort nicht verwenden, wenn Sie nicht existieren.
Dies liegt daran, dass Sie in einem bestimmten Schlüsselspace nicht mehr als eine Tabelle mit demselben Namen haben können.
Als nächstes geben Sie in der Klammern Ihre Spaltendefinition an. Eine einzelne Spaltendefinition enthält Eigenschaften wie den Spaltennamen, den Datentyp der Spalte (muss ein unterstützter CQL -Definitionstyp sein) und andere „Einschränkungen“.
Zu den akzeptierten Einschränkungen innerhalb einer Spaltendefinition gehören:
Stellen Sie beim Erstellen einer Tabelle Folgendes sicher:
Beginnen wir zunächst einen einfachen Schlüsselraum wie gezeigt:
Cassandra@cqlsh> Schlüsselspace erstellen, wenn nicht vorhanden ist linuxHint mit replication = 'class': 'SimpleStrategy', 'replication_factor': '1';
Dies sollte einen einfachen Schlüsselraum mit einem Replikationsfaktor von 1 erzeugen. Sehen Sie sich unser Tutorial zum Erstellen von Cassandra Keyspaces an, um mehr zu erfahren.
Wir können dann wie folgt zu diesem Schlüsselraum wechseln:
cassandra@cqlsh> linuxHint verwenden;
Schließlich können wir eine einfache Tabelle erstellen wie:
Cassandra@CQLSH: LinuxHint> Tabellenbenutzer erstellen (Benutzer
… Id Uuid,
… Full_Name Text,
… Score Int,
… Primärschlüssel (ID));
Die vorherige Anweisung sollte eine Tabelle namens Benutzer im LinuxHint -Schlüsselspace erstellen.
Wir können dann einen Beispieldatensatz hinzufügen, wie im Folgenden gezeigt:
Cassandra@CQLSH: LinuxHint> In Benutzer (ID, full_name, Score) Werte (49425092-1cb7-4cCE-8370-B9466f08ea4e, 'Michael Q', 100);
Zeigen Sie die Tabelle als:
Cassandra@CQLSH: LinuxHint> Wählen Sie * von Benutzern;
Ausgang:
Cassandra Droptabelle
In Cassandra können wir eine Tabelle unter Verwendung der in der folgenden Syntax gezeigten Drop -Tabellenanweisung fallen lassen:
Droptabelle [falls existiert] keyspace_name.Tabellenname;
In ähnlicher Weise lässt der Drop -Befehl die Tabelle im aktuellen Schlüsselbereich ab. Um beispielsweise die Tabelle der Benutzer im LinuxHint -Schlüsselspace fallen zu lassen, können wir den folgenden Befehl ausführen:
Cassandra@CQLSH: LinuxHint> Droptabelle Benutzer;
Wenn wir uns in einem anderen Schlüsselraum befinden, können wir den Zielschlüsselspace wie folgt explizit angeben:
Cassandra@CQLSH> Droptabelle LinuxHint.Benutzer;
NOTIZ: Cassandra verhindert, dass Sie die Tabellen mit vorhandenen materialisierten Ansichten fallen lassen. Entfernen Sie daher vor dem Ablegen einer Tabelle entsprechende materialisierte Ansichten.
Abschluss
In diesem Artikel haben wir den Prozess des Erstellens und Ablegens einer Tabelle aus einem bestimmten Schlüsselraum in einem Cassandra -Cluster abgedeckt.