Tipo di creazione Cassandra

Tipo Di Creazione Cassandra



“Cassandra ci consente di definire tipi personalizzati che possono contenere informazioni correlate in una tabella. Se non riesci a trovare un tipo che contenga il tuo tipo di dati, puoi utilizzare i tipi integrati per definire un altro tipo che acquisisca il layout desiderato.

È bene tenere presente che il tipo definito è limitato all'ambito dello spazio delle chiavi su cui è stato creato. È possibile utilizzare la notazione del punto per accedere a una tabella da un altro keypspace.







Questo post discuterà come definire un tipo di utente usando il comando CREATE TYPE.'



Crea la sintassi del comando di tipo

Il comando seguente descrive la sintassi del comando create type:



CREA TIPO [ SE NON ESISTE ]
nome_spazio chiavi.nome_tipo (
nome_campo tipo_cassandra [ , ]
[ nome_campo tipo_cassandra ] [ ,... ]
) ;


Il comando supporta la clausola IF EXISTS, che consente di annullare gli errori se il comando con un nome simile esiste nel tipo di destinazione.





Type_name deve includere un nome univoco conforme alle regole di denominazione di Cassandra.

Infine, puoi definire i campi per il tuo tipo e il rispettivo tipo CQL. Non utilizzare i campi contatore nei tipi personalizzati.



Esempio

L'esempio seguente mostra come definire un tipo personalizzato che contenga i report CVE.

rilascia lo spazio chiave Se esiste giorno_zero;

crea lo spazio delle chiavi zero_day
con replica = {
'classe' : 'Strategia semplice' ,
'fattore_replica' : 1
} ;
usa giorno_zero;

creare genere cve_report (
cve_number testo,
rapporto_data Data ,
testo del venditore_interessato,
gravità galleggiante,
) ;


La query precedente inizia creando uno spazio chiave 'zero_day' che conterrà il tipo di utente definito.

Noterai che l'istruzione di tipo create segue un formato simile alla creazione di tabelle. Anche se questo è vero, servono a scopi diversi e uno può essere una scelta migliore dell'altro.

NOTA: Considera le implicazioni sulle prestazioni prima di scegliere una tabella rispetto a un tipo personalizzato e viceversa.

Possiamo quindi inserire i dati nella tabella sopra come mostrato:

Possiamo creare una tabella con il tipo cve_reports e inserire dati di esempio come mostrato:

creare record di tabella (
id int,
cve_reports cve_reports,
chiave primaria ( id )
) ;

Inserisci dati

inserire nei record ( id , cve_report ) i valori ( 1 , { cve_number: 'CVE-2021-33852' , data_report: '02-12-2022' , venditore_interessato: 'WordPress' , gravità: 6.0 } ) ;


Possiamo quindi recuperare i dati aggiunti come:

Selezionare * dai registri;

Uscita risultante


Conclusione

Questo post ha trattato le nozioni di base sulla creazione e l'utilizzo di tipi personalizzati in Apache Cassandra. Abbiamo anche discusso di come creare una tabella con tipi personalizzati e inserire dati in una colonna di tipo personalizzato.

Buona codifica!!