DBMS ScyllaDB kaloi nga AGPL në licencë proprietare

Zhvilluesit e DBMS ScyllaDB njoftuan se projekti do të kalojë në një licencë pronësore që kufizon fushën e aplikimit. Dera ScyllaDB 6.2.x do të jetë e fundit e disponueshme nën licencën AGPL. Nëse dëshirojnë, palët e interesuara mund të krijojnë një fork dhe të vazhdojnë zhvillimin e bazës së kodit ScyllaDB nën licencën e vjetër.

Më parë, projekti ScyllaDB ndiqte një model zhvillimi Open Core, ku pjesa bazë e produktit zhvillohet nën një licencë të lirë, ndërsa funksionaliteti i zgjeruar është i mbyllur dhe ofrohet vetëm për mbajtësit e licencës komerciale. Sipas skemës së re të licencimit, publikimi i edicionit të hapur ScyllaDB OSS do të ndalojë, dhe produkti komercial i mbyllur ScyllaDB Enterprise do të fillojë të shpërndahet me ofrimin e kodit burimor nën një licencë pronësore. Në vend të ScyllaDB OSS, përdoruesit do të kenë mundësi të përdorin versionin e plotë të ScyllaDB Enterprise falas në përmbushje të disa kushteve.

Licenca e re ndalon përdorimin e softuerit për të konkurruar me produktet dhe shërbimet e zhvilluesve të ScyllaDB, si dhe për të krijuar sisteme të reshaktuara «aplikacion si shërbim» (SaaS, software-as-a-service) dhe sisteme komerciale «DB si shërbim» (dBaaS, database-as-a-service). Licenca nuk kufizon përdorimin e produktit falas për qëllime komerciale dhe në mjediset e punës, por me kushtin që shuma e kapacitetit të depozitimit në të gjitha nyjat e klastrit të mos kalojë 10 TB dhe për përpunimin e të dhënave të përdoren jo më shumë se 50 VCPU. Përdoruesve që nuk plotësojnë kriteret e shpallura u ofrohet të blejnë një licencë komerciale.

Për shembull, ScyllaDB mund të përdoret falas në një klastri me tre nyje, nëse çdo nyje përmban 16 bërthama logjike CPU dhe ruajtje të disqeve me përmasë 3TB. Kjo konfigurim është në gjendje të përpunojë 100-200 mijë operacione në sekondë. Shpërndarja e ScyllaDB dhe bërja e ndryshimeve në kod lejohet me kusht që të ofrohet nën të njëjtën licencë, lista e plotë e të gjitha ndryshimeve të listahet dhe informacioni në lidhje me autorin origjinal të produktit të jepet.

Shkaku i ndryshimit të politikës së shpërndarjes së ScyllaDB ishte dëshira për të unifikuar dhe optimizuar zhvillimin e varianteve konkurruese të komerciale dhe të hapura, mirëmbajtja e veçantë e të cilave krijonte vështirësi dhe shpenzonte shumë energji dhe burime. Për më tepër, për shkak të kompleksitetit të arkitekturës brendshme, kodi i ScyllaDB u zhvillua ekskluzivisht nga stafi i kompanisë, duke mos pasur asnjë pjesëmarrës të jashtëm që t'i përcillte ndryshimet e tij projektit të hapur. Një moment kyç ishte puna për implementimin e algoritmit të konsensusit Raft, tabelave dhe mbështetjes së integruar të API S3, si rezultat i së cilës shumë funksione ndihmëse u transferuan nga aplikacione të jashtme në bërthamën e DBMS-it.

Përfundimisht u vendos që të bashkohen produktet e hapura dhe ato komerciale, gjë që nga njëra anë do të thjeshtësojë zhvillimin, dhe nga ana tjetër do të zgjasë mundësitë e versionit falas. Për shembull, përdoruesit që janë brenda kufijve falas do të kenë akses në mundësi si mbështetje LDAP, optimizime PGO (reduktimi i vonesave në tekste deri në 33% dhe rritja e performancës deri në 50%), modalitetin e transmetimit në nivelin e skedarëve (shpejtimi i shtimit/zhbllokimit të nyjeve deri në 30 herë), vendosja e prioriteteve për ngarkesa të ndryshme, mbështetje për kompresimin e trafikut RPC midis nyjeve duke përdorur algoritmin ZSTD, strategji e përmirësuar e paketimit të të dhënave (reduktimi i madhësisë së ruajtjes deri në 35%), mbështetje për enkriptim, operator Kubernetes për ScyllaDB, dhe një cikël të gjatë mbështetje për lëshimet.

ScyllaDB lejon krijimin e sistemeve noSQL të shpërndarë, të shkallueshme dhe të qëndrueshme, që ruajnë të dhëna në formën e array-ve asociativë (hash-eve) me disa nivele thellësie. Për kërkesat e strukturuara mund të përdoret një gjuhë SQL-ngjashme, CQL (Cassandra Query Language). Klasteret në bazë të ScyllaDB ofrojnë një nivel linear të shkallueshmërisë, ku performanca varet drejtpërdrejt nga numri i bërthamave të procesorit. Të dhënat e vendosura në DB automatizohen dhe replikohen në disa nyje, dhe në rast të dështimit të një nyje, funksionet e saj kapen menjëherë nga nyje të tjera. Shtimi, përditësimi dhe fshirja e nyjeve në klaster bëhet pa ndalur punën dhe pa ri-konfiguruar nyjet e tjera.

Sistemi i Menaxhimit të të Dhënave ScyllaDB u themelua dhjetë vite më parë nga Avi Kiviti dhe Dor Laor, të cilët më parë krijuan hipervizorin. KVM Dhe sistemin operativ OSv. Projekti u krijua si një përpjekje për të riprogramuar Apache Cassandra nga gjuha Java në C++ për të arritur performancë më të lartë. Sistemi i Menaxhimit të të Dhënave është i përshtatshëm në nivelin e API me Apache Cassandra dhe Amazon DynamoDB. Në testet e kryera, ScyllaDB tregon një rritje të kapacitetit nga 2 deri në 5 herë krahasuar me Apache Cassandra. Vërehet se një grumbull bazuar në Apache Cassandra mund të zëvendësohet me një grumbull ScyllaDB, i cili përmban 10 herë më pak node, por, pavarësisht numrit më të vogël të node-ve, arrin një performancë më të lartë me 42%.

Sa i përket produkteve të tjera të kompanisë ScyllaDB, frameworku për zhvillimin e aplikacioneve serverike asinkrone Seastar, driverët dhe operatori Kubernetes do të vazhdojnë të ofrohen nën licencën Apache 2.0. Platforma e menaxhimit të grumbullit Scylla Manager, e cila më parë ishte shpërndarë nën një licencë pronësore, tani është kaluar në licencën Apache 2.0. Implementimi i mbyllur i operatorit Kubernetes të shpërndarë gjeografikisht është kombinuar me operatorin e hapur Kubernetes dhe do të ofrohet nën licencën Apache 2.0.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster