Sintaks bahasa kueri Cassandra (CQL) mirip dengan bahasa SQL.
- Buat tabel
- Alter Table
- Meja Taruh
- Potong Tabel
Cara Membuat Tabel
Keluarga kolom di Cassandra mirip dengan tabel RDBMS. Keluarga kolom digunakan untuk menyimpan data.
Perintah 'Buat Tabel' digunakan untuk membuat keluarga kolom di Cassandra.
Sintaksis
Create table KeyspaceName.TableName(ColumnName DataType,ColumnName DataType,ColumnName DataType… Primary key(ColumnName)) with PropertyName=PropertyValue;
- Kunci utama: Ada dua jenis kunci utama.
- Kunci Utama Tunggal: Kunci utama tunggal ditentukan oleh sintaks berikut.
Sintaksis
Primary key (ColumnName)
Di kunci utama tunggal, hanya ada satu kolom. Kolom itu juga disebut kunci pemartisian. Data dipartisi berdasarkan kolom itu. Data tersebar di berbagai node berdasarkan kunci partisi.
- Kunci Utama Gabungan: Kunci utama gabungan ditentukan oleh sintaks berikut.
Sintaksis
Primary key(ColumnName1,ColumnName2… )
Dalam sintaks di atas, ColumnName1 adalah kunci partisi dan ColumnName2 adalah kunci Clustering. Data akan dipartisi berdasarkan ColumnName1 dan data akan dikelompokkan berdasarkan ColumnName2. Clustering adalah proses yang menyortir data di partisi.
- Kunci Partisi Gabungan
Kunci partisi gabungan ditentukan oleh sintaks berikut.
Sintaksis
Primary Key((ColumnName1,ColumnName2),ColumnName3… ))
Dalam sintaks di atas, ColumnName1 dan ColumnName2 adalah kunci partisi gabungan. Data akan dipartisi berdasarkan kedua kolom ColumnName1 dan ColumnName2 dan data akan dikelompokkan berdasarkan ColumnName3. Jika Anda memiliki terlalu banyak data di satu partisi. Kemudian, kunci partisi majemuk digunakan. Kunci partisi gabungan digunakan untuk membuat beberapa partisi untuk data.
- Dengan Klausul
"Dengan klausa" digunakan untuk menentukan properti apa pun dan nilainya untuk tabel yang ditentukan. Misalnya jika Anda ingin mengompres data tabel Cassandra. Anda dapat menyetel properti kompresi dengan menentukan nilai properti algoritme kompresi di "Dengan klausa".
Contoh
Berikut adalah eksekusi perintah 'Buat tabel' yang akan membuat nama tabel 'Mahasiswa' di ruang kunci 'Universitas.'
Setelah berhasil mengeksekusi perintah 'Buat tabel', tabel 'Mahasiswa' akan dibuat di ruang kunci 'Universitas' dengan kolom RollNo, Name dan dept. RollNo adalah kunci utama. RollNo juga merupakan kunci partisi. Semua data akan berada dalam satu partisi.
Meja Cassandra Alter
Perintah 'Alter Table' digunakan untuk menghilangkan kolom, menambah kolom baru, mengubah nama kolom, mengubah jenis kolom dan mengubah properti tabel.
Sintaksis
Berikut ini adalah sintaks dari perintah 'Alter Table.'
Alter table KeyspaceName.TableName +Alter ColumnName TYPE ColumnDataype |Add ColumnName ColumnDataType |Drop ColumnName |Rename ColumnName To NewColumnName |With propertyName=PropertyValue
Contoh
Berikut adalah snapshot dari perintah 'Alter Table' yang akan menambah kolom baru pada tabel Student.
Setelah berhasil mengeksekusi perintah 'Alter Table', kolom baru 'Semester' dengan tipe data 'int' akan ditambahkan ke tabel Student.
Berikut adalah tangkapan layar yang menunjukkan tabel Siswa yang diperbarui.
Meja Taruh
Command 'Drop table' menjatuhkan tabel yang ditentukan termasuk semua data dari ruang kunci. Sebelum menjatuhkan tabel, Cassandra mengambil snapshot dari data bukan skema sebagai backup.
Sintaksis
Drop Table KeyspaceName.TableName
Contoh
Berikut adalah snapshot dari perintah yang dieksekusi 'Drop Table' yang akan menjatuhkan tabel Mahasiswa dari ruang tombol 'Universitas'.
Setelah berhasil mengeksekusi perintah 'Drop Table', tabel Student akan dikeluarkan dari keypace Universitas.
Berikut adalah snapshot yang menunjukkan kesalahan yang dikembalikan oleh Cassandra ketika mencoba mengakses tabel Student yang tidak ada.
Potong Tabel
Command 'Truncate table' menghapus semua data dari tabel yang ditentukan. Sebelum memotong data, Cassandra mengambil snapshot dari data tersebut sebagai cadangan.
Sintaksis
Truncate KeyspaceName.TableName
Contoh
Ada tiga record dalam tabel Student. Ini adalah catatan di tabel.
Berikut adalah snapshot dari perintah yang dieksekusi 'Truncate table' yang akan menghapus semua data dari tabel Student.
Setelah berhasil mengeksekusi perintah 'Truncate Table', semua data akan dihapus dari tabel Student.
Berikut adalah snapshot dari status database di mana tidak ada record di tabel Student.