Microsoft lança DocumentDB como banco de dados NoSQL de código aberto baseado em PostgreSQL

Escrito por
Emanuel Negromonte
Fundador do SempreUPdate. Acredita no poder do trabalho colaborativo, no GNU/Linux, Software livre e código aberto. É possível tornar tudo mais simples quando trabalhamos juntos, e...

A Microsoft surpreendeu a comunidade de tecnologia ao anunciar o lançamento do DocumentDB, uma plataforma de banco de dados NoSQL totalmente de código aberto. Este projeto alimenta o Azure Cosmos DB para MongoDB, sendo construído sobre o PostgreSQL, um dos bancos de dados mais populares entre os desenvolvedores. A DocumentDB é licenciada sob o permissivo MIT License, permitindo que usuários e desenvolvedores a incorporem livremente em suas soluções sem restrições.

O que é o DocumentDB?

A DocumentDB foi desenvolvida como uma plataforma de banco de dados orientada a documentos (document-oriented) para atender às necessidades crescentes de interoperabilidade e portabilidade em bancos de dados NoSQL. Essa abordagem permite que desenvolvedores realizem operações CRUD (Criar, Ler, Atualizar e Excluir) em documentos BSON diretamente no ecossistema PostgreSQL.

A arquitetura é composta por dois componentes principais:

  • pg_documentdb_core: Uma extensão personalizada do PostgreSQL, otimizando o suporte para o formato BSON.
  • pg_documentdb_api: Um plano de dados que gerencia operações CRUD, consultas e índices, incluindo suporte para busca vetorial, geoespacial e textuais.

Esses componentes também tornam a DocumentDB ideal para casos como inteligência artificial generativa, detecção de fraudes, sistemas de recomendação e processamento de linguagem natural.

Diferenças entre DocumentDB da Microsoft e da Amazon

Apesar do nome compartilhado, o DocumentDB da Microsoft é independente do banco de dados proprietário da Amazon com o mesmo nome. Enquanto o DocumentDB da Amazon é focado em compatibilidade com MongoDB, a solução da Microsoft aposta na transparência e flexibilidade do código aberto, sendo implementada sobre o PostgreSQL.

Exemplo simples para todos entenderem

Imagine que você tem um caderno onde guarda informações sobre seus contatos, como nome, telefone e endereço. O banco de dados orientado a documentos funciona como esse caderno, onde cada página é um documento e cada documento tem informações específicas e organizadas. Agora, com o DocumentDB, esse “caderno” está acessível de forma digital, permitindo que você procure, edite ou adicione novos contatos de forma fácil e rápida.

Recursos e visão para o futuro

A DocumentDB também busca estabelecer um padrão para bancos de dados NoSQL, similar ao ANSI SQL para bancos relacionais, o que pode facilitar a migração e a interoperabilidade entre diferentes soluções de NoSQL no futuro.

Com suporte a indexação, buscas otimizadas e extensibilidade baseada no PostgreSQL, a DocumentDB se apresenta como uma ferramenta poderosa tanto para pequenas aplicações locais quanto para grandes sistemas corporativos. Além disso, a Microsoft incentiva a colaboração por meio de seu repositório no GitHub e canais como Discord.

Começando com DocumentDB

Para aqueles que desejam experimentar, o repositório GitHub oferece instruções claras para instalação via Docker. Um exemplo simples para inserir um documento no banco:

SELECT documentdb_api.create_collection('documentdb', 'pacientes');
SELECT documentdb_api.insert_one('documentdb', 'pacientes', '{ "id": "P001", "nome": "Alice", "idade": 30 }');

Um marco para a Microsoft no código aberto

Ao adotar uma abordagem totalmente aberta com a DocumentDB, a Microsoft reforça seu compromisso com a comunidade e com práticas de desenvolvimento colaborativas, fortalecendo ainda mais o ecossistema do PostgreSQL. Essa iniciativa representa um passo importante na criação de soluções de dados flexíveis e acessíveis para desenvolvedores de todos os níveis.

Compartilhe este artigo