Cassandra Tabellexempel: Skapa, Ändra, Släpp & Trunkera tabell

Syntaxen för Cassandra frågespråk (CQL) liknar med SQL språk.

Hur man skapar en tabell i Cassandra

Kolumnfamilj i Cassandra liknar RDBMS-tabellen. Kolumnfamiljen används för att lagra data.

Kommandot 'Skapa tabell' används för att skapa kolumnfamilj i Cassandra.

syntax

Create table KeyspaceName.TableName
(
ColumnName DataType,
ColumnName DataType,
ColumnName DataType
.
.
.
Primary key(ColumnName)
) with PropertyName=PropertyValue;

1. Primär nyckel: Det finns två typer av primär nyckel.

  • Enkel primär nyckel: Enskild primärnyckel specificeras av följande syntax.

syntax

Primary key (ColumnName)

I den enda primärnyckeln finns det bara en enda kolumn. Den kolumnen kallas också för partitioneringsnyckel. Data partitioneras på basis av den kolumnen. Data sprids på olika noder på basis av partitionsnyckeln.

2. Sammansatt primär nyckel: Sammansatt primärnyckel specificeras av följande syntax.

syntax

Primary key(ColumnName1,ColumnName2 . . .)

I ovanstående syntax är ColumnName1 partitioneringsnyckeln och ColumnName2 är Clustering nyckel. Data kommer att partitioneras på basis av kolumnnamn1 och data kommer att klustras på basis av kolumnnamn2. Clustering är den process som sorterar data i partitionen.

3. Sammansatt partitioneringsnyckel: Sammansatt partitioneringsnyckel specificeras av följande syntax.

syntax

Primary Key((ColumnName1,ColumnName2),ColumnName3...))

I ovanstående syntax är ColumnName1 och ColumnName2 den sammansatta partitionsnyckeln. Data kommer att partitioneras på basis av båda kolumnerna Kolumnnamn1 och Kolumnnamn2 och data kommer att klustras på basis av Kolumnnamn3. Om du har för mycket data på den enskilda partitionen. Sedan används en sammansatt partitioneringsnyckel. Sammansatt partitioneringsnyckel används för att skapa flera partitioner för data.

  • Med klausul

"With clause" används för att specificera vilken egenskap som helst och dess värde för den definierade tabellen. Till exempel om du vill komprimera Cassandra tabelldata. Du kan ställa in komprimeringsegenskapen genom att ange egenskapsvärdet för komprimeringsalgoritmen i "With-sats".

Exempelvis

Här är exekveringen av kommandot 'Skapa tabell' som skapar tabellnamnet 'Student' i tangentutrymmet 'Universitetet'.

Cassandra Skapa bord

Efter framgångsrik exekvering av kommandot 'Skapa tabell', kommer tabellen 'Student' att skapas i tangentutrymmet 'University' med kolumnerna RollNo, Name och dept. RollNo är den primära nyckeln. RollNo är också en partitionsnyckel. All data kommer att finnas i den enda partitionen.

Cassandra Ändra bord

Kommandot 'Ändra tabell' används för att ta bort kolumn, lägga till en ny kolumn, ändra kolumnnamn, ändra kolumntyp och ändra tabellens egenskap.

syntax

Följande är syntaxen för kommandot 'Ändra tabell'.

Alter table KeyspaceName.TableName  +
Alter ColumnName TYPE ColumnDataype |
Add ColumnName ColumnDataType |
Drop ColumnName |
Rename ColumnName To NewColumnName |
With propertyName=PropertyValue

Exempelvis

Här är ögonblicksbilden av kommandot 'Ändra tabell' som kommer att lägga till en ny kolumn i tabellen Student.

Cassandra Ändra bord

Efter framgångsrik exekvering av kommandot 'Ändra tabell' kommer en ny kolumn 'Semester' med 'int' datatyp att läggas till i tabellen Student.

Här är skärmdumpen som visar den uppdaterade studenttabellen.

Cassandra Ändra bord

Cassandra Släpp bord

Kommandot 'Släpp tabell' släpper angiven tabell inklusive all data från tangentrymden. Innan du släpper bordet, Cassandra tar en ögonblicksbild av data inte schemat som en säkerhetskopia.

syntax

Drop Table KeyspaceName.TableName

Exempelvis

Här är ögonblicksbilden av det körda kommandot 'Släpp tabell' som släpper tabellstudent från tangentrymden 'Universitet'.

Cassandra Släpp bord

Efter framgångsrik exekvering av kommandot 'Släpp tabell', kommer tabellen Student att släppas från tangentrymdsuniversitetet.

Här är ögonblicksbilden som visar felet som returneras av Cassandra när försökte komma åt Studenttabell som inte finns.

Cassandra Släpp bord

Cassandra Trunkerat bord

Kommandot 'Truncate table' tar bort all data från den angivna tabellen. Innan du trunkerar data, Cassandra tar ögonblicksbilden av data som en säkerhetskopia.

syntax

Truncate KeyspaceName.TableName

Exempelvis

Det finns tre poster i tabellen Student. Det här är posterna i tabellen.

Cassandra Trunkerat bord

Här är ögonblicksbilden av det körda kommandot 'Truncate table' som tar bort all data från tabellen Student.

Cassandra Trunkerat bord

Efter framgångsrik exekvering av kommandot 'Truncate Table' kommer all data att tas bort från tabellen Student.

Här är ögonblicksbilden av databastillståndet där det inte finns några poster i tabellen Student.

Cassandra Trunkerat bord