O Datastream oferece suporte à replicação de eventos de mudança de uma origem do MongoDB. O MongoDB é um banco de dados NoSQL de código aberto que usa documentos semelhantes a JSON. Um documento pode ter outros documentos incorporados. Os documentos são reunidos em coleções, e um banco de dados do MongoDB armazena uma ou mais coleções de documentos.
Em vez de armazenar dados em tabelas de linhas e colunas, como bancos de dados SQL relacionais, cada registro em um banco de dados do MongoDB é um documento descrito em JSON binário (BSON), uma representação binária de dados. Os aplicativos podem recuperar esses dados no formato JSON.
Esta página contém informações sobre:
- Os principais termos que você precisa entender ao replicar de um banco de dados do MongoDB
- O comportamento de como o Datastream lida com dados que estão sendo extraídos de um banco de dados MongoDB de origem
- As versões e edições do MongoDB compatíveis com o Datastream
- Limitações conhecidas para o uso do MongoDB como fonte
Termos-chave
Confira os principais termos que você precisa entender ao trabalhar com fontes do MongoDB:
Conexão SRV: uma string de conexão com um nome de host que corresponde a um registro de serviço (SRV) do serviço de nome de domínio (DNS). A string tem o seguinte formato:
mongodb+srv://[username:password@]host[/[defaultauthdb][?options]]Para mais informações, consulte a documentação do MongoDB.
String de conexão padrão: o formato padrão do URI de conexão do MongoDB usado para se conectar a uma implantação autônoma do MongoDB auto-hospedada, um conjunto de réplicas ou um cluster fragmentado. A string tem o seguinte formato:
mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]Para mais informações, consulte a documentação do MongoDB.
Conjunto de réplicas: um cluster de servidores do MongoDB que implementa replicação e failover automático. Os conjuntos de réplicas oferecem redundância e alta disponibilidade e são a base para todas as implantações de produção.
Cluster fragmentado: um cluster fragmentado do MongoDB consiste em fragmentos, mongos e servidores de configuração. O MongoDB fragmenta dados no nível da coleção, distribuindo os dados da coleção entre os fragmentos no cluster.
mongos: a interface entre os aplicativos cliente e o cluster fragmentado. O
mongosatua como um roteador de consultas e grava operações em fragmentos.Coleção: o MongoDB organiza os dados em uma estrutura hierárquica. Uma implantação do MongoDB contém um ou mais bancos de dados, e cada banco de dados contém uma ou mais coleções. Em cada coleção, o MongoDB armazena dados como documentos que contêm pares de campo e valor. As coleções são semelhantes a tabelas em bancos de dados relacionais.
Comportamento
O banco de dados MongoDB de origem depende de fluxo de alterações para replicar as mudanças no destino. Os fluxos de alterações permitem acessar dados em tempo real e são compatíveis com conjuntos de réplicas e clusters fragmentados.
- Se configurado, todos os dados históricos serão replicados para os objetos incluídos.
- Todas as mudanças, como inserções, atualizações e exclusões dos objetos especificados, são replicadas.
Versões
O Datastream é compatível com versões do MongoDB posteriores à 5.0.
Limitações conhecidas
Limitações conhecidas para o uso do MongoDB como fonte:
- Ao usar a API Datastream, só é possível especificar quais campos você quer excluir no stream. Não é possível especificar uma lista de inclusão para campos.
- O modo estrito não é compatível com os valores numéricos
Infinity,-InfinityeNaN. Os documentos são descartados se contiverem esses valores no modo estrito. Se o banco de dados contiver esses valores, use o modo canônico (padrão). Para mais informações, consulte Tipos de dados do MongoDB. - O Datastream não é compatível com o Azure Cosmos DB baseado em unidade de solicitação (RU).
- O Datastream não é compatível com clusters elásticos do Amazon DocumentDB.
A seguir
- Saiba como configurar uma origem do MongoDB para uso com o Datastream.
- Saiba como criar um fluxo do MongoDB usando a API e a CLI gcloud.