Database
 sql >> Database >  >> RDS >> Database

Trend di ScyllaDB:come gli utenti distribuiscono il database dei big data in tempo reale

ScyllaDB è un datastore NoSQL distribuito open source, reimplementato dal popolare database Apache Cassandra. Rilasciato solo quattro anni fa nel 2015, Scilla ha registrato una crescita media di popolarità di oltre il 220% anno su anno secondo DB-Engines. Abbiamo sentito molto parlare di questo database in crescita dalla comunità DBA e dai nostri utenti e abbiamo deciso di diventare uno sponsor per questo Scylla Summit di quest'anno per saperne di più sulle tendenze di distribuzione dei suoi utenti. In questo post, analizziamo il cloud ScyllaDB rispetto alle distribuzioni on-premise, i provider cloud più popolari, i database SQL e NoSQL utilizzati con ScyllaDB, le attività di gestione che richiedono più tempo e perché dovresti usare ScyllaDB rispetto a Cassandra.

  • ScyllaDB contro Cassandra
  • ScyllaDB Cloud e ScyllaDB in locale
  • Fornitori cloud più popolari per ScyllaDB
  • Database più comunemente utilizzati con ScyllaDB
  • Attività di gestione di ScyllaDB che richiedono più tempo

ScyllaDB contro Cassandra:qual è il migliore?

Ti stai chiedendo quale store a colonne larghe utilizzare per le tue implementazioni? Mentre Cassandra è ancora il più popolare, ScyllaDB sta guadagnando rapidamente come il settimo negozio di colonne larghe più popolare secondo DB-Engines. Quindi quali sono alcuni dei motivi per cui gli utenti scelgono ScyllaDB e Cassandra?

ScyllaDB offre una latenza notevolmente inferiore che consente di elaborare un volume elevato di dati con un ritardo minimo. In effetti, secondo il rapporto sul benchmark delle prestazioni di ScyllaDB, la loro latenza percentile del 99,9 è fino a 11 volte migliore di Cassandra su AWS EC2 bare metal. Quindi questo tipo di prestazioni deve avere un costo, giusto? Lo fa, ma in questo rapporto affermano che si tratta di una riduzione dei costi di 2,5 volte rispetto all'esecuzione di Cassandra, poiché possono ottenere queste prestazioni con solo il 10% dei nodi.

Ci sono dozzine di articoli di qualità su ScyllaDB e Cassandra, quindi ci fermeremo qui in modo da poter arrivare al vero scopo di questo articolo, scomponendo i dati utente di ScyllaDB .

ScyllaDB Cloud e ScyllaDB in locale

ScyllaDB può essere eseguito sia nel cloud pubblico che in locale. In effetti, ScyllaDB viene distribuito più comunemente sia nel cloud pubblico che in ambienti on-premise all'interno di una singola organizzazione. Il 44% delle implementazioni di ScyllaDB che sfruttano sia il cloud che l'elaborazione on-premise potrebbe avvenire tramite un ambiente cloud ibrido che sfrutta entrambi per un'applicazione specifica o utilizzando questi ambienti separatamente per gestire applicazioni diverse.

Le distribuzioni on-premise di ScyllaDB e le distribuzioni cloud di ScyllaDB sono state pari al 28% ciascuna. Puoi eseguire sia ScyllaDB che ScyllaDB Enterprise gratuiti e open source nel cloud o on-premise e la licenza di ScyllaDB Enterprise parte da $ 28,8.000/anno per un totale di 48 core.

Qual è il modo migliore per distribuire #ScyllaDB? Cloud e localeFai clic per twittare

Fornitori cloud più popolari per ScyllaDB

Con il 28% del cluster ScyllaDB distribuito esclusivamente nel cloud e il 72% che utilizza il cloud in qualche modo, eravamo interessati a vedere quali provider cloud sono più popolari per i carichi di lavoro ScyllaDB .

#1. AWS

