sql >> Database >  >> RDS >> Database

ScyllaDB-trends – hoe gebruikers de realtime big data-database implementeren

ScyllaDB is een open-source gedistribueerde NoSQL-gegevensopslag, opnieuw geïmplementeerd vanuit de populaire Apache Cassandra-database. Scylla, slechts vier jaar geleden uitgebracht in 2015, heeft volgens DB-Engines een gemiddelde groei van meer dan 220% op jaarbasis. We hebben veel gehoord over deze groeiende database van de DBA-gemeenschap en onze gebruikers, en besloten dit jaar sponsor te worden voor de Scylla Summit om meer te weten te komen over de implementatietrends van de gebruikers. In dit bericht geven we een overzicht van ScyllaDB cloud versus on-premise implementaties, de populairste cloudproviders, SQL- en NoSQL-databases die worden gebruikt met ScyllaDB, de meest tijdrovende beheertaken en waarom je ScyllaDB versus Cassandra zou moeten gebruiken.

  • ScyllaDB versus Cassandra
  • ScyllaDB Cloud versus ScyllaDB op locatie
  • Meest populaire cloudproviders voor ScyllaDB
  • Databases die het meest worden gebruikt met ScyllaDB
  • Meest tijdrovende ScyllaDB-beheertaken

ScyllaDB vs. Cassandra – wat is beter?

Vraagt ​​u zich af welke winkel met brede kolommen u moet gebruiken voor uw implementaties? Hoewel Cassandra nog steeds het populairst is, wint ScyllaDB snel als de 7e meest populaire brede kolomwinkel volgens DB-Engines. Dus wat zijn enkele van de redenen waarom gebruikers ScyllaDB versus Cassandra zouden kiezen?

ScyllaDB biedt een aanzienlijk lagere latentie, waardoor je een grote hoeveelheid gegevens met minimale vertraging kunt verwerken. Volgens het prestatiebenchmarkrapport van ScyllaDB is hun latentie van 99,9 percentiel tot 11x beter dan die van Cassandra op AWS EC2 bare metal. Dus dit soort prestaties moet kosten met zich meebrengen, toch? Dat is zo, maar ze beweren in dit rapport dat het een 2,5x kostenbesparing is in vergelijking met het runnen van Cassandra, omdat ze deze prestatie kunnen bereiken met slechts 10% van de knooppunten.

Er zijn tientallen kwaliteitsartikelen over ScyllaDB vs. Cassandra, dus we houden hier kort op, zodat we tot het echte doel van dit artikel kunnen komen, namelijk het opsplitsen van de ScyllaDB-gebruikersgegevens .

ScyllaDB Cloud vs. ScyllaDB On-Premises

ScyllaDB kan zowel in de openbare cloud als on-premises worden uitgevoerd. ScyllaDB wordt zelfs het meest ingezet in zowel openbare cloud- als on-premises omgevingen binnen één organisatie. De 44% van de ScyllaDB-implementaties die gebruik maken van zowel cloud- als on-premise computing, kan ofwel een hybride cloudomgeving zijn die zowel voor een specifieke applicatie gebruikt, ofwel deze omgevingen afzonderlijk gebruiken om verschillende applicaties te beheren.

ScyllaDB-implementaties op locatie en ScyllaDB-cloudimplementaties waren dood, zelfs met 28% elk. U kunt zowel de gratis open source ScyllaDB als ScyllaDB Enterprise in de cloud of op locatie gebruiken, en de ScyllaDB Enterprise-licentie begint bij $ 28,8k/jaar voor in totaal 48 cores.

Wat is de beste manier om #ScyllaDB te implementeren? Cloud vs. On-PremiseKlik om te tweeten

Meest populaire cloudproviders voor ScyllaDB

Met 28% van het ScyllaDB-cluster uitsluitend in de cloud geïmplementeerd en 72% in een bepaalde hoedanigheid in de cloud, waren we geïnteresseerd om te zien welke cloudproviders het populairst zijn voor ScyllaDB-workloads .

#1. AWS

We ontdekten dat 39,1% van alle ScyllaDB-cloudimplementaties op AWS draaien van onze deelnemers aan het onderzoek. Hoewel we verwachtten dat AWS de nummer 1 cloudprovider voor ScyllaDB zou zijn, was het percentage aanzienlijk lager dan de antwoorden van alle typen clouddatabases in dit onderzoek, waaruit bleek dat 55% op AWS implementeerde. Dit aantal is meer in lijn met ons recente 2019 Open Source Database Trends Report, waarin 56,9% van de cloudimplementaties werd gerapporteerd op AWS. Dit kan zijn omdat AWS ScyllaDB niet ondersteunt via hun Relational Database Services (RDS), dus we zouden kunnen veronderstellen dat naarmate meer organisaties hun gegevens naar ScyllaDB blijven migreren, AWS een afname van hun klantenbestand kan ervaren.

#2. Google Cloud

Google Cloud Platform (GCP) was de op één na populairste cloudprovider voor ScyllaDB, goed voor 30,4% van alle cloudimplementaties. Google Cloud biedt wel hun eigen brede kolomopslag en big data-database genaamd Bigtable, die eigenlijk op nummer 11 staat, één onder ScyllaDB op nummer 110 op DB-Engines. De lage kosten en hoge prestatiemogelijkheden van ScyllaDB maken het een aantrekkelijke optie voor GCP-gebruikers, vooral omdat het open source is in vergelijking met Bigtable, dat alleen commercieel beschikbaar is op GCP.

#3. Azuurblauw

Azure volgde op de derde plaats, goed voor 17,4% van alle ScyllaDB-implementaties in de cloud van onze enquêterespondenten. Azure is een aantrekkelijke cloudprovider voor organisaties die gebruikmaken van de Microsoft-servicesuite.

Welke cloudprovider is het meest populair voor #ScyllaDB? AWS vs. Azure vs. GCPKlik om te tweeten

De resterende 13,0% van de ScyllaDB-cloudimplementaties bleek te draaien op DigitalOcean, Alibaba en Tencent cloud computing-services.

Hun beheerde service, Scylla Cloud, is momenteel alleen beschikbaar op AWS en je moet de ScyllaDB Enterprise-versie gebruiken om hun DBaaS te benutten. Scylla Cloud is van plan om in de toekomst ondersteuning voor GCP en Azure toe te voegen, maar met slechts 39% rapportage over AWS kunnen we aannemen dat meer dan 60% van de ScyllaDB-implementaties zelfbeheerd wordt in de cloud.

Databases die het meest worden gebruikt met ScyllaDB

Zoals we ook hebben gevonden in het Open Source Database Report van 2019, maken organisaties gemiddeld gebruik van 3,1 verschillende databasetypen. Maar in dit onderzoek rapporteerden organisaties die ScyllaDB gebruiken slechts 2,3 verschillende databasetypes, een vermindering van 26% vergeleken met onze resultaten van alle open source databasegebruikers. We ontdekten ook dat 39% van de ScyllaDB-implementaties alleen ScyllaDB gebruiken en geen gebruik maken van een ander databasetype in hun applicaties.

Dus welke databases worden het meest gebruikt in combinatie met ScyllaDB? We ontdekten dat ScyllaDB-gebruikers ook 20% van de tijd SQL-databases MySQL en 20% van de tijd PostgreSQL gebruiken. De op één na meest gebruikte database met ScyllaDB was Cassandra, vertegenwoordigd in 16% van de implementaties, en we kunnen aannemen dat dit wordt gedaan door organisaties die ScyllaDB testen als een alternatief voor Cassandra in hun applicaties, aangezien beide databasetypen brede kolomarchieven zijn.

MongoDB was de vierde meest gebruikte database met ScyllaDB met 12%. Redis en Elasticsearch stonden op de vijfde plaats, die beide 8% van de tijd gebruikmaken van ScyllaDB-implementaties.

We ontdekten ook dat 20% van de Scylla-implementaties gebruikmaakt van andere databasetypen, waaronder Oracle, Aerospike, Kafka (die nu wordt getransformeerd in een database voor het streamen van gebeurtenissen), DB2 en Tarantool.

Meest tijdrovende ScyllaDB-beheertaken

We weten dat ScyllaDB enorm krachtig is, maar hoe gemakkelijk is het om te gebruiken? We vroegen ScyllaDB-gebruikers wat hun meest tijdrovende beheertaak was en hoorden van 28% dat Scylla Repair de langste beheertaak was. Scylla Repair is een synchronisatieproces dat op de achtergrond wordt uitgevoerd om ervoor te zorgen dat alle replica's uiteindelijk dezelfde gegevens bevatten. Gebruikers moeten de nodetool-reparatieopdracht regelmatig uitvoeren, aangezien er geen manier is om reparaties te automatiseren in de ScyllaDB open source- of ScyllaDB Enterprise-versies, maar u kunt een reparatieschema instellen via Scylla Manager.

ScyllaDB trage query-analyse bond ScyllaDB-back-ups en herstel op de tweede plaats met elk 14% voor de meest tijdrovende beheertaak. Het lijkt er niet op dat ScyllaDB momenteel een query-analyser beschikbaar heeft om query's te identificeren die moeten worden geoptimaliseerd, maar gebruikers kunnen hun Slow Query Logging gebruiken om te zien welke query's de langste responstijd hebben. ScyllaDB-back-ups kunnen ook niet worden geautomatiseerd via de open source- en enterprise-versies, maar ze stellen dat terugkerende back-ups beschikbaar zullen zijn in toekomstige edities van Scylla Manager. Er is ook geen geautomatiseerde manier om een ​​ScyllaDB-back-up te herstellen, omdat deze in alle versies handmatig moet worden uitgevoerd.

10% van de ScyllaDB-gebruikers meldde dat het toevoegen, verwijderen of vervangen van nodes de meest tijdrovende taak was, en kwam op de vierde plaats. Dit zijn handmatige processen die behoorlijk wat tijd in beslag kunnen nemen, vooral als je te maken hebt met een grote gegevensomvang. Het toevoegen van knoop punten wordt gebruikt om een ​​implementatie uit te schalen, terwijl het verwijderen ervan uw implementatie naar beneden schaalt. Knooppunten moeten worden vervangen als ze niet beschikbaar zijn of niet meer werken, hoewel een cluster nog steeds beschikbaar kan zijn als er meer dan één knooppunt niet actief is.

Gedeeld voor de vijfde plaats met 7% waren upgrades en probleemoplossing. ScyllaDB Enterprise en open source vereisen beide uitgebreide stappen om een ​​cluster te upgraden. De aanbevolen methoden zijn via een voortschrijdende procedure, dus er is geen uitvaltijd, maar dit is een handmatig proces, dus de gebruiker moet één knooppunt tegelijk uitschakelen, alle upgradestappen uitvoeren, het knooppunt opnieuw opstarten en valideren voordat hij verder gaat met het uitvoeren van de dezelfde stappen voor de resterende knooppunten in het cluster. Tijdrovend inderdaad, maar gelukkig geen dagelijkse bezigheid! Het oplossen van problemen is natuurlijk een diep konijnenhol om in te duiken, maar ScyllaDB Enterprise-klanten krijgen 24/7 missiekritieke ondersteuning, en open source-gebruikers hebben toegang tot een overvloed aan bronnen, waaronder documentatie, mailinglijsten, Scylla University en een slap kanaal voor gebruikers discussies.

Wat is de meest tijdrovende #ScyllaDB-beheertaak? Klik om te tweeten

De resterende 21% van de tijdrovende taken die door ScyllaDB-gebruikers worden gerapporteerd, omvatten monitoring, migraties, provisioning, balancering van shards, verdichting en patching.

Hoe verhouden deze resultaten zich tot uw ScyllaDB-implementaties? Bent u op zoek naar een manier om deze tijdrovende beheertaken te automatiseren? Hoewel we vandaag MySQL, PostgreSQL, Redis™* en MongoDB® Database ondersteunen, zijn we altijd op zoek naar feedback over welke database we als volgende ondersteuning moeten toevoegen via onze DBaaS-abonnementen. Laat het ons weten in de reacties of op Twitter op @scalegridio als u op zoek bent naar een eenvoudigere manier om uw ScyllaDB-clusters in de cloud of on-premises te beheren!


  1. Is gelijk aan(=) vs. LIKE voor datumgegevenstype

  2. Waarom u de gebruikerstoegang voor uw database moet beperken

  3. MySQL-foutcode:1175 tijdens UPDATE in MySQL Workbench

  4. customer.pk_name samenvoegen met transacties.fk_name vs. klant.pk_id [serienummer] samenvoegen met transacties.fk_id [geheel getal]