Tipe Buatan Cassandra

Tipe Buatan Cassandra



“Cassandra memungkinkan kami untuk menentukan tipe khusus yang dapat menyimpan informasi terkait dalam sebuah tabel. Jika Anda tidak dapat menemukan tipe untuk menampung tipe data Anda, Anda bisa menggunakan tipe bawaan untuk menentukan tipe lain yang menangkap tata letak yang Anda inginkan.

Sebaiknya diingat bahwa tipe yang ditentukan terbatas pada ruang lingkup ruang kunci tempat pembuatannya. Anda dapat menggunakan notasi titik untuk mengakses tabel dari keypspace lain.







Posting ini akan membahas bagaimana Anda dapat menentukan tipe pengguna menggunakan perintah CREATE TYPE.”



Buat Sintaks Perintah Jenis

Perintah berikut menggambarkan sintaks dari perintah create type:



BUAT JENIS [ JIKA TIDAK ADA ]
keyspace_name.type_name (
field_name cassandra_type [ , ]
[ field_name cassandra_type ] [ ,... ]
) ;


Perintah tersebut mendukung klausa IF EXISTS, yang memungkinkan Anda untuk membatalkan kesalahan jika perintah dengan nama yang mirip ada di jenis target.





Type_name harus menyertakan nama unik yang sesuai dengan aturan penamaan Cassandra.

Terakhir, Anda dapat menentukan bidang untuk tipe Anda dan tipe CQL masing-masing. Jangan gunakan bidang penghitung dalam jenis khusus.



Contoh

Contoh berikut menunjukkan cara menentukan jenis kustom yang menyimpan laporan CVE.

jatuhkan keyspace jika ada zero_day;

buat keyspace zero_day
dengan replikasi = {
'kelas' : 'Strategi Sederhana' ,
'replication_factor' : 1
} ;
gunakan zero_day;

membuat Tipe cve_reports (
teks cve_number,
tanggal_laporan tanggal ,
teks yang terpengaruh_vendor,
tingkat keparahan mengambang,
) ;


Kueri di atas dimulai dengan membuat keyspace “zero_day” yang akan menampung tipe pengguna yang ditentukan.

Anda akan melihat bahwa pernyataan create type mengikuti format yang mirip dengan pembuatan tabel. Meskipun ini benar, mereka melayani tujuan yang berbeda, dan yang satu bisa menjadi pilihan yang lebih baik daripada yang lain.

CATATAN: Pertimbangkan implikasi kinerja sebelum memilih tabel di atas jenis kustom dan sebaliknya.

Kita kemudian dapat memasukkan data ke dalam tabel di atas seperti yang ditunjukkan:

Kita dapat membuat tabel dengan tipe cve_reports dan memasukkan data sampel seperti yang ditunjukkan:

membuat catatan tabel (
Indo int,
cve_laporan cve_laporan,
kunci utama ( Indo )
) ;

Masukkan Data

masukkan ke dalam catatan ( Indo , cve_reports ) nilai-nilai ( 1 , { cve_number: 'CVE-2021-33852' , tanggal_laporan: '2020-12-02' , terpengaruh_vendor: 'WordPress' , keparahan: 6.0 } ) ;


Kami kemudian dapat mengambil data yang ditambahkan sebagai:

Pilih * dari catatan;

Keluaran yang dihasilkan


Kesimpulan

Posting ini membahas dasar-dasar membuat dan menggunakan tipe yang ditentukan khusus di Apache Cassandra. Kami juga membahas cara membuat tabel dengan tipe kustom dan memasukkan data ke dalam kolom tipe kustom.

Selamat mengkode!!