Erstellen Sie einen Schlüsselraum in Cassandra: Mit Beispiel erstellen, ändern und löschen

Was ist Keyspace? Cassandra?

Ein Schlüsselraum in Cassandra ist ein Datencontainer, ähnlich einer Datenbank in RDMBS (Relational Database Management Systems). Cassandra Keyspace bestimmt, wie Daten auf Knoten repliziert werden.

So erstellen Sie einen Keyspace in Cassandra

Ein Schlüsselraum ist ein Objekt, das die Spaltenfamilien und benutzerdefinierten Typen enthält. In Cassandra, Keyspace ähnelt RDBMS Datenbank. Keyspace enthält Spaltenfamilien, Indizes, benutzerdefinierte Typen, Rechenzentrumsbewusstsein, im Keyspace verwendete Strategie, Replikationsfaktor usw.

Befehl "Schlüsselraum erstellen„wird verwendet, um einen Schlüsselraum zu erstellen Cassandra.

Syntax

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

Verschiedene Komponenten von Cassandra Schlüsselraum

  • Strategie: Beim Deklarieren des Strategienamens in Cassandra. Es gibt zwei Arten von Strategien, die in deklariert sind Cassandra Syntax.
  1. Einfache Strategie: Die einfache Strategie wird verwendet, wenn Sie nur ein Rechenzentrum haben. Bei dieser Strategie wird die erste Replik auf dem vom Partitionierer ausgewählten Knoten platziert. Die verbleibenden Knoten werden im Uhrzeigersinn im Ring platziert, ohne den Rack- oder Knotenstandort zu berücksichtigen.
  2. Netzwerktopologiestrategie: Die Netzwerktopologiestrategie wird verwendet, wenn Sie über mehr als ein Rechenzentrum verfügen. Bei dieser Strategie müssen Sie für jedes Rechenzentrum separat einen Replikationsfaktor 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 werden. Für keinen Fehler ist 3 ein guter Replikationsfaktor. Mehr als zwei Replikationsfaktoren stellen sicher, dass es keinen Single Point of Failure gibt. Manchmal ist der Server ausgefallen oder es kann ein Netzwerkproblem auftreten, dann stellen andere Replikate den Dienst ohne Fehler bereit.
  • Ejemplo: Hier ist der Schnappschuss des ausgeführten Befehls „Create Keyspace“, der den Keyspace erstellt Cassandra.

Erstellen Sie einen Schlüsselraum in Cassandra

Create keyspace University with replication={'class':SimpleStrategy,'replication_factor': 3};

Nach erfolgreicher Ausführung des Befehls „Create Keyspace“ wird die Keyspace University erstellt Cassandra mit Strategie „SimpleStrategy“ und Replikationsfaktor 3.

Schlüsselraum ändern Cassandra

Der Befehl „Alter Keyspace“ ändert den Replikationsfaktor, den Strategienamen und die Eigenschaften für dauerhafte Schreibvorgänge im erstellten Schlüsselraum 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 des Keyspace in Cassandra

  • Schlüsselraumname: Der Schlüsselraumname kann nicht geändert werden Cassandra.
  • 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 geändert werden, indem der Wert als wahr/falsch angegeben wird. Standardmäßig ist es wahr. Wenn der Wert auf „false“ gesetzt ist, werden keine Aktualisierungen in das Commit-Protokoll geschrieben und umgekehrt.
  • Ausführung: Hier ist die Momentaufnahme des ausgeführten Befehls „Alter Keyspace“, der die Keyspace-Strategie von „SimpleStrategy“ in „NetworkTopologyStrategy“ und den Replikationsfaktor von 3 auf 1 für DataCenter1 ändert.

Schlüsselraum ändern Cassandra

Alter Keyspace University with replication={'class':'NetworktopologyStrategy', 'DataCenter1':1};

Nach erfolgreicher Ausführung des Befehls „Alter Keyspace“ wird der Strategiename von „SimpleStrategy“ in „NetworkTopologyStrategy“ und der Replikationsfaktor für „DataCenter3“ von 1 auf 1 geändert.

Cassandra Schlüsselraum löschen

Befehl 'Schlüsselraum löschen' löscht den Schlüsselraum einschließlich aller Daten, Spaltenfamilien, benutzerdefinierten Typen und Indizes Cassandra. Bevor Sie den Schlüsselraum löschen, Cassandra macht einen Schnappschuss des Schlüsselraums. Wenn kein Schlüsselraum vorhanden ist Cassandra, Cassandra gibt einen Fehler zurück, es sei denn, IF EXISTS wird verwendet.

Syntax

Drop keyspace KeyspaceName

Beispiel

Hier ist der Schnappschuss des ausgeführten Befehls „Drop Keyspace“, der den Keyspace University löscht.

Cassandra Schlüsselraum löschen

Drop keyspace University;

Nach erfolgreicher Ausführung des Befehls „Drop keyspace University“ wird keyspace University gelöscht Cassandra mit allen Daten und Schema.

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

Cassandra Schlüsselraum löschen

Note: Es gibt keinen Unterschied zwischen „Drop Keyspace“ und „Delete Keyspace“. Schlüsselraum löschen ist gleichbedeutend mit Schlüsselraum löschen.