Abbiamo riscontrato che il 39,1% di tutte le distribuzioni cloud di ScyllaDB sono in esecuzione su AWS dai nostri partecipanti al sondaggio. Sebbene ci aspettassimo che AWS fosse il provider cloud n. 1 per ScyllaDB, la percentuale è stata notevolmente inferiore rispetto alle risposte di tutti i tipi di database cloud in questo sondaggio, secondo cui il 55% era distribuito su AWS. Questo numero è più in linea con il nostro recente rapporto sulle tendenze del database open source 2019, in cui il 56,9% delle distribuzioni cloud è stato segnalato in esecuzione su AWS. Ciò potrebbe essere dovuto al fatto che AWS non supporta ScyllaDB tramite i suoi Servizi di database relazionali (RDS), quindi potremmo ipotizzare che man mano che più organizzazioni continuano a migrare i propri dati su ScyllaDB, AWS potrebbe subire un calo della propria base di clienti.

#2. Google Cloud

Google Cloud Platform (GCP) è stato il secondo provider cloud più popolare per ScyllaDB, attestandosi al 30,4% di tutte le implementazioni cloud. Google Cloud offre il proprio archivio di grandi colonne e un database di big data chiamato Bigtable, che in realtà è classificato n. 111, uno sotto ScyllaDB al n. 110 su DB-Engines. Le capacità a basso costo e ad alte prestazioni di ScyllaDB lo rendono un'opzione interessante per gli utenti GCP, soprattutto perché è open source rispetto a Bigtable che è disponibile in commercio solo su GCP.

#3. Azzurro

Azure è seguito al terzo posto, rappresentando il 17,4% di tutte le distribuzioni di ScyllaDB nel cloud dai nostri intervistati. Azure è un provider cloud interessante per le organizzazioni che sfruttano la suite di servizi Microsoft.

Quale provider di servizi cloud è più popolare per #ScyllaDB? AWS vs Azure vs GCPClick To Tweet

Il restante 13,0% delle implementazioni cloud di ScyllaDB è in esecuzione su servizi di cloud computing DigitalOcean, Alibaba e Tencent.

Il loro servizio gestito, Scylla Cloud, è attualmente disponibile solo su AWS e devi utilizzare la versione ScyllaDB Enterprise per sfruttare il loro DBaaS. Scylla Cloud prevede di aggiungere il supporto per GCP e Azure in futuro, ma con solo il 39% di report su AWS, possiamo supporre che oltre il 60% delle distribuzioni di ScyllaDB siano autogestite nel cloud.

Database più comunemente usati con ScyllaDB

Come abbiamo riscontrato anche dal rapporto sui database open source 2019, le organizzazioni sfruttano in media 3,1 tipi di database diversi. Ma, in questo sondaggio, le organizzazioni che utilizzano ScyllaDB hanno riferito di utilizzare in media solo 2,3 diversi tipi di database, una riduzione del 26% rispetto ai nostri risultati di tutti gli utenti di database open source. Abbiamo anche riscontrato che il 39% delle distribuzioni di ScyllaDB utilizza solo ScyllaDB e non sfrutta nessun altro tipo di database nelle proprie applicazioni.

Quindi quali database sono più comunemente usati insieme a ScyllaDB? Abbiamo scoperto che gli utenti di ScyllaDB utilizzano anche database SQL MySQL il 20% delle volte e PostgreSQL il 20% delle volte. Il secondo database più comunemente utilizzato con ScyllaDB è stato Cassandra rappresentato nel 16% delle distribuzioni e possiamo presumere che ciò sia dovuto alle organizzazioni che testano ScyllaDB come alternativa a Cassandra nelle loro applicazioni poiché entrambi i tipi di database sono archivi di colonne di grandi dimensioni.

MongoDB è stato il quarto database più diffuso con ScyllaDB al 12%. Redis ed Elasticsearch erano al quinto posto, entrambi sfruttando l'8% delle volte con le implementazioni di ScyllaDB.

Abbiamo anche riscontrato che il 20% delle implementazioni di Scylla utilizza altri tipi di database, inclusi Oracle, Aerospike, Kafka (che ora si sta trasformando in un database di streaming di eventi), DB2 e Tarantool.

