Cassandra vytvoriť typ

Cassandra Vytvorit Typ



„Cassandra nám umožňuje definovať vlastné typy, ktoré môžu obsahovať súvisiace informácie v tabuľke. Ak nemôžete nájsť typ na uloženie vášho typu údajov, môžete použiť vstavané typy na definovanie iného typu, ktorý zachytáva požadované rozloženie.

Je dobré mať na pamäti, že definovaný typ je obmedzený rozsahom priestoru kľúčov, na ktorom je vytvorený. Na prístup k tabuľke z iného keypspace môžete použiť bodkový zápis.







Tento príspevok bude diskutovať o tom, ako môžete definovať typ používateľa pomocou príkazu CREATE TYPE.'



Vytvoriť syntax príkazu typu

Nasledujúci príkaz zobrazuje syntax príkazu create type:



VYTVORIŤ TYP [ AK NEEXISTUJE ]
keyspace_name.type_name (
názov_poľa cassandra_type [ , ]
[ názov_poľa cassandra_type ] [ ,... ]
) ;


Príkaz podporuje klauzulu IF EXISTS, ktorá vám umožňuje zrušiť chyby, ak v cieľovom type existuje príkaz s podobným názvom.





Type_name musí obsahovať jedinečný názov, ktorý je v súlade s Cassandrinými pravidlami pre pomenovanie.

Nakoniec môžete definovať polia pre váš typ a ich príslušný typ CQL. Vo vlastných typoch nepoužívajte polia počítadla.



Príklad

Nasledujúci príklad ukazuje, ako definovať vlastný typ, ktorý obsahuje zostavy CVE.

pustiť klávesnicu ak existuje zero_day;

vytvoriť kľúčový priestor zero_day
s replikáciou = {
'trieda' : „SimpleStrategy“ ,
'replication_factor' : 1
} ;
použite zero_day;

vytvoriť typu cve_reports (
text cve_number,
report_date dátum ,
text ovplyvneného_vendora,
závažnosť plavenia,
) ;


Vyššie uvedený dotaz začína vytvorením kľúčového priestoru „zero_day“, ktorý bude obsahovať definovaný typ používateľa.

Všimnete si, že príkaz create má podobný formát ako vytváranie tabuľky. Aj keď je to pravda, slúžia na iné účely a jeden môže byť lepšou voľbou ako druhý.

POZNÁMKA: Pred výberom tabuľky pred vlastným typom zvážte dôsledky na výkon a naopak.

Potom môžeme vložiť údaje do tabuľky vyššie, ako je znázornené:

Môžeme vytvoriť tabuľku s typom cve_reports a vložiť vzorové údaje, ako je znázornené:

vytvárať záznamy v tabuľke (
id int,
cve_reports cve_reports,
primárny kľúč ( id )
) ;

Vložiť údaje

vložiť do záznamov ( id , cve_reports ) hodnoty ( 1 , { cve_number: 'CVE-2021-33852' , dátum_prehľadu: '2022-12-02' , ovplyvnený_vendor: „WordPress“ , závažnosť: 6.0 } ) ;


Potom môžeme načítať pridané údaje ako:

vyberte * zo záznamov;

Výsledný výstup


Záver

Tento príspevok pokrýval základy vytvárania a používania vlastných definovaných typov v Apache Cassandra. Tiež sme diskutovali o tom, ako vytvoriť tabuľku s vlastnými typmi a vložiť údaje do stĺpca vlastného typu.

Šťastné kódovanie!!