Introduzione
Apache Cassandra utilizza CQL (Cassandra Query Language) per comunicare con il suo database. Cassandra è simile a SQL in quanto memorizza anche i dati nelle tabelle, organizzandoli in righe e colonne.
Cassandra memorizza i dati in variabili. A ciascuna variabile è assegnato un tipo di dati che definisce il tipo (o intervallo) dei valori che può memorizzare e quali operazioni può eseguire senza causare errori.
Continua a leggere per conoscere i tipi di dati Cassandra e come differiscono.
Tipi di dati Cassandra
Apache Cassandra supporta un ricco set di tipi di dati, tra cui:
- Tipi di dati integrati
- Tipi di dati di raccolta
- Tipi di dati definiti dall'utente
Nota: Apache Cassandra è un database NoSQL a colonne larghe. Se vuoi saperne di più su questi tipi di database, leggi i tipi di database NoSQL. E se sei interessato ai concetti e alle funzionalità di base di NoSQL, fai riferimento a Cos'è NoSQL.
Tipi di dati integrati
Cassandra ha molti tipi di dati per i quali fornisce supporto integrato. Questi sono anche indicati come tipi di dati primitivi. Sono predefiniti e puoi fare riferimento direttamente a ciascuno di essi.
Tipo di dati | Costanti | Descrizione |
---|---|---|
ascii | stringhe | ASCII è un tipo di dati che include la codifica dei caratteri utilizzata per le stringhe. In esso, il codice numerico rappresenta i caratteri (ad esempio, T è 84 ). Mentre l'ASCII standard può rappresentare 128 caratteri, la versione estesa incorpora 256 caratteri. |
Booleano | booleani | BOOLEAN viene utilizzato per le variabili che hanno uno dei due valori possibili. Questi valori vengono memorizzati come numeri a 16 bit, ma possono essere solo True o Falso . |
blob | blob | BLOB è l'abbreviazione di "Binary Large Object" ed è utilizzato per memorizzare dati binari. Poiché rappresenta byte arbitrari, viene utilizzato principalmente per archiviare immagini, video e file audio. A causa delle loro dimensioni, richiedono più spazio rispetto ad altri tipi di dati. |
decimale | interi, float | I tipi di dati DECIMAL sono utili per la memorizzazione di dati valutari grazie alla precisione che offre. Viene utilizzato per valori numerici costituiti da due componenti:precisione (numero di cifre:5.754 ) scala (cifre che seguono il punto decimale:5.754 ) Memorizza il valore 5.754 come due unità separate:5 (precisione) e 754 (scala). |
doppio | interi | Se devi memorizzare valori decimali che non richiedono il livello di precisione dei valori di valuta, puoi utilizzare il tipo di dati DOUBLE. Rappresenta una virgola mobile a 64 bit e viene utilizzato per i numeri interi. |
galleggiante | interi, float | Il tipo di dati FLOAT memorizza i valori del punto decimale. È una precisione singola, che rappresenta una virgola mobile a 32 bit. Non dovresti usarlo con dati che richiedono un'elevata precisione poiché non è preciso come la rappresentazione del tipo di dati decimale. |
int | interi | Il tipo di dati INT viene utilizzato per memorizzare interi con segno a 32 bit. |
smallint | interi | SMALLINT memorizza interi con segno a 16 bit. |
bigint | interi | BIGINT memorizza interi con segno a 64 bit. |
testo | stringhe | Per archiviare i dati puoi utilizzare i tipi di dati TEXT utilizzati per i dati di testo, rappresentati in stringhe codificate UTF8. |
varchar | stringhe | Usa VARCHAR per variabili o caratteri arbitrari. Memorizza in stringhe codificate UTF8 per le quali puoi anche determinare la dimensione massima. |
inet | stringhe | Per memorizzare stringhe di caratteri che non richiedono alcuna operazione aritmetica, utilizzare il tipo di dati INET. Usalo per salvare e gestire gli indirizzi IP poiché supporta sia la rappresentazione numerica che quella di caratteri. INET può memorizzare indirizzi host IPv4 e IPv6. |
contatore | interi | Il tipo di dati COUNTER viene utilizzato per valori integrali a 64 bit e li memorizza in colonne contatore. Questo tipo di dati supporta due operazioni:incremento e decremento ed è comunemente usato per contare le visualizzazioni di pagina. |
tempo | interi, stringhe | Puoi memorizzare i valori temporali nel seguente formato:hh:mm:ss utilizzando il tipo di dati dell'ora. Offre una precisione di nanosecondi e supporta dati in numeri interi e stringhe. |
data | interi, stringhe | Di conseguenza, puoi memorizzare i valori della data nel formato:YYYY-MM-DD . Questo tipo di dati supporta anche numeri interi e stringhe. |
indicatore orario | interi, stringhe | Il tipo di dati TIMESTAMP è una combinazione dei due menzionati in precedenza. Viene utilizzato per valori che includono valori di data e ora nel formato:YYYY-MM-DD hh:mm:ss |
Nota: Per ulteriori informazioni su Cassandra, consulta Cassandra vs MongoDB.
Tipi di dati di raccolta
Puoi utilizzare uno dei tipi di dati di raccolta se desideri memorizzare più valori in un'unica unità.
Cassandra supporta tre tipi di tipi di dati di raccolta:
- Mappe . Cassandra può archiviare i dati in insiemi di coppie chiave-valore utilizzando la Mappa tipo di dati. Ti consente di archiviare i dati e di assegnargli etichette (nomi di chiavi) per un ordinamento più semplice.
- Set . Puoi memorizzare più valori univoci, utilizzando il Set tipo di dati. Tieni presente che gli elementi non verranno archiviati in ordine.
- Elenchi . Se devi memorizzare più valori in un ordine specifico, puoi utilizzare l'Elenco tipo di dati. A differenza degli insiemi, gli elenchi possono memorizzare valori duplicati.
Tipo di dati definito dall'utente
L'ultimo tipo di tipi di dati Cassandra è Definito dall'utente tipi di dati (UDT). Come suggerisce il nome, consente a te (l'utente) di creare il tuo tipo di dati in base ai requisiti di cui hai bisogno.
Un UDT è costituito da più campi di dati di qualsiasi tipo di dati all'interno di una singola colonna. Una volta creato il tipo di dati definito dall'utente, puoi modificare o addirittura rimuovere i campi al suo interno.