Cassandra Tutorial per principianti: impara in 3 giorni

Che cos'è la Apache Cassandra?

Cassandra è un sistema di gestione di database distribuito progettato per gestire un volume elevato di dati strutturati su server di base.

Cassandra gestisce l'enorme quantità di dati con la sua architettura distribuita. I dati sono posizionati su macchine diverse con più di un fattore di replicazione che fornisce elevata disponibilità e nessun singolo punto di errore.

Nell'immagine qui sotto, i cerchi sono Cassandra i nodi e le linee tra i cerchi mostrano un'architettura distribuita, mentre il client invia dati al nodo.

Cassandra Tutorial sul database per principianti: impara in 3 giorni

Cassandra Programma

Introduzione

👉 Lesssu 1 Installazione Cassandra — Come scaricare e installare Cassandra on Windows
👉 Lesssu 2 Cassandra Archistrategia di tecnologia e fattore di replica — Una guida completa
👉 Lesssu 3 Cassandra Modello di dati — Impara con un semplice esempio

Roba avanzata

👉 Lesssu 1 Cassandra Spazio tasti - Crea, modifica e rilascia lo spazio delle chiavi Cassandra con l'esempio
👉 Lesssu 2 Cassandra Table — Crea, modifica, elimina e tronca (con esempio)
👉 Lesssu 3 Cassandra Linguaggio di interrogazione (CQL) — Inserisci in, Aggiorna, Elimina (Esempio)
👉 Lesssu 4 Crea e rilascia INDICE in Cassandra — Impara con l'esempio
👉 Lesssu 5 Cassandra Tipi di dati CQL e scadenza dei dati utilizzando TTL — Impara con l'esempio
👉 Lesssu 6 Cassandra Collezione — Imposta, Elenco, Mappa con Esempio
👉 Lesssu 7 Cassandra Cluster Impostare - Cluster Configurazione su più nodi
👉 Lesssu 8 Installazione di DataStax DevCenter e OpsCenter — Una guida passo passo
👉 Lesssu 9 Cassandra Sicurezza — Crea utente e autenticazione con JMX

Bisogna sapere!

👉 Lesssu 1 Cassandra Intervista Domande — Primi 23 Cassandra Intervista Q & A
👉 Lesssu 2 Cassandra PDF dell'esercitazione - Scaricamento Cassandra PDF tutorial per principianti

Cassandra Storia

  • Cassandra è stato sviluppato inizialmente su Facebook per la ricerca nella posta in arrivo.
  • Facebook lo ha reso open source nel luglio 2008.
  • Incubatrice Apache accettata Cassandra a marzo 2009.
  • Cassandra è un progetto di alto livello di Apache dal 2010 febbraio.
  • L'ultima versione di Apache Cassandra è 3.2.1.

Per prima cosa capiamo cos'è il database NoSQL.

Nosql Cassandra Banca Dati

I database NoSQL sono chiamati database “Non solo SQL” o “Non relazionali”. I database NoSQL archiviano e recuperano dati diversi dalle relazioni tabulari come i database relazionali.

I database NoSQL includono MongoDB, HBase e Cassandra.

I database NoSQL presentano le seguenti proprietà.

  • Semplicità di progettazione
  • Ridimensionamento orizzontale
  • Alta disponibilità

Strutture dati utilizzate in Cassandra sono più specificate delle strutture dati utilizzate nei database relazionali. Cassandra le strutture dati sono più veloci delle strutture di database relazionali.

I database NoSQL sono sempre più utilizzati nei Big Data e nelle applicazioni web in tempo reale. I database NoSQL sono talvolta chiamati Not Only SQL cioè possono supportare un linguaggio di query simile a SQL.

Nosql Cassandra Database e database relazionali

Ecco le differenze tra i database relazionali e i database NoSQL in formato tabellare.

Database relazionale Database NoSQL
Gestisce i dati in arrivo a bassa velocità Gestisce i dati in arrivo ad alta velocità
I dati arrivano da una o poche posizioni I dati arrivano da molte località
Gestisce i dati strutturati Gestisce dati strutturati non strutturati e semi-strutturati.
Supporta transazioni complesse (con join) Supporta transazioni semplici
singolo punto di errore con failover Nessun singolo punto di errore
Gestisce i dati nel volume moderato. Gestisce i dati in un volume molto elevato
Distribuzioni centralizzate Distribuzioni decentralizzate
Transazioni scritte in un'unica posizione Transazione scritta in molte località
Fornisce scalabilità di lettura Fornisce scalabilità sia in lettura che in scrittura
Distribuito in modo verticale Distribuito in modo orizzontale

Apache Cassandra Caratteristiche

Ci sono le seguenti caratteristiche che Cassandra fornisce.

  • Estremamente scalabile Architecnologia: Cassandra ha un design senza master in cui tutti i nodi sono allo stesso livello, garantendo semplicità operativa e facile scalabilità.
  • Senza padrone Architecnologia: I dati possono essere scritti e letti su qualsiasi nodo.
  • Prestazioni su scala lineare: Man mano che vengono aggiunti più nodi, le prestazioni di Cassandra aumenta.
  • No Singolo punto di errore: Cassandra replica i dati su diversi nodi garantendo l'assenza di singoli punti di errore.
  • Rilevamento e ripristino dei guasti: I nodi guasti possono essere facilmente ripristinati e ripristinati.
  • Modello dati flessibile e dinamico: Supporta tipi di dati con scritture e letture veloci.
  • Protezione dati: I dati sono protetti grazie alla progettazione del registro di commit e alla sicurezza integrata come meccanismi di backup e ripristino.
  • Coerenza dei dati sintonizzabile: Supporto per una forte coerenza dei dati nell'intera architettura distribuita.
  • Replica su più data center: Cassandra fornisce funzionalità per replicare i dati su più data center.
  • Compressione dati: Cassandra può comprimere fino all'80% dei dati senza alcun sovraccarico.
  • Cassandra Lingua della domanda: Cassandra fornisce un linguaggio di query simile al linguaggio SQL. Rende molto semplice per gli sviluppatori di database relazionali il passaggio dal database relazionale a Cassandra.

Cassandra Casi d'uso/applicazione

Cassandra è un database non relazionale che può essere utilizzato per diversi tipi di applicazioni. Ecco alcuni casi d'uso in cui Cassandra dovrebbe essere preferito.

  • MessagingCassandra è un ottimo database per le aziende che fornisce Mobile telefoni e servizi di messaggistica. Queste aziende hanno un'enorme quantità di dati, quindi Cassandra è meglio per loro.
  • Applicazione Internet delle coseCassandra è un ottimo database per le applicazioni in cui i dati provengono ad altissima velocità da diversi dispositivi o sensori.
  • Cataloghi di prodotti e app di vendita al dettaglioCassandra viene utilizzato da molti rivenditori per una protezione duratura del carrello degli acquisti e un rapido input e output del catalogo prodotti.
  • Analisi dei social media e motore di raccomandazioneCassandra è un ottimo database per molte aziende online e fornitori di social media per l'analisi e la raccomandazione ai propri clienti.