PostgreSQL DBMS'yi temel alan bir MongoDB uygulaması olan FerretDB 0.3'ün sürümü

Опубликован выпуск проекта 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, anahtar/değer biçimindeki veriler üzerinde çalışan hızlı ve ölçeklenebilir sistemler ile işlevsel ve sorguları formüle etmesi kolay ilişkisel DBMS'ler arasında bir yer tutar. MongoDB, belgelerin JSON benzeri bir formatta saklanmasını destekler, sorgu oluşturmak için oldukça esnek bir dile sahiptir, çeşitli depolanan nitelikler için dizinler oluşturabilir, büyük ikili nesnelerin verimli bir şekilde depolanmasını sağlar, veritabanına veri ekleme ve değiştirme işlemlerinin günlüğe kaydedilmesini destekler, Eşleme/Küçültme paradigmasına uygun olarak çalışır, hataya dayanıklı konfigürasyonların çoğaltılmasını ve oluşturulmasını destekler.

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

Kaynak: opennet.ru

Yorum ekle