Cassandra Tabelinäide: loo, muuda, kukuta ja kärbi tabelit
Süntaks Cassandra päringukeel (CQL) sarnaneb keelega SQL keel.
Kuidas luua tabelit Cassandra
Veeru perekond sisse Cassandra on sarnane RDBMS-i tabeliga. Veergude perekonda kasutatakse andmete salvestamiseks.
Veeruperekonna loomiseks kasutatakse käsku "Loo tabel". Cassandra.
Süntaks
Create table KeyspaceName.TableName ( ColumnName DataType, ColumnName DataType, ColumnName DataType . . . Primary key(ColumnName) ) with PropertyName=PropertyValue;
1. Esmane võti: On kahte tüüpi esmane võti.
- Üks esmane võti: Üksik primaarvõti määratakse järgmise süntaksiga.
Süntaks
Primary key (ColumnName)
Ühes primaarvõtmes on ainult üks veerg. Seda veergu nimetatakse ka partitsioonivõtmeks. Andmed jaotatakse selle veeru alusel. Andmed jaotatakse partitsioonivõtme alusel erinevatesse sõlmedesse.
2. Liitesine võti: Liit primaarvõti määratakse järgmise süntaksiga.
Süntaks
Primary key(ColumnName1,ColumnName2 . . .)
Ülaltoodud süntaksis on veeruNimi1 partitsioonivõti ja veeruNimi2 on Clustervõti. Andmed jaotatakse veeruNimi1 alusel ja andmed rühmitatakse veeruNimi2 alusel. Clustering on protsess, mis sorteerib andmed partitsioonis.
3. Kombineeritud jaotusvõti: Liitpartitsioonivõti on määratud järgmise süntaksiga.
Süntaks
Primary Key((ColumnName1,ColumnName2),ColumnName3...))
Ülaltoodud süntaksis on veerunimi1 ja veerunimi2 liitpartitsioonivõti. Andmed jaotatakse mõlema veeru VeeruNimi1 ja VeeruNimi2 alusel ning andmed rühmitatakse veeru Nimi3 alusel. Kui teil on ühes partitsioonis liiga palju andmeid. Seejärel kasutatakse liitpartitsioonivõtit. Liitpartitsioneerimisvõtit kasutatakse andmete jaoks mitme partitsiooni loomiseks.
- Koos klausliga
"Klausiga" kasutatakse määratletud tabeli mis tahes atribuudi ja selle väärtuse määramiseks. Näiteks kui soovite kokku suruda Cassandra tabeli andmed. Tihendusomaduse saate määrata, määrates jaotises „Klausiga” tihendusalgoritmi atribuudi väärtuse.
Näide
Siin käivitatakse käsk Loo tabel, mis loob võtmeruumis 'Ülikool' tabeli nime 'Õpilane'.
Pärast käsu 'Loo tabel' edukat täitmist luuakse võtmeruumis 'Ülikool' tabel 'Õpilane' veergudega RollNo, Name ja dept. RollNo on esmane võti. RollNo on ka partitsioonivõti. Kõik andmed asuvad ühes partitsioonis.
Cassandra Muuda tabelit
Käsku 'Muuda tabelit' kasutatakse veeru eemaldamiseks, uue veeru lisamiseks, veeru nime muutmiseks, veeru tüübi muutmiseks ja tabeli atribuutide muutmiseks.
Süntaks
Järgmine on käsu 'Alter Table' süntaks.
Alter table KeyspaceName.TableName + Alter ColumnName TYPE ColumnDataype | Add ColumnName ColumnDataType | Drop ColumnName | Rename ColumnName To NewColumnName | With propertyName=PropertyValue
Näide
Siin on hetktõmmis käsust „Muuda tabelit”, mis lisab tabelisse Õpilane uue veeru.
Pärast käsu 'Alter Table' edukat täitmist lisatakse tabelisse Student uus veerg 'Semester' andmetüübiga 'int'.
Siin on ekraanipilt, mis näitab uuendatud õpilaste tabelit.
Cassandra Drop tabel
Käsk 'Drop table' tühistab määratud tabeli, mis sisaldab kõiki võtmeruumi andmeid. Enne laua maha laskmist, Cassandra teeb varukoopiana hetktõmmise andmetest, mitte skeemist.
Süntaks
Drop Table KeyspaceName.TableName
Näide
Siin on hetktõmmis käivitatud käsust "Drop Table", mis eemaldab tabeli Student võtmeruumist "Ülikool".
Pärast käsu 'Drop Table' edukat täitmist eemaldatakse tabel Student ülikooli võtmeruumist.
Siin on hetktõmmis, mis näitab tõrketeadet, mille tagastas Cassandra kui prooviti pääseda juurde õpilase tabelile, mida pole olemas.
Cassandra Kärbi tabel
Käsk "Truncate table" eemaldab määratud tabelist kõik andmed. Enne andmete kärpimist Cassandra võtab andmetest hetktõmmise varukoopiana.
Süntaks
Truncate KeyspaceName.TableName
Näide
Tabelis on kolm rekordit Õpilane. Need on tabelis olevad rekordid.
Siin on hetktõmmis käivitatud käsust „Truncate table”, mis eemaldab tabelist Student kõik andmed.
Pärast käsu 'Truncate Table' edukat täitmist eemaldatakse tabelist Student kõik andmed.
Siin on hetktõmmis andmebaasi olekust, kus tabelis Student pole kirjeid.