Attività di gestione di ScyllaDB che richiedono la maggior parte del tempo

Sappiamo che ScyllaDB è molto potente, ma quanto è facile da usare? Abbiamo chiesto agli utenti di ScyllaDB quale fosse la loro attività di gestione più dispendiosa in termini di tempo e il 28% ha sentito che Scylla Repair era l'attività di gestione più lunga. Scylla Repair è un processo di sincronizzazione che viene eseguito in background per garantire che tutte le repliche contengano gli stessi dati. Gli utenti devono eseguire regolarmente il comando nodetool repair, poiché non è possibile automatizzare le riparazioni nelle versioni open source di ScyllaDB o ScyllaDB Enterprise, ma è possibile impostare un programma di riparazione tramite Scylla Manager.

L'analisi lenta delle query di ScyllaDB ha legato i backup e i ripristini di ScyllaDB al secondo posto al 14% ciascuno per l'attività di gestione più dispendiosa in termini di tempo. Non sembra che ScyllaDB abbia attualmente un analizzatore di query disponibile per identificare le query che devono essere ottimizzate, ma gli utenti possono utilizzare la registrazione lenta delle query per vedere quali query hanno il tempo di risposta più lungo. Anche i backup di ScyllaDB non possono essere automatizzati tramite le versioni open source e enterprise, ma affermano che i backup ricorrenti saranno disponibili nelle future edizioni di Scylla Manager. Inoltre, non esiste un modo automatico per ripristinare un backup ScyllaDB, poiché questi devono essere eseguiti manualmente in tutte le versioni.

Il 10% degli utenti di ScyllaDB ha riferito che l'aggiunta, la rimozione o la sostituzione di nodi era l'attività che richiedeva più tempo, arrivando al quarto posto. Si tratta di processi manuali che possono richiedere un po' di tempo, soprattutto se si tratta di dati di grandi dimensioni. L'aggiunta di nodi viene utilizzata per aumentare la scalabilità orizzontale di una distribuzione, mentre la loro rimozione riduce la distribuzione. I nodi devono essere sostituiti se sono inattivi o guasti, anche se un cluster può essere ancora disponibile quando più di un nodo è inattivo.

Al quinto posto con il 7% sono stati gli aggiornamenti e la risoluzione dei problemi. ScyllaDB Enterprise e open source richiedono entrambi passaggi estesi per aggiornare un cluster. I metodi consigliati prevedono una procedura in sequenza, quindi non ci sono tempi di inattività, ma si tratta di un processo manuale, quindi l'utente deve rimuovere un nodo alla volta, eseguire tutti i passaggi di aggiornamento, riavviare e convalidare il nodo prima di passare all'esecuzione del stessi passaggi per i nodi rimanenti nel cluster. Dispendioso in termini di tempo, ma fortunatamente non è un compito quotidiano! La risoluzione dei problemi è ovviamente una profonda tana in cui tuffarsi, ma i clienti ScyllaDB Enterprise ricevono supporto mission-critical 24 ore su 24, 7 giorni su 7, e gli utenti open source hanno accesso a una miriade di risorse, tra cui documentazione, mailing list, Scylla University e un canale slack per gli utenti discussioni.

Qual è l'attività di gestione di #ScyllaDB che richiede più tempo?Fai clic per twittare

Il restante 21% delle attività dispendiose in termini di tempo riportate dagli utenti di ScyllaDB include monitoraggio, migrazioni, provisioning, bilanciamento degli shard, compattazione e applicazione di patch.

Quindi, come si confrontano questi risultati con le tue implementazioni ScyllaDB? Stai cercando un modo per automatizzare queste attività di gestione che richiedono tempo? Anche se oggi supportiamo MySQL, PostgreSQL, Redis™* e MongoDB® Database, siamo sempre alla ricerca di feedback su quale database per cui aggiungere il supporto successivo attraverso i nostri piani DBaaS. Facci sapere nei commenti o su Twitter su @scalegridio se stai cercando un modo più semplice per gestire i tuoi cluster ScyllaDB nel cloud o on-premise!