In dit artikel leert u:
- Cassandra Sleutelruimte maken
- Verander Keyspace
- Sleutelruimte verwijderen / verwijderen
Keyspace maken
Een keyspace is een object dat de kolomfamilies, door de gebruiker gedefinieerde typen, bevat. In Cassandra is Keyspace vergelijkbaar met RDBMS-database. Keyspace bevat kolomfamilies, indexen, door de gebruiker gedefinieerde typen, datacenterbewustzijn, strategie die wordt gebruikt in keyspace, replicatiefactor, enz.
Commando " Create Keyspace " wordt gebruikt om keyspace aan te maken in Cassandra.
Syntaxis
Create keyspace KeyspaceName with replication={'class':strategy name,'replication_factor': No of replications on different nodes};
Verschillende componenten van Cassandra Keyspace
- Strategie : terwijl de strategienaam in Cassandra wordt aangegeven. Er zijn twee soorten strategieën gedeclareerd in Cassandra Syntax.
- Simpele strategie : er wordt een eenvoudige strategie gebruikt wanneer u slechts één datacenter heeft. In deze strategie wordt de eerste replica op het knooppunt geplaatst dat door de partitioner is geselecteerd. De resterende knooppunten worden met de klok mee in de ring geplaatst zonder rekening te houden met de locatie van het rek of knooppunt.
- Netwerktopologiestrategie : de netwerktopologiestrategie wordt gebruikt wanneer u meer dan één datacenter heeft. In deze strategie moet u de replicatiefactor voor elk datacenter afzonderlijk opgeven. Netwerktopologiestrategie plaatst replica's in knooppunten met de klok mee in hetzelfde datacenter. Deze strategie probeert replica's in verschillende rekken te plaatsen.
- Replicatiefactor : Replicatiefactor is het aantal replica's van gegevens dat op verschillende knooppunten is geplaatst. Zonder mislukking is 3 een goede replicatiefactor. Meer dan twee replicatiefactoren zorgen ervoor dat er geen enkel storingspunt is. Soms kan de server uitvallen of kan er een netwerkprobleem optreden, waarna andere replica's service bieden zonder fouten.
- Voorbeeld: Hier is de momentopname van het uitgevoerde commando "Create Keyspace" dat keyspace in Cassandra zal aanmaken.
Create keyspace University with replication={'class':SimpleStrategy,'replication_factor': 3};
Na succesvolle uitvoering van het commando "Create Keyspace", wordt Keyspace University gecreëerd in Cassandra met strategie "SimpleStrategy" en replicatiefactor 3.
Verander Keyspace
Commando "Alter Keyspace" wijzigt de replicatiefactor, de strategienaam en de eigenschappen voor duurzaam schrijven in de aangemaakte sleutelruimte in Cassandra.
Syntaxis
Alter Keyspace KeyspaceName with replication={'class':'StrategyName','replication_factor': no of replications on different nodes}with DURABLE_WRITES=true/false
Belangrijkste aspecten bij het wijzigen van Keyspace in Cassandra
- Keyspace Name: Keyspace-naam kan niet worden gewijzigd in Cassandra.
- Strategienaam: de strategienaam kan worden gewijzigd door een nieuwe strategienaam op te geven.
- Replicatiefactor: Replicatiefactor kan worden gewijzigd door een nieuwe replicatiefactor op te geven.
- DURABLE_WRITES: de waarde van DURABLE_WRITES kan worden gewijzigd door de waarde true / false op te geven. Standaard is het waar. Indien ingesteld op false, zullen er geen updates naar het vastleglogboek worden geschreven en vice versa.
- Uitvoering: Hier is de momentopname van het uitgevoerde commando "Alter Keyspace" dat de keyspace-strategie verandert van 'SimpleStrategy' naar 'NetworkTopologyStrategy' en replicatiefactor van 3 naar 1 voor DataCenter1.
Alter Keyspace University with replication={'class':'NetworktopologyStrategy', 'DataCenter1':1};
Na succesvolle uitvoering van het commando "Alter Keyspace", wordt Strategyname gewijzigd van 'SimpleStrategy' in 'NetworkTopologyStrategy' en wordt de replicatiefactor gewijzigd van 3 in 1 voor 'DataCenter1.'
Sleutelruimte verwijderen / verwijderen
Commando ' Drop Keyspace ' verwijdert keyspace inclusief alle gegevens, kolomfamilies , door de gebruiker gedefinieerde typen en indexen van Cassandra. Voordat Cassandra de toetsruimte laat vallen, maakt ze een momentopname van de toetsruimte. Als keyspace niet bestaat in de Cassandra, geeft Cassandra een foutmelding, tenzij IF EXISTS wordt gebruikt.
Syntaxis
Drop keyspace KeyspaceName
Voorbeeld
Hier is de momentopname van het uitgevoerde commando 'Drop Keyspace' waarmee keyspace University wordt verwijderd.
Drop keyspace University;
Na succesvolle uitvoering van het commando 'Drop keyspace University', wordt keyspace University met alle data en schema uit Cassandra verwijderd.
Hier is de momentopname waar de fout wordt geretourneerd wanneer wordt geprobeerd toegang te krijgen tot keyspace die niet bestaat.
Opmerking : er is geen verschil tussen het neerzetten van toetsruimte en het verwijderen van toetsruimte. Sleutelruimte verwijderen is gelijk aan sleutelruimte verwijderen.