Cassandra - Koleksi CQL

CQL menyediakan fasilitas untuk menggunakan tipe data Collection. Dengan menggunakan jenis Collection ini, Anda dapat menyimpan beberapa nilai dalam satu variabel. Bab ini menjelaskan cara menggunakan Koleksi di Cassandra.

Daftar

Daftar digunakan dalam kasus di mana

  • urutan elemen harus dipertahankan, dan
  • sebuah nilai harus disimpan beberapa kali.

Anda bisa mendapatkan nilai tipe data daftar menggunakan indeks elemen dalam daftar.

Membuat Tabel dengan Daftar

Diberikan di bawah ini adalah contoh untuk membuat tabel sampel dengan dua kolom, nama dan email. Untuk menyimpan banyak email, kami menggunakan list.

cqlsh:tutorialspoint> CREATE TABLE data(name text PRIMARY KEY, email list<text>);

Memasukkan Data ke dalam Daftar

Saat memasukkan data ke dalam elemen dalam daftar, masukkan semua nilai yang dipisahkan dengan koma dalam tanda kurung siku [] seperti yang ditunjukkan di bawah ini.

cqlsh:tutorialspoint> INSERT INTO data(name, email) VALUES ('ramu',
['[email protected]','[email protected]'])

Memperbarui Daftar

Diberikan di bawah ini adalah contoh untuk memperbarui tipe data daftar dalam tabel yang disebut data. Di sini kami menambahkan email lain ke daftar.

cqlsh:tutorialspoint> UPDATE data
... SET email = email +['[email protected]']
... where name = 'ramu';

Verifikasi

Jika Anda memverifikasi tabel menggunakan pernyataan SELECT, Anda akan mendapatkan hasil sebagai berikut -

cqlsh:tutorialspoint> SELECT * FROM data;

 name | email
------+--------------------------------------------------------------
 ramu | ['[email protected]', '[email protected]', '[email protected]']

(1 rows)

SET

Set adalah tipe data yang digunakan untuk menyimpan sekelompok elemen. Elemen set akan dikembalikan dalam urutan yang diurutkan.

Membuat Meja dengan Set

Contoh berikut membuat tabel contoh dengan dua kolom, nama dan telepon. Untuk menyimpan beberapa nomor telepon, kami menggunakan set.

cqlsh:tutorialspoint> CREATE TABLE data2 (name text PRIMARY KEY, phone set<varint>);

Memasukkan Data ke dalam Kumpulan

Saat memasukkan data ke dalam elemen dalam satu set, masukkan semua nilai yang dipisahkan dengan koma dalam tanda kurung kurawal {} seperti yang ditunjukkan di bawah ini.

cqlsh:tutorialspoint> INSERT INTO data2(name, phone)VALUES ('rahman',    {9848022338,9848022339});

Memperbarui Set

Kode berikut menunjukkan cara memperbarui satu set dalam tabel bernama data2. Di sini kami menambahkan nomor telepon lain ke set.

cqlsh:tutorialspoint> UPDATE data2
   ... SET phone = phone + {9848022330}
   ... where name = 'rahman';

Verifikasi

Jika Anda memverifikasi tabel menggunakan pernyataan SELECT, Anda akan mendapatkan hasil sebagai berikut -

cqlsh:tutorialspoint> SELECT * FROM data2;

   name | phone
--------+--------------------------------------
 rahman | {9848022330, 9848022338, 9848022339}

(1 rows)

PETA

Peta adalah tipe data yang digunakan untuk menyimpan pasangan elemen nilai kunci.

Membuat Tabel dengan Peta

Contoh berikut menunjukkan cara membuat tabel sampel dengan dua kolom, nama dan alamat. Untuk menyimpan beberapa nilai alamat, kami menggunakan map.

cqlsh:tutorialspoint> CREATE TABLE data3 (name text PRIMARY KEY, address
map<timestamp, text>);

Memasukkan Data ke dalam Peta

Saat memasukkan data ke dalam elemen di peta, masukkan semua key : value pasangan dipisahkan dengan koma dalam tanda kurung kurawal {} seperti yang ditunjukkan di bawah ini.

cqlsh:tutorialspoint> INSERT INTO data3 (name, address)
   VALUES ('robin', {'home' : 'hyderabad' , 'office' : 'Delhi' } );

Memperbarui Set

Kode berikut menunjukkan bagaimana memperbarui tipe data peta dalam tabel bernama data3. Di sini kami mengubah nilai kantor utama, yaitu kami mengubah alamat kantor seseorang bernama robin.

cqlsh:tutorialspoint> UPDATE data3
   ... SET address = address+{'office':'mumbai'}
   ... WHERE name = 'robin';

Verifikasi

Jika Anda memverifikasi tabel menggunakan pernyataan SELECT, Anda akan mendapatkan hasil sebagai berikut -

cqlsh:tutorialspoint> select * from data3;

  name | address
-------+-------------------------------------------
 robin | {'home': 'hyderabad', 'office': 'mumbai'}

(1 rows)