Rilaxx ta' FerretDB 0.3, implimentazzjoni ta' MongoDB ibbażata fuq id-DBMS PostgreSQL

Опубликован выпуск проекта 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.

MongoDB jokkupa niċċa bejn sistemi veloċi u skalabbli li joperaw fuq data f'format ta 'ċavetta/valur, u DBMSs relazzjonali li huma funzjonali u faċli biex jiġu fformulati mistoqsijiet. MongoDB jappoġġa l-ħażna ta 'dokumenti f'format bħal JSON, għandu lingwa pjuttost flessibbli għall-ġenerazzjoni ta' mistoqsijiet, jista 'joħloq indiċi għal diversi attributi maħżuna, jipprovdi b'mod effiċjenti ħażna ta' oġġetti binarji kbar, jappoġġja l-illoggjar ta 'operazzjonijiet għall-bidla u żżid id-data fid-database, jista' taħdem skond il-paradigma Mappa/Tnaqqas, tappoġġja r-replikazzjoni u l-kostruzzjoni ta 'konfigurazzjonijiet tolleranti għall-ħsarat.

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

Sors: opennet.ru

Żid kumment