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

Разработчиците на базата данни 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). Лицензията не ограничава използването на безплатния продукт за търговски цели и в работни среди, но при условие, че общият размер на хранилището на всички възли в клъстера не надвишава 10ТБ, а за обработка на данни се използват не повече от 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 и операционната система OSv. Проектът е създаден с цел да презапише 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