De ûntwikkelders fan 'e ScyllaDB DBMS kundige de oerdracht fan it projekt oan nei in proprietêre lisinsje dy't syn omfang beheint. De ScyllaDB 6.2.x-tûke sil de lêste wêze dy't beskikber is ûnder de AGPL-lisinsje. As jo wolle, kinne ynteressearre partijen in gabel meitsje en trochgean mei it ûntwikkeljen fan de ScyllaDB-koadebase ûnder de âlde lisinsje.
Earder folge it ScyllaDB-projekt oan it Open Core-ûntwikkelingsmodel, wêryn it basisdiel fan it produkt wurdt ûntwikkele ûnder in fergese lisinsje, en útwreide funksjonaliteit is sluten en allinich beskikber foar kommersjele lisinsjehâlders. Yn oerienstimming mei it nije lisinsjeskema sil de publikaasje fan 'e iepen edysje fan ScyllaDB OSS wurde stopset, en it earder sletten kommersjele produkt ScyllaDB Enterprise sil begjinne te fersprieden mei boarnekoade ûnder in proprietêre lisinsje. Ynstee fan ScyllaDB OSS kinne brûkers de folsleine ferzje fan ScyllaDB Enterprise fergees brûke, ûnder foarbehâld fan bepaalde betingsten.
De nije lisinsje ferbiedt it gebrûk fan software om te konkurrearjen mei de produkten en tsjinsten fan ScyllaDB-ûntwikkelders, en ek om cloud-basearre applikaasje-as-a-tsjinst (SaaS, software-as-a-service) systemen en kommersjele database- as-a-service systemen (dBaaS, database-as -as-service). De lisinsje beheint it gebrûk fan it fergese produkt net foar kommersjele doelen en yn produksjeomjouwings, mar op betingst dat de totale opslachgrutte op alle klusterknooppunten net mear as 10TB is, en net mear as 50 VCPU's wurde brûkt foar gegevensferwurking. Brûkers dy't net foldogge oan de opjûne kritearia wurdt frege om in kommersjele lisinsje te keapjen.
Jo kinne bygelyks ScyllaDB fergees brûke op in kluster fan trije knooppunten, as elke knooppunt 16 logyske CPU-kearnen en 3TB skiifopslach befettet. Dizze konfiguraasje is yn steat om 100-200 tûzen operaasjes per sekonde te ferwurkjen. Werferdieling fan ScyllaDB en feroarings oan 'e koade binne tastien op betingst dat it wurdt ferspraat ûnder deselde lisinsje, in folsleine list fan alle feroarings wurdt fermeld, en ynformaasje oer de oarspronklike skriuwer fan it produkt wurdt levere.
De reden foar de feroaring yn it ScyllaDB-distribúsjebelied wie de winsk om de ûntwikkeling fan konkurrearjende kommersjele en iepenboarne-opsjes te ferienigjen en te optimalisearjen, wêrfan it aparte ûnderhâld swierrichheden makke, in protte ynspannings koste en fergriemde boarnen. Tagelyk, troch de kompleksiteit fan 'e ynterne arsjitektuer, waard de ScyllaDB-koadebasis eksklusyf ûntwikkele troch de meiwurkers fan it bedriuw en it iepen projekt hie noait dielnimmers fan tredden dy't har wizigingen yntsjinje. It kearpunt wie de ymplemintaasje fan it Raft-konsensusalgoritme, tabellen en ynboude stipe foar de S3 API, wêrtroch in protte helpfunksjes waarden oerbrocht fan eksterne applikaasjes nei de haadstruktuer fan 'e DBMS.
Uteinlik waard besletten om iepen en kommersjele produkten te kombinearjen, dy't, oan 'e iene kant, de ûntwikkeling soe ferienfâldigje, en oan' e oare de mooglikheden fan 'e fergese ferzje útwreidzje. Bygelyks, brûkers binnen de frije grinzen sille tagong hawwe ta funksjes lykas LDAP-stipe, PGO-optimalisaasje (fermindering fan tekstlatinsje mei 33% en ferheging fan prestaasjes mei maksimaal 50%), streamingmodus op bestânnivo (fersnellert tafoegjen / ferwiderjen fan knopen omheech oant 30 kear), jo eigen prioriteiten ynstelle foar ferskate loads, stipe foar kompresje fan RPC-ferkear tusken knooppunten mei it ZSTD-algoritme, ferbettere strategy foar gegevensferpakking (reduksje opslach grutte oant 35%), fersifering stipe, Kubernetes operator foar ScyllaDB, lange release stipe syklus.
ScyllaDB lit jo ferdielde, skalberbere en fouttolerante NoSQL-systemen meitsje dy't gegevens opslaan yn 'e foarm fan assosjative arrays (hashes) mei ferskate nivo's fan nêst. Foar strukturearre queries kin de SQL-like taal CQL (Cassandra Query Language) brûkt wurde. Klusters basearre op ScyllaDB jouwe in lineêr nivo fan skalberens, wêryn prestaasjes direkt ôfhinklik binne fan it oantal prosessorkearnen. Gegevens pleatst yn de databank wurdt automatysk replicated nei ferskate knooppunten, en as in knooppunt mislearret, syn funksjes wurde oppakt op 'e flecht troch oare knopen. It tafoegjen, bywurkjen en wiskjen fan knopen yn it kluster wurdt dien sûnder wurk te stopjen en sûnder oare knopen opnij te konfigurearjen.
ScyllaDB waard tsien jier lyn oprjochte troch Avi Kiviti en Dor Laor, dy't ek de hypervisor makke hawwe. KVM en it OSv-bestjoeringssysteem. It projekt waard makke as in besykjen om Apache Cassandra fan Java nei C++ te herskriuwen om hegere prestaasjes te berikken. It DBMS is API-kompatibel mei Apache Cassandra en Amazon DynamoDB. Yn testen lit ScyllaDB in 2-5x trochfierferheging sjen yn ferliking mei Apache Cassandra. Der wurdt opmurken dat in op Apache Cassandra basearre kluster ferfongen wurde kin troch in ScyllaDB-kluster, dat 10 kear minder knooppunten befettet, mar nettsjinsteande it lytsere oantal knooppunten presteart it noch altyd 42% better as Apache Cassandra.
Wat de oare produkten fan ScyllaDB oanbelanget, sille it Seastar asynchronous server-applikaasjeûntwikkelingskader, bestjoerders en Kubernetes-operator trochgean wurde levere ûnder de Apache 2.0-lisinsje. It Scylla Manager-klusterbehearplatfoarm, earder ferspraat ûnder in proprietêre lisinsje, is oerdroegen oan de Apache 2.0-lisinsje. De proprietêre ymplemintaasje fan 'e Kubernetes-ferdielde operator wurdt gearfoege mei de iepen Kubernetes-operator en sil ferspraat wurde ûnder de Apache 2.0-lisinsje.
Boarne: opennet.ru
