Cassandra vytvořit typ

Cassandra Vytvorit Typ



„Cassandra nám umožňuje definovat vlastní typy, které mohou obsahovat související informace v tabulce. Pokud nemůžete najít typ pro uložení vašeho typu dat, můžete použít vestavěné typy k definování jiného typu, který zachytí vaše požadované rozvržení.

Je dobré mít na paměti, že definovaný typ je omezen rozsahem klíčového prostoru, na kterém je vytvořen. Pro přístup k tabulce z jiného keypspace můžete použít tečkovou notaci.







Tento příspěvek pojednává o tom, jak můžete definovat typ uživatele pomocí příkazu CREATE TYPE.'



Vytvořit syntaxi příkazu typu

Následující příkaz znázorňuje syntaxi příkazu create type:



VYTVOŘIT TYP [ POKUD NEEXISTUJE ]
keyspace_name.type_name (
název_pole cassandra_type [ , ]
[ název_pole cassandra_type ] [ ,... ]
) ;


Příkaz podporuje klauzuli IF EXISTS, která vám umožňuje zrušit chyby, pokud v cílovém typu existuje příkaz s podobným názvem.





Type_name musí obsahovat jedinečný název, který odpovídá Cassandřiným pravidlům pro pojmenování.

Nakonec můžete definovat pole pro váš typ a jejich příslušný typ CQL. Nepoužívejte pole čítače ve vlastních typech.



Příklad

Následující příklad ukazuje, jak definovat vlastní typ, který obsahuje sestavy CVE.

zahodit klíčový prostor -li existuje zero_day;

vytvořit klíčový prostor zero_day
s replikací = {
'třída' : 'SimpleStrategy' ,
'replikační_faktor' : 1
} ;
použijte zero_day;

vytvořit typ cve_reports (
text cve_number,
datum_přehledu datum ,
text ovlivněného_vendor,
plovák závažnosti,
) ;


Výše uvedený dotaz začíná vytvořením klíčového prostoru „zero_day“, který bude obsahovat definovaný typ uživatele.

Všimnete si, že příkaz create má podobný formát jako vytváření tabulky. I když je to pravda, slouží jiným účelům a jeden může být lepší volbou než druhý.

POZNÁMKA: Před výběrem tabulky před vlastním typem zvažte důsledky pro výkon a naopak.

Poté můžeme vložit data do výše uvedené tabulky, jak je znázorněno:

Můžeme vytvořit tabulku s typem cve_reports a vložit ukázková data, jak je znázorněno:

vytvářet tabulkové záznamy (
id int,
cve_reports cve_reports,
primární klíč ( id )
) ;

Vložit data

vložit do záznamů ( id , cve_reports ) hodnoty ( 1 , { cve_number: 'CVE-2021-33852' , datum_přehledu: '2022-12-02' , dotčený_vendor: 'WordPress' , vážnost: 6.0 } ) ;


Přidaná data pak můžeme načíst jako:

vybrat * ze záznamů;

Výsledný výstup


Závěr

Tento příspěvek pokryl základy vytváření a používání vlastních definovaných typů v Apache Cassandra. Také jsme probrali, jak vytvořit tabulku s vlastními typy a vložit data do sloupce vlastního typu.

Šťastné kódování!!