Cassandra Oluşturma Türü

Cassandra Olusturma Turu



“Cassandra, ilgili bilgileri bir tabloda tutabilen özel türleri tanımlamamıza izin veriyor. Veri türünüzü tutacak bir tür bulamazsanız, istediğiniz düzeni yakalayan başka bir tür tanımlamak için yerleşik türleri kullanabilirsiniz.

Tanımlanan türün, üzerinde oluşturulduğu anahtar alanın kapsamı ile sınırlı olduğunu akılda tutmakta fayda var. Başka bir keypspace'den bir tabloya erişmek için nokta gösterimini kullanabilirsiniz.







Bu gönderi, CREATE TYPE komutunu kullanarak bir kullanıcı türünü nasıl tanımlayabileceğinizi tartışacaktır.



Tür Komut Sözdizimi Oluştur

Aşağıdaki komut, create type komutunun sözdizimini gösterir:



OLUŞTUR TÜRÜ [ VAR DEĞİLSE ]
keyspace_name.type_name (
alan_adı cassandra_type [ , ]
[ alan_adı cassandra_type ] [ ,... ]
) ;


Komut, IF EXISTS yan tümcesini destekler; bu, hedef türde benzer bir ada sahip komut varsa, hataları ortadan kaldırmanıza olanak tanır.





Type_name, Cassandra'nın adlandırma kurallarına uyan benzersiz bir ad içermelidir.

Son olarak, türünüz ve ilgili CQL türü için alanları tanımlayabilirsiniz. Özel tiplerde sayaç alanları kullanmayın.



Örnek

Aşağıdaki örnek, CVE raporlarını tutan özel bir türün nasıl tanımlanacağını gösterir.

tuş alanını bırak eğer sıfır_gün var;

keyspace zero_day oluştur
replikasyon ile = {
'sınıf' : 'BasitStrateji' ,
'replication_factor' : 1
} ;
sıfır_gün kullan;

oluşturmak tip cve_reports (
cve_number metin,
rapor_tarihi tarih ,
etkilenen_satıcı metni,
ciddiyet şamandıra,
) ;


Yukarıdaki sorgu, tanımlanan kullanıcı türünü tutacak bir “zero_day” anahtar alanı oluşturarak başlar.

Create type ifadesinin tablo oluşturmaya benzer bir format izlediğini fark edeceksiniz. Bu doğru olsa da, farklı amaçlara hizmet ederler ve biri diğerinden daha iyi bir seçim olabilir.

NOT: Özel bir tür yerine bir tablo seçmeden önce performans sonuçlarını göz önünde bulundurun ve bunun tersi de geçerlidir.

Daha sonra yukarıdaki tabloya gösterildiği gibi veri ekleyebiliriz:

cve_reports tipinde bir tablo oluşturabilir ve gösterildiği gibi örnek verileri ekleyebiliriz:

tablo kayıtları oluştur (
İD int,
cve_reports cve_reports,
birincil anahtar ( İD )
) ;

Veri Ekle

kayıtlara ekle ( İD , cve_reports ) değerler ( 1 , { cve_number: 'CVE-2021-33852' , rapor_tarihi: '2022-12-02' , etkilenen_satıcı: 'WordPress' , ciddiyet: 6.0 } ) ;


Daha sonra eklenen verileri şu şekilde getirebiliriz:

seçme * kayıtlardan;

Sonuç Çıktısı


Çözüm

Bu gönderi, Apache Cassandra'da özel tanımlı türler oluşturmanın ve kullanmanın temellerini ele aldı. Ayrıca, özel türlerle bir tablonun nasıl oluşturulacağını ve özel bir tür sütununa nasıl veri ekleneceğini de tartıştık.

Mutlu kodlama!!