Skapa nyckelutrymme i Cassandra: Skapa, ändra & släpp med exempel

Vad är Keyspace i Cassandra?

Ett tangentutrymme in Cassandra är en databehållare, liknande en databas i RDMBS (Relational Database Management Systems). Cassandra Keyspace bestämmer hur data replikeras på noder.

Hur man skapar tangentutrymme i Cassandra

Ett tangentutrymme är ett objekt som innehåller kolumnfamiljerna, användardefinierade typer. I Cassandra, Keyspace liknar RDBMS Databas. Keyspace innehåller kolumnfamiljer, index, användardefinierade typer, datacentermedvetenhet, strategi som används i nyckelutrymme, replikeringsfaktor, etc.

Kommando "Skapa Keyspace” används för att skapa tangentutrymme i Cassandra.

syntax

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

Olika komponenter av Cassandra Tangentrymd

  • Strategi: Medan du deklarerar strateginamnet Cassandra. Det finns två typer av strategier deklarerade i Cassandra syntax.
  1. Enkel strategi: Enkel strategi används när du bara har ett datacenter. I denna strategi placeras den första repliken på den nod som väljs av partitioneraren. Återstående noder placeras medurs i ringen utan att ta hänsyn till rack eller nodplacering.
  2. Nätverkstopologistrategi: Nätverkstopologistrategi används när du har mer än ett datacenter. I den här strategin måste du ange replikeringsfaktor för varje datacenter separat. Nätverkstopologistrategin placerar repliker i noder medurs i samma datacenter. Denna strategi försöker placera repliker i olika ställ.
  • Replikeringsfaktor: Replikeringsfaktor är antalet repliker av data placerade på olika noder. För inget misslyckande är 3 bra replikeringsfaktor. Mer än två replikeringsfaktorer säkerställer att det inte finns någon enskild felpunkt. Ibland kan servern vara nere, eller nätverksproblem kan uppstå, då tillhandahåller andra repliker tjänsten utan fel.
  • Exempelvis: Här är ögonblicksbilden av det körda kommandot "Create Keyspace" som kommer att skapa tangentutrymme i Cassandra.

Skapa nyckelutrymme i Cassandra

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

Efter framgångsrik exekvering av kommandot "Create Keyspace" kommer Keyspace University att skapas i Cassandra med strategin "SimpleStrategy" och replikeringsfaktor 3.

Ändra knappsats Cassandra

Kommandot "Alter Keyspace" ändrar replikeringsfaktorn, strateginamnet och varaktiga skrivegenskaper i skapat tangentutrymme i Cassandra.

syntax

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

Nyckelaspekter när du ändrar Keyspace in Cassandra

  • Tangentrymdsnamn: Tangentrymdsnamn kan inte ändras Cassandra.
  • Strateginamn: Strateginamn kan ändras genom att ange ett nytt strateginamn.
  • Replikeringsfaktor: Replikationsfaktor kan ändras genom att ange ny replikeringsfaktor.
  • DURABLE_WRITES :DURABLE_WRITES värde kan ändras genom att ange dess värde sant/falskt. Som standard är det sant. Om inställt på false kommer inga uppdateringar att skrivas till commit-loggen och vice versa.
  • Utförande: Här är ögonblicksbilden av det körda kommandot "Alter Keyspace" som ändrar nyckelutrymmesstrategin från 'SimpleStrategy' till 'NetworkTopologyStrategy' och replikeringsfaktor från 3 till 1 för DataCenter1.

Ändra knappsats Cassandra

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

Efter framgångsrik exekvering av kommandot "Alter Keyspace", kommer strateginamn att ändras från 'SimpleStrategy' till 'NetworkTopologyStrategy' och replikeringsfaktorn kommer att ändras från 3 till 1 för 'DataCenter1'.

Cassandra Släpp knappsats

Kommando 'Släpp knappsats' släpper tangentutrymme inklusive alla data, kolumnfamiljer, användardefinierade typer och index från Cassandra. Innan du släpper tangentutrymmet, Cassandra tar en ögonblicksbild av knappsatsen. Om knapputrymme inte finns i Cassandra, Cassandra returnerar ett fel såvida inte IF EXISTS används.

syntax

Drop keyspace KeyspaceName

Exempelvis

Här är ögonblicksbilden av det körda kommandot 'Drop Keyspace' som kommer att släppa keyspace University.

Cassandra Släpp knappsats

Drop keyspace University;

Efter lyckad exekvering av kommandot 'Drop keyspace University' kommer keyspace University att tas bort från Cassandra med all data och schema.

Här är ögonblicksbilden där felet returneras när man försöker komma åt tangentutrymme som inte finns.

Cassandra Släpp knappsats

Anmärkningar: Det är ingen skillnad i släpp tangentrymd och radera tangentrymd. Släpp tangentrymd är lika med radera tangentutrymme.