ScyllaDB andmebaasi arendajad teatasid projekti üleminekust patenteeritud litsentsile, mis piirab kasutusvaldkonda. ScyllaDB versioon 6.2.x saab olema viimane, mis on saadaval AGPL litsentsi all. Huvi korral võivad soovijad luua forki ja jätkata ScyllaDB koodibaasi arendamist vana litsentsi alusel.
Varem järgnes ScyllaDB projekt Open Core arendusmudelile, kus toote põhiosa arendatakse vabade litsentside alusel, samas kui laiendatud funktsioonid on suletud ja kergesti kättesaadavad vaid kommertslicentsi omanikutele. Uue litsentsimisskeemi kohaselt lõpetatakse ScyllaDB OSS avatud versiooni avaldamine ning varasemalt suletud kommertstoode ScyllaDB Enterprise hakkab levima koos allika koodiga patenteeritud litsentsi all. ScyllaDB OSS asemel saavad kasutajad tasuta kasutada täisversiooni ScyllaDB Enterprise, kui nad täidavad teatud tingimusi.
Uus litsents keelab tarkvara kasutamise ScyllaDB arendajate toodete ja teenustega konkurentsiks, samuti 'rakendusena teenusena' (SaaS, software-as-a-service) ja kommertssüsteemide 'andmebaasina teenusena' (dBaaS, database-as-a-service) loomiseks. Litsents ei piira tasuta toote kasutamist ärilistes eesmärkides ja töökeskkondades, kuid tingimusel, et kogu andmete salvestusruum klastris ei ületa 10TB ja andmete töötlemiseks kasutatakse mitte rohkem kui 50 VCPU-d. Kasutajatele, kes ei vasta esitatud kriteeriumidele, pakutakse võimalust osta kommertslicents.
Näiteks võib tasuta kasutada ScyllaDB kolme sõlmega klastris, kui igas sõlmes on 16 loogilist CPU tuuma ja 3TB suurune salvestusruum. Selline konfiguratsioon suudab töödelda 100–200 tuhat operatsiooni sekundis. ScyllaDB levitamine ja koodimuudatuste tegemine on lubatud tingimusel, et need tehakse sama litsentsi all, esitades kõikide muudatuste täieliku loendi ja näidates originaala autoriteavet.
ScyllaDB levitamise poliitika muutmise põhjuseks oli soov ühtlustada ja optimeerida konkurentsivõimeliste kaubanduslike ja avatud versioonide arendust, mille eraldi toetamine tekitas keerukusi, nõudis palju jõupingutusi ja kasutas ressursse. Samuti arenes ScyllaDB koodibaas keeruka sisearhitektuuri tõttu ainult ettevõtte töötajate toel ning avatud projektil ei olnud kunagi väliseid osalejaid, kes oleksid oma muudatusi edastanud. Murranguliseks hetkeks sai Raft konsensusalgoritmi, tabelite ja S3 API sisseehitatava toe rakendamine, mille tulemusena viidi paljud abifunktsioonid välisest rakendustest põhise andmebaasi.
Lõpuks otsustati ühendada avatud ja kaubanduslikud tooted, mis ühtpidi lihtsustab arendust, ent teiselt poolt laiendab tasuta versiooni võimalusi. Näiteks saavad tasuta piiridesse mahtuvad kasutajad juurdepääsu sellistele funktsioonidele nagu LDAPi toetus, PGO-optimeerimine (tekstide latentsuse vähendamine 33% ja tootlikkuse tõus kuni 50%), failitasemel voogedastusrežiim (sõlmede lisamise/eemaldamise kiirus kuni 30 korda), oma prioriteetide seadmine erinevatele koormustele, RPC-traffiku tihendamise tugi sõlmede vahel ZSTD algoritmi abil, parendatud andmete pakkimise strateegia (salvestusruumi vähendamine kuni 35%), krüpteerimise tugi, Kubernetes operaator ScyllaDB jaoks ja pikaajaline versioonitoe tsükkel.
ScyllaDB võimaldab luua jaotatud, skaleeritavaid ja riketevastaseid noSQL-süsteeme, mis salvestavad andmeid assotsiatiivsete massiividena (hash'idena) mitme taseme süvenemisega. Struktureeritud päringute jaoks võib kasutada SQL-sarnast keelt CQL (Cassandra Query Language). ScyllaDB alusel töökindlad klastrid tagavad lineaarse skaleeritavuse taseme, kus jõudlus sõltub otseselt protsessorituumade arvust. Andmebaasi sisestatud andmed replikatakse automaatselt mitmele sõlmele ning sõlme rikke korral võtavad tema funktsioonid üle teised sõlmed. Sõlmede lisamine, värskendamine ja eemaldamine klastris toimub töö katkestamata ning ilma teiste sõlmede uuesti konfigureerimiseta.
Andmebaas ScyllaDB asutati kümme aastat tagasi Avi Kiviti ja Dor Laori poolt, kes on varem loonud hüperviisori KVM ja operatsioonisüsteemi OSv. Projekt loodi katseks kirjutada Apache Cassandra Java keelest ümber C++ keelde, et saavutada suurem jõudlus. Andmebaas on API tasandil ühilduv Apache Cassandra ja Amazon DynamoDB-ga. Testides näitab ScyllaDB võrreldes Apache Cassandra'ga läbilaskevõime tõusu 2–5 korda. Täheldatakse, et Apache Cassandra klastri saab asendada ScyllaDB klastri, millel on 10 korda vähem sõlmi, kuid vaatamata väiksemale sõlmede arvule ületab see jõudluses 42%.
Mis puutub ScyllaDB teiste toodete, siis asünkroonsete serverirakenduste arendamise raamistik Seastar, draiverid ja Kubernetes'i operaator jätkavad tarnimist Apache 2.0 litsentsi alusel. Scylla Manager klastri haldamise platvorm, mis varem jagati omandiõigusega litsentsi alusel, on muudetud Apache 2.0 litsentsile. Suletud territoriaalselt jaotatud Kubernetes'i operaator on ühendatud avatud Kubernetes'i operaatoriga ja tarnitakse Apache 2.0 litsentsi alusel.
Allikas: opennet.ru
