Erstellen, ändern & Legen Sie Keyspace in Cassandra mit Beispiel ab

Inhaltsverzeichnis:

Anonim

In diesem Artikel lernen Sie:

  • Cassandra Keyspace erstellen
  • Schlüsselraum ändern
  • Schlüsselraum löschen / löschen

So erstellen Sie einen Keyspace

Ein Schlüsselraum ist ein Objekt, das die Spaltenfamilien und benutzerdefinierte Typen enthält. In Cassandra ähnelt Keyspace der RDBMS-Datenbank. Der Schlüsselraum enthält Spaltenfamilien, Indizes, benutzerdefinierte Typen, Kenntnis des Rechenzentrums, die im Schlüsselraum verwendete Strategie, den Replikationsfaktor usw.

Mit dem Befehl " Create Keyspace " wird ein Schlüsselraum in Cassandra erstellt.

Syntax

Create keyspace KeyspaceName with replication={'class':strategy name,'replication_factor': No of replications on different nodes};

Verschiedene Komponenten von Cassandra Keyspace

  • Strategie : Beim Deklarieren des Strategienamens in Cassandra. In der Cassandra-Syntax werden zwei Arten von Strategien deklariert.
  1. Einfache Strategie : Eine einfache Strategie wird verwendet, wenn Sie nur ein Rechenzentrum haben. Bei dieser Strategie wird das erste Replikat auf dem vom Partitionierer ausgewählten Knoten platziert. Die verbleibenden Knoten werden im Ring im Uhrzeigersinn platziert, ohne die Position des Racks oder Knotens zu berücksichtigen.
  2. Netzwerktopologiestrategie : Die Netzwerktopologiestrategie wird verwendet, wenn Sie über mehr als ein Rechenzentrum verfügen. Bei dieser Strategie müssen Sie den Replikationsfaktor für jedes Rechenzentrum separat angeben. Die Netzwerktopologiestrategie platziert Replikate in Knoten im Uhrzeigersinn im selben Rechenzentrum. Diese Strategie versucht, Replikate in verschiedenen Racks zu platzieren.
  • Replikationsfaktor : Der Replikationsfaktor ist die Anzahl der Replikate von Daten, die auf verschiedenen Knoten platziert wurden. Für keinen Fehler ist 3 ein guter Replikationsfaktor. Mehr als zwei Replikationsfaktoren stellen sicher, dass kein einzelner Fehlerpunkt auftritt. Manchmal ist der Server ausgefallen oder es kann ein Netzwerkproblem auftreten. Andere Replikate bieten den Dienst ohne Fehler.
  • Beispiel: Hier ist die Momentaufnahme des ausgeführten Befehls "Schlüsselraum erstellen", mit dem der Schlüsselraum in Cassandra erstellt wird.
Create keyspace University with replication={'class':SimpleStrategy,'replication_factor': 3};

Nach erfolgreicher Ausführung des Befehls "Create Keyspace" wird die Keyspace University in Cassandra mit der Strategie "SimpleStrategy" und dem Replikationsfaktor 3 erstellt.

Schlüsselraum ändern

Der Befehl "Alter Keyspace" ändert den Replikationsfaktor, den Strategienamen und die Eigenschaften für dauerhafte Schreibvorgänge im erstellten Schlüsselraum in Cassandra.

Syntax

Alter Keyspace KeyspaceName with replication={'class':'StrategyName','replication_factor': no of replications on different nodes}with DURABLE_WRITES=true/false

Wichtige Aspekte beim Ändern von Keyspace in Cassandra

  • Schlüsselraumname: Der Schlüsselraumname kann in Cassandra nicht geändert werden.
  • Strategiename: Der Strategiename kann durch Angabe eines neuen Strategienamens geändert werden.
  • Replikationsfaktor: Der Replikationsfaktor kann durch Angabe eines neuen Replikationsfaktors geändert werden.
  • DURABLE_WRITES: Der Wert von DURABLE_WRITES kann durch Angabe seines Werts true / false geändert werden. Standardmäßig ist es wahr. Wenn false festgelegt ist, werden keine Aktualisierungen in das Festschreibungsprotokoll geschrieben und umgekehrt.
  • Ausführung: Hier ist die Momentaufnahme des ausgeführten Befehls "Alter Keyspace", der die Schlüsselraumstrategie von 'SimpleStrategy' auf 'NetworkTopologyStrategy' und den Replikationsfaktor von 3 auf 1 für DataCenter1 ändert.
Alter Keyspace University with replication={'class':'NetworktopologyStrategy', 'DataCenter1':1};

Nach erfolgreicher Ausführung des Befehls "Alter Keyspace" wird der Strategyname von "SimpleStrategy" in "NetworkTopologyStrategy" und der Replikationsfaktor für "DataCenter1" von 3 auf 1 geändert.

Schlüsselraum löschen / löschen

Mit dem Befehl ' Schlüsselschlüssel löschen ' wird der Schlüsselraum einschließlich aller Daten, Spaltenfamilien, benutzerdefinierten Typen und Indizes von Cassandra gelöscht. Bevor Cassandra den Schlüsselraum löscht, macht sie eine Momentaufnahme des Schlüsselraums. Wenn in der Cassandra kein Schlüsselraum vorhanden ist, gibt Cassandra einen Fehler zurück, sofern IF EXISTS nicht verwendet wird.

Syntax

Drop keyspace KeyspaceName

Beispiel

Hier ist die Momentaufnahme des ausgeführten Befehls 'Drop Keyspace', mit dem der Keyspace University gelöscht wird.

Drop keyspace University;

Nach erfolgreicher Ausführung des Befehls 'Schlüsselschlüssel-Universität löschen' wird die Schlüsselraum-Universität mit allen Daten und dem Schema von Cassandra gelöscht.

Hier ist der Snapshot, in dem der Fehler zurückgegeben wird, wenn versucht wird, auf einen nicht vorhandenen Schlüsselbereich zuzugreifen.

Hinweis : Es gibt keinen Unterschied zwischen dem Löschen des Schlüsselraums und dem Löschen des Schlüsselraums. Das Löschen des Schlüsselraums entspricht dem Löschen des Schlüsselraums.