Lançamento do FerretDB 0.3, uma implementação do MongoDB baseada no SGBD PostgreSQL

Foi publicada a versão do projeto FerretDB 0.3, que permite substituir o DBMS MongoDB orientado a documentos pelo PostgreSQL sem fazer alterações no código da aplicação. FerretDB é implementado como um servidor proxy que traduz chamadas para MongoDB em consultas SQL para PostgreSQL, o que permite usar PostgreSQL como armazenamento real. O código é escrito em Go e distribuído sob a licença Apache 2.0.

A necessidade de migração pode surgir em conexão com a transição do MongoDB para a licença SSPL proprietária, que é baseada na licença AGPLv3, mas não é aberta, pois contém um requisito discriminatório para entregar sob a licença SSPL não apenas o próprio código do aplicativo , mas também os códigos-fonte de todos os componentes envolvidos na prestação do serviço em nuvem.

O principal público-alvo do FerretDB são usuários que não usam os recursos avançados do MongoDB em seus aplicativos, mas desejam usar uma pilha de software completamente aberta. No atual estágio de desenvolvimento, o FerretDB ainda suporta apenas parte dos recursos do MongoDB que são usados ​​com mais frequência em aplicações típicas. No futuro, eles planejam alcançar total compatibilidade com drivers para MongoDB e fornecer a capacidade de usar o FerretDB como um substituto transparente para o MongoDB.

MongoDB ocupa um nicho entre sistemas rápidos e escaláveis ​​que operam em dados chave/valor e DBMSs relacionais que são funcionais e fáceis de consultar. O MongoDB suporta o armazenamento de documentos em um formato semelhante ao JSON, possui uma linguagem bastante flexível para gerar consultas, pode criar índices para vários atributos armazenados, fornece armazenamento eficiente de grandes objetos binários, suporta o registro de operações para alterar e adicionar dados ao banco de dados, pode funciona de acordo com o paradigma Map/Reduce, suporta replicação e construção de configurações tolerantes a falhas.

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

Fonte: opennet.ru

Adicionar um comentário