Издање ФерретДБ 0.3, имплементација МонгоДБ заснована на ПостгреСКЛ ДБМС

Опубликован выпуск проекта FerretDB 0.3, позволяющего заменить документо-ориентированную СУБД MongoDB на PostgreSQL без внесения изменений в код приложений. FerretDB реализован как прокси-сервер, транслирующий обращения к MongoDB в SQL-запросы к PostgreSQL, что позволяет использовать PostgreSQL в качестве фактического хранилища. Код написан на языке Go и распространяется под лицензией Apache 2.0.

Потребность миграции может возникнуть в связи с переходом MongoDB на несвободную лицензию SSPL, которая основана на лицензии AGPLv3, но не является открытой, так как содержит дискриминирующее требование поставки под лицензией SSPL не только кода самого приложения, но и исходных текстов всех компонентов, вовлечённых в предоставление облачного сервиса.

Основной целевой аудиторией FerretDB являются пользователи, которые не применяют в своих приложениях расширенные возможности MongoDB, но желают использовать полностью открытый программный стек. На текущем этапе развития FerretDB пока поддерживает лишь часть возможностей MongoDB, наиболее часто применяемых в типовых приложениях. В будущем планируют достигнуть полной совместимости с драйверами для MongoDB и предоставить возможность использовать FerretDB в качестве прозрачной замены MongoDB.

МонгоДБ заузима нишу између брзих и скалабилних система који раде на подацима у формату кључ/вредност и релационих ДБМС-ова који су функционални и лаки за формулисање упита. МонгоДБ подржава складиштење докумената у ЈСОН формату, има прилично флексибилан језик за генерисање упита, може да креира индексе за различите ускладиштене атрибуте, ефикасно обезбеђује складиштење великих бинарних објеката, подржава евидентирање операција за промену и додавање података у базу података, може ради у складу са парадигмом Мап/Редуце, ​​подржава репликацију и изградњу конфигурација отпорних на грешке.

В выпуске FerretDB 0.3 реализована команда findAndModify изменяющая документ, но возвращающая его первоначальную версию. Реализованы операторы обновления полей — $inc и $set. Добавлена поддержка сортировки скалярных типов данных.

Извор: опеннет.ру

Додај коментар