СУБД ScyllaDB премина на собствена лицензия

Разработчиците на СУБД ScyllaDB обявиха за прехвърлянето на проекта на собствен лиценз, който ограничава обхвата на приложение. Версията ScyllaDB 6.2.x ще бъде последната, достъпна под лиценза AGPL. При желание заинтересованите лица могат да създадат форк и да продължат развитието на кодовата база ScyllaDB под старата лицензия.

По-рано проектът ScyllaDB следваше модела на разработка Open Core, при който основната част на продукта се развива под свободна лицензия, а разширената функционалност е затворена и се предоставя само на притежателите на търговска лицензия. В съответствие с новата схема на лицензиране, публикуването на отворената версия ScyllaDB OSS ще бъде прекратено, а преди това затвореният търговски продукт ScyllaDB Enterprise ще започне да се разпространява с предоставяне на изходния код под собствен лиценз. Вместо ScyllaDB OSS потребителите ще могат безплатно да използват пълната версия на ScyllaDB Enterprise при изпълнението на определени условия.

Новият лиценз забранява използването на софтуера за конкурентни дейности с продуктите и услугите на разработчиците на ScyllaDB, а също така за създаване на облачни системи "приложение като услуга" (SaaS, software-as-a-service) и търговски системи "БД като услуга" (dBaaS, database-as-a-service). Лицензът не ограничава използването на безплатния продукт за търговски цели и в работни среди, но при условие, че общият размер на хранилището на всички възли в клъстера не надвишава 10TB, а за обработка на данни не се използват повече от 50 VCPU. На потребителите, които не отговарят на заявените критерии, им се предлага да закупят търговска лицензия.

Например, безплатно може да се използва ScyllaDB на клъстер от три възела, ако всеки възел съдържа 16 логически ядра на CPU и дисково хранилище с размер 3TB. Подобна конфигурация е способна да обработва 100-200 хиляди операции в секунда. Разпространението на ScyllaDB и направата на промени в кода е разрешено, при условие че се предоставят под същата лицензия, посочва се пълният списък на всички промени и се уточнява информацията за оригиналния автор на продукта.

Причината за промяната в политиката на разпространение на ScyllaDB е желанието да се уеднакви и оптимизира разработката на конкурентни комерсиални и отворени версии, чийто отделен поддържащ ги затруднява и изисква много ресурси. Поради сложността на вътрешната архитектура, кодовата база на ScyllaDB се развива само от служителите на компанията и отвореният проект не е имал външни участници, които да предоставят своите промени. Преломният момент беше работата по реализацията на алгоритъма за консенсус Raft, таблици и вградена поддръжка на API S3, в резултат на което много помощни функции бяха прехвърлени от външни приложения в основната СУБД.

В крайна сметка беше решено да се обединят отворените и комерсиалните продукти, което от една страна ще опрости разработката, а от друга ще разшири възможностите на безплатната версия. Например, потребителите, които се вписват в безплатните лимити, ще получат достъп до функции, като поддръжка на LDAP, PGO-оптимизации (намаляване на закъсненията в текстовете с 33% и увеличаване на производителността до 50%), режим на поточно предаване на ниво файлове (ускорение на добавянето/премахването на възли до 30 пъти), установяване на собствени приоритети за различни натоварвания, поддръжка на компресия на RPC-трафика между възлите с алгоритъма ZSTD, подобрена стратегия за опаковане на данни (намаляване на размера на хранилището с до 35%), поддръжка на криптиране, Kubernetes оператор за ScyllaDB и дълъг цикъл на поддръжка на релизи.

ScyllaDB позволява създаването на разпределени, мащабируеми и устойчиви на отказ noSQL системи, които съхраняват данни под формата на асоциативни масиви (хешове) с няколко нива на вложеност. За структурирани запитвания може да се използва SQL-подобен език CQL (Cassandra Query Language). Клъстерите на базата на ScyllaDB осигуряват линейно ниво на мащабируемост, при което производителността зависи пряко от броя на процесорните ядра. Данните, поставени в БД, автоматично се репликират на няколко възли, а при срив на възел, функциите му се поемат в движение от други възли. Добавянето, обновяването и премахването на възли в клъстера се извършва без спиране на работата и без пренастройване на другите възли.

СУБД ScyllaDB е основана преди десет години от Ави Кивити (Avi Kiviti) и Дором Лаором (Dor Laor), които в миналото са създали хипервизор. KVM Този проект е създаден с цел да пренапише Apache Cassandra от Java на C++, за да се постигне по-висока производителност. СУБД е съвместима на ниво API с Apache Cassandra и Amazon DynamoDB. В проведените тестове ScyllaDB демонстрира увеличение на пропускната способност от 2 до 5 пъти в сравнение с Apache Cassandra. Посочва се, че клъстер на база Apache Cassandra може да бъде заменен с клъстер ScyllaDB, съдържащ в 10 пъти по-малко възли, но въпреки по-малкия брой възли, той надминава производителността с 42%.

Що се отнася до другите продукти на компанията ScyllaDB, фреймворкът за разработка на асинхронни сървърни приложения Seastar, драйверите и операторът Kubernetes ще продължат да се разпространяват под лицензия Apache 2.0. Платформата за управление на клъстери Scylla Manager, която преди се разпространяваше под собствена лицензионна схема, е преместена на лицензия Apache 2.0. Затворената реализация на териториално разпределения оператор Kubernetes е обединена с отворения оператор Kubernetes и ще се предлага под лицензия Apache 2.0.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster