Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Usando o MongoDB como fonte para AWS DMS

Modo de foco
Usando o MongoDB como fonte para AWS DMS - AWS Database Migration Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Para obter informações sobre as versões do MongoDB AWS DMS que oferecem suporte como fonte, consulte. Fontes para AWS DMS

Observe o seguinte sobre a compatibilidade com a versão do MongoDB:

  • As versões AWS DMS 3.4.5 e posteriores oferecem suporte às versões 4.2 e 4.4 do MongoDB.

  • As versões AWS DMS 3.4.5 e posteriores e as versões do MongoDB 4.2 e posteriores oferecem suporte a transações distribuídas. Para obter mais informações sobre as transações distribuídas do MongoDB, consulte Transações na Documentação do MongoDB.

  • As versões AWS DMS 3.5.0 e posteriores não oferecem suporte às versões do MongoDB anteriores à 3.6.

  • As versões AWS DMS 3.5.1 e posteriores oferecem suporte à versão 5.0 do MongoDB.

  • As versões AWS DMS 3.5.2 e posteriores oferecem suporte à versão 6.0 do MongoDB.

Se você é novo no MongoDB, esteja ciente quanto aos seguintes conceitos importantes sobre o banco de dados MongoDB.

  • Um registro no MongoDB é um documento, que é uma estrutura de dados composta por pares de campo e valor. O valor de um campo pode incluir outros documentos, matrizes e matrizes de documentos. Um documento é aproximadamente equivalente a uma linha em uma tabela de banco de dados relacional.

  • Uma coleção no MongoDB é um grupo de documentos e é aproximadamente equivalente a uma tabela de banco de dados relacional.

  • Um banco de dados no MongoDB é um conjunto de coleções e é aproximadamente equivalente a uma tabela de banco de dados relacional.

  • Internamente, um documento do MongoDB é armazenado como um arquivo binário JSON (BSON) em um formato compactado que inclui um tipo para cada campo no documento. Cada documento tem um ID exclusivo.

AWS DMS suporta dois modos de migração ao usar o MongoDB como fonte, o modo Documento ou o modo Tabela. Você especifica o modo de migração a ser utilizado ao criar o endpoint do MongoDB ou ao configurar o parâmetro do Modo metadados no console do AWS DMS . Opcionalmente, é possível criar uma segunda coluna chamada _id que atue como a chave primária selecionando o botão de marca de seleção para _id como uma coluna separada no painel de configuração do endpoint.

A escolha do modo de migração afeta o formato resultante dos dados de destino, conforme explicado a seguir.

Modo de documentos

No modo de documentos, o documento do MongoDB é migrado "no estado em que se encontra", ou seja, os dados do documento são consolidados em uma única coluna chamada _doc em uma tabela de destino. O modo de documentos é a configuração padrão ao utilizar o MongoDB como um endpoint de origem.

Por exemplo, considere os seguintes documentos em uma coleção do MongoDB chamada myCollection.

> db.myCollection.find() { "_id" : ObjectId("5a94815f40bd44d1b02bdfe0"), "a" : 1, "b" : 2, "c" : 3 } { "_id" : ObjectId("5a94815f40bd44d1b02bdfe1"), "a" : 4, "b" : 5, "c" : 6 }

Após a migração dos dados para uma tabela de banco de dados relacional usando o modo de documentos, os dados são estruturados como mostrado a seguir. Os campos de dados no documento do MongoDB são consolidados na coluna _doc.

oid_id _doc
5a94815f40bd44d1b02bdfe0 { "a" : 1, "b" : 2, "c" : 3 }
5a94815f40bd44d1b02bdfe1 { "a" : 4, "b" : 5, "c" : 6 }

Opcionalmente, é possível definir o atributo de conexão adicional extractDocID como verdadeiro para criar uma segunda coluna chamada "_id", que servirá como a chave primária. Se for utilizar a CDC, defina esse parâmetro como verdadeiro.

No modo documento, AWS DMS gerencia a criação e a renomeação de coleções da seguinte forma:

  • Se você adicionar uma nova coleção ao banco de dados de origem, AWS DMS cria uma nova tabela de destino para a coleção e replica todos os documentos.

  • Se você renomear uma coleção existente no banco de dados de origem, o AWS DMS não renomeará a tabela de destino.

Se o endpoint de destino for o Amazon DocumentDB, execute a migração no Modo documento.

Modo de tabelas

No modo tabela, AWS DMS transforma cada campo de nível superior em um documento do MongoDB em uma coluna na tabela de destino. Se um campo estiver aninhado, AWS DMS nivela os valores aninhados em uma única coluna. AWS DMS em seguida, adiciona um campo-chave e tipos de dados ao conjunto de colunas da tabela de destino.

Para cada documento do MongoDB AWS DMS , adiciona cada chave e tipo ao conjunto de colunas da tabela de destino. Por exemplo, usando o modo tabela, AWS DMS migra o exemplo anterior para a tabela a seguir.

oid_id a b c
5a94815f40bd44d1b02bdfe0 1 2 3
5a94815f40bd44d1b02bdfe1 4 5 6

Os valores aninhados são simplificados em uma coluna que contém os nomes das chaves separados por pontos. A coluna é nomeado concatenação dos nomes dos campos simplificados, separados por pontos. Por exemplo, AWS DMS migra um documento JSON com um campo de valores aninhados, como {"a" : {"b" : {"c": 1}}} em uma coluna chamada a.b.c.

Para criar as colunas de destino, AWS DMS digitaliza um número específico de documentos do MongoDB e cria um conjunto de todos os campos e seus tipos. AWS DMS em seguida, usa esse conjunto para criar as colunas da tabela de destino. Se criar ou modificar o endpoint de origem do MongoDB utilizando o console, especifique o número de documentos para verificação. O valor padrão são 1.000 documentos. Se você usar o AWS CLI, poderá usar o atributo de conexão extradocsToInvestigate.

No modo tabela, AWS DMS gerencia documentos e coleções da seguinte forma:

  • Ao adicionar um documento a uma coleção existente, o documento é replicado. Se houver campos que não existem no destino, esses campos não serão replicados.

  • Quando você atualiza um documento, o documento atualizado é replicado. Se houver campos que não existem no destino, esses campos não serão replicados.

  • A exclusão de documentos é totalmente compatível.

  • A adição de uma coleção nova não resultará na criação de uma nova tabela no destino quando feita durante uma tarefa de CDC.

  • Na fase Change Data Capture (CDC), AWS DMS não oferece suporte à renomeação de uma coleção.

Permissões necessárias ao usar o MongoDB como fonte para AWS DMS

Para uma AWS DMS migração com uma fonte do MongoDB, você pode criar uma conta de usuário com privilégios de root ou um usuário com permissões somente no banco de dados para migrar.

O código a seguir cria um usuário para ser a conta raiz.

use admin db.createUser( { user: "root", pwd: "password", roles: [ { role: "root", db: "admin" } ] } )

Para um origem do MongoDB 3.x, o código a seguir cria um usuário com privilégios mínimos no banco de dados a ser migrado.

use database_to_migrate db.createUser( { user: "dms-user", pwd: "password", roles: [ { role: "read", db: "local" }, "read"] })

Para um MongoDB 4.x de origem, o código a seguir cria um usuário com privilégios mínimos.

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }

Por exemplo, crie o seguinte perfil no banco de dados “admin”.

use admin db.createRole( { role: "changestreamrole", privileges: [ { resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] } ], roles: [] } )

Quando o perfil estiver criado, crie um usuário no banco de dados a ser migrado.

> use test > db.createUser( { user: "dms-user12345", pwd: "password", roles: [ { role: "changestreamrole", db: "admin" }, "read"] })

Configurar um conjunto de réplicas do MongoDB para a CDC

Para usar a replicação contínua ou CDC com o MongoDB, é necessário AWS DMS acesso ao log de operações do MongoDB (oplog). Para criar o oplog, é necessário implantar um conjunto de réplicas, caso não exista. Para obter mais informações, consulte a documentação do MongoDB.

É possível utilizar a CDC com o nó primário ou secundário de um conjunto de réplicas do MongoDB como o endpoint de origem.

Para converter uma instância independente em um conjunto de réplicas
  1. utilizando a linha de comando, conecte-se ao mongo.

    mongo localhost
  2. Interrompa o serviço mongod.

    service mongod stop
  3. Reinicie o mongod utilizando o comando a seguir:

    mongod --replSet "rs0" --auth -port port_number
  4. Teste a conexão com o conjunto de réplicas utilizando os seguintes comandos:

    mongo -u root -p password --host rs0/localhost:port_number --authenticationDatabase "admin"

Se planeja executar uma migração no modo de documentos, selecione a opção _id as a separate column ao criar o endpoint do MongoDB. Selecionar essa opção cria uma segunda coluna chamada _id que atua como a chave primária. Essa segunda coluna é necessária AWS DMS para suportar operações de linguagem de manipulação de dados (DML).

nota

AWS DMS usa o log de operações (oplog) para capturar as alterações durante a replicação contínua. Se o MongoDB eliminar os registros do oplog AWS DMS antes de lê-los, suas tarefas falharão. É recomendável dimensionar o oplog para reter as alterações por pelo menos 24 horas.

Requisitos de segurança ao usar o MongoDB como fonte para AWS DMS

AWS O DMS suporta dois métodos de autenticação para o MongoDB. Os dois métodos de autenticação são utilizados para criptografar a senha, e portanto só são utilizados quando o parâmetro authType está definido como PASSWORD.

Os métodos de autenticação do MongoDB são os seguintes:

  • MONGODB-CR: para compatibilidade com versões anteriores

  • SCRAM-SHA-1: o padrão ao utilizar o MongoDB versão 3.x e 4.0.

Se um método de autenticação não for especificado, o AWS DMS usa o método padrão para a versão da fonte do MongoDB.

Segmentar as coleções do MongoDB e migrar em paralelo

Para melhorar o desempenho de uma tarefa de migração, os endpoints de origem do MongoDB são compatíveis com duas opções para carga máxima paralela no mapeamento de tabela.

Em outras palavras, é possível migrar uma coleção em paralelo utilizando segmentação automática ou segmentação por intervalo com mapeamento de tabela para uma carga máxima paralela nas configurações do JSON. Com a segmentação automática, você pode especificar os critérios AWS DMS para segmentar automaticamente sua fonte para migração em cada thread. Com a segmentação por faixa, você pode informar AWS DMS a faixa específica de cada segmento para que o DMS migre em cada thread. Para obter mais informações sobre essas configurações, consulte Regras e operações de configurações de tabelas e coleções.

Migrar um banco de dados MongoDB em paralelo utilizando intervalos de segmentação automática

É possível migrar os documentos em paralelo especificando os critérios do AWS DMS para particionar (segmentar) automaticamente os dados de cada thread. Especificamente, informe o número de documentos a serem migrados por thread. Usando essa abordagem, AWS DMS tenta otimizar os limites do segmento para obter o máximo desempenho por thread.

É possível especificar os critérios de segmentação utilizando as opções de configurações de tabela a seguir no mapeamento de tabela.

Opção de configurações de tabela

Descrição

"type"

(Obrigatório) Defina como "partitions-auto" para MongoDB como origem.

"number-of-partitions"

(Opcional) Número total de partições (segmentos) utilizadas para a migração. O padrão é 16.

"collection-count-from-metadata"

(Opcional) Se essa opção estiver definida como true, o AWS DMS utilizará uma contagem estimada da coleção para determinar o número de partições. Se essa opção estiver definida comofalse, AWS DMS usa a contagem real da coleta. O padrão é true.

"max-records-skip-per-page"

(Opcional) O número de registros a serem ignorados de uma vez ao determinar os limites de cada partição. AWS DMS usa uma abordagem de salto paginado para determinar o limite mínimo de uma partição. O padrão é 10.000.

A definição de um valor relativamente grande pode resultar em tempos limite do cursor e falhas na tarefa. A definição de um valor relativamente baixo resulta em mais operações por página e em uma carga máxima mais lenta.

"batch-size"

(Opcional) Limita o número de documentos retornados em um lote. Cada lote requer uma viagem de ida e volta ao servidor. Se o tamanho do lote for zero (0), o cursor utilizará o tamanho máximo do lote definido pelo servidor. O padrão é 0.

O exemplo a seguir mostra um mapeamento de tabela para segmentação automática.

{ "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "admin", "table-name": "departments" }, "rule-action": "include", "filters": [] }, { "rule-type": "table-settings", "rule-id": "2", "rule-name": "2", "object-locator": { "schema-name": "admin", "table-name": "departments" }, "parallel-load": { "type": "partitions-auto", "number-of-partitions": 5, "collection-count-from-metadata": "true", "max-records-skip-per-page": 1000000, "batch-size": 50000 } } ] }

A segmentação automática tem a seguinte limitação. A migração de cada segmento busca a contagem da coleção e o _id mínimo da coleção separadamente. Ela utiliza um salto paginado para calcular o limite mínimo desse segmento.

Portanto, verifique se o valor mínimo de _id de cada coleção permanece constante até que todos os limites do segmento na coleção tenham sido calculados. Se você alterar o valor mínimo de _id de uma coleção durante o cálculo do limite do segmento, isso poderá causar perda de dados ou erros de linha duplicada.

Migrar de um banco de dados MongoDB em paralelo utilizando segmentação de intervalo

É possível migrar os documentos em paralelo especificando os intervalos de cada segmento em um thread. Usando essa abordagem, você instrui AWS DMS os documentos específicos a migrar em cada thread de acordo com sua escolha de intervalos de documentos por thread.

O exemplo a seguir mostra uma coleção do MongoDB que tem sete itens e _id como chave primária.

Coleção do MongoDB com sete itens.

Para dividir a coleção em três segmentos específicos para AWS DMS migrar em paralelo, você pode adicionar regras de mapeamento de tabelas à sua tarefa de migração. Essa abordagem é mostrada no exemplo de JSON a seguir.

{ // Task table mappings: "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "testdatabase", "table-name": "testtable" }, "rule-action": "include" }, // "selection" :"rule-type" { "rule-type": "table-settings", "rule-id": "2", "rule-name": "2", "object-locator": { "schema-name": "testdatabase", "table-name": "testtable" }, "parallel-load": { "type": "ranges", "columns": [ "_id", "num" ], "boundaries": [ // First segment selects documents with _id less-than-or-equal-to 5f805c97873173399a278d79 // and num less-than-or-equal-to 2. [ "5f805c97873173399a278d79", "2" ], // Second segment selects documents with _id > 5f805c97873173399a278d79 and // _id less-than-or-equal-to 5f805cc5873173399a278d7c and // num > 2 and num less-than-or-equal-to 5. [ "5f805cc5873173399a278d7c", "5" ] // Third segment is implied and selects documents with _id > 5f805cc5873173399a278d7c. ] // :"boundaries" } // :"parallel-load" } // "table-settings" :"rule-type" ] // :"rules" } // :Task table mappings

Essa definição de mapeamento de tabela divide a coleção de origem em três segmentos e migra em paralelo. Veja a seguir os limites de segmentação.

Data with _id less-than-or-equal-to "5f805c97873173399a278d79" and num less-than-or-equal-to 2 (2 records) Data with _id > "5f805c97873173399a278d79" and num > 2 and _id less-than-or-equal-to "5f805cc5873173399a278d7c" and num less-than-or-equal-to 5 (3 records) Data with _id > "5f805cc5873173399a278d7c" and num > 5 (2 records)

Depois que a tarefa de migração for concluída, é possível verificar os logs de tarefas para saber se as tabelas foram carregadas em paralelo, conforme mostrado no exemplo a seguir. Também é possível verificar a cláusula find do MongoDB utilizada para descarregar cada segmento da tabela de origem.

[TASK_MANAGER ] I: Start loading segment #1 of 3 of table 'testdatabase'.'testtable' (Id = 1) by subtask 1. Start load timestamp 0005B191D638FE86 (replicationtask_util.c:752) [SOURCE_UNLOAD ] I: Range Segmentation filter for Segment #0 is initialized. (mongodb_unload.c:157) [SOURCE_UNLOAD ] I: Range Segmentation filter for Segment #0 is: { "_id" : { "$lte" : { "$oid" : "5f805c97873173399a278d79" } }, "num" : { "$lte" : { "$numberInt" : "2" } } } (mongodb_unload.c:328) [SOURCE_UNLOAD ] I: Unload finished for segment #1 of segmented table 'testdatabase'.'testtable' (Id = 1). 2 rows sent. [TASK_MANAGER ] I: Start loading segment #1 of 3 of table 'testdatabase'.'testtable' (Id = 1) by subtask 1. Start load timestamp 0005B191D638FE86 (replicationtask_util.c:752) [SOURCE_UNLOAD ] I: Range Segmentation filter for Segment #0 is initialized. (mongodb_unload.c:157) [SOURCE_UNLOAD ] I: Range Segmentation filter for Segment #0 is: { "_id" : { "$lte" : { "$oid" : "5f805c97873173399a278d79" } }, "num" : { "$lte" : { "$numberInt" : "2" } } } (mongodb_unload.c:328) [SOURCE_UNLOAD ] I: Unload finished for segment #1 of segmented table 'testdatabase'.'testtable' (Id = 1). 2 rows sent. [TARGET_LOAD ] I: Load finished for segment #1 of segmented table 'testdatabase'.'testtable' (Id = 1). 1 rows received. 0 rows skipped. Volume transfered 480. [TASK_MANAGER ] I: Load finished for segment #1 of table 'testdatabase'.'testtable' (Id = 1) by subtask 1. 2 records transferred.

Atualmente, AWS DMS oferece suporte aos seguintes tipos de dados do MongoDB como uma coluna de chave de segmento:

  • Duplo

  • String

  • ObjectId

  • Inteiro de 32 bits

  • Inteiro de 64 bits

Migrando vários bancos de dados ao usar o MongoDB como fonte para AWS DMS

AWS DMS as versões 3.4.5 e superiores oferecem suporte à migração de vários bancos de dados em uma única tarefa para todas as versões suportadas do MongoDB. Para migrar vários bancos de dados, utilize as seguintes etapas:

  1. Ao criar o endpoint de origem do MongoDB, siga um destes procedimentos:

    • Na página Criar endpoint do console do DMS, verifique se o Nome do banco de dados está vazio em Configuração do endpoint.

    • Usando o AWS CLI CreateEndpoint comando, atribua um valor de string vazio ao DatabaseName parâmetro emMongoDBSettings.

  2. Para cada banco de dados a ser migrado de uma origem do MongoDB, especifique o nome do banco de dados como um nome de esquema no mapeamento da tabela da tarefa. É possível fazer isso utilizando a entrada guiada no console ou diretamente no JSON. Para obter mais informações sobre a entrada guiada, consulte Especificar a seleção de tabelas e as regras de transformação no console. Para obter mais informações sobre o JSON, consulte Regras de seleção e ações.

Por exemplo, é possível especificar o JSON a seguir para migrar três bancos de dados do MongoDB.

exemplo Migrar todas as tabelas em um esquema

O JSON a seguir migra todas as tabelas dos bancos de dados Customers, Orders e Suppliers no endpoint de origem para o endpoint de destino.

{ "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "Customers", "table-name": "%" }, "rule-action": "include", "filters": [] }, { "rule-type": "selection", "rule-id": "2", "rule-name": "2", "object-locator": { "schema-name": "Orders", "table-name": "%" }, "rule-action": "include", "filters": [] }, { "rule-type": "selection", "rule-id": "3", "rule-name": "3", "object-locator": { "schema-name": "Inventory", "table-name": "%" }, "rule-action": "include", "filters": [] } ] }

Limitações ao usar o MongoDB como fonte para AWS DMS

A seguir estão as limitações ao usar o MongoDB como fonte para: AWS DMS

  • No modo tabela, os documentos em uma coleção devem ser consistentes com o tipo de dados que utilizam para o valor no mesmo campo. Por exemplo, se um documento em uma coleção incluir '{ a:{ b:value ... }', todos os documentos da coleção que fazem referência ao value do campo a.b devem utilizar o mesmo tipo de dados para value, onde quer que apareçam na coleção.

  • Quando a opção _id está definida como uma coluna separada, a string de ID não pode exceder 200 caracteres.

  • As chaves de ID de objetos e de tipos de array são convertidas em colunas com o prefixo oid e array no modo de tabela.

    Internamente, essas colunas são referenciadas com os nomes prefixados. Se você usar regras de transformação para referenciar essas colunas, certifique-se de especificar a coluna prefixada. AWS DMS Por exemplo, especifique ${oid__id} e não ${_id}, ou ${array__addresses} e não ${_addresses}.

  • Os nomes de coleções e os nomes de chaves não podem conter o caractere de cifrão ($).

  • AWS DMS não oferece suporte a coleções contendo o mesmo campo com letras maiúsculas e minúsculas diferentes no modo de tabela com um destino RDBMS. Por exemplo, AWS DMS não suporta ter duas coleções chamadas Field1 field1 e.

  • Os modos tabelas e documento possuem as limitações descritas anteriormente.

  • A migração em paralelo que utiliza a segmentação automática possui as limitações descritas anteriormente.

  • Os filtros de origem não são compatíveis com o MongoDB.

  • AWS DMS não suporta documentos em que o nível de aninhamento seja maior que 97.

  • AWS DMS não oferece suporte aos seguintes recursos do MongoDB versão 5.0:

    • Refragmentação em tempo real

    • Criptografia em nível de campo do lado do cliente (CSFLE)

    • Migração de coleção de séries temporais

      nota

      Uma coleção de séries temporais migrada na fase de carga máxima será convertida em uma coleção normal no Amazon DocumentDB, porque o DocumentDB não é compatível com coleções de séries temporais.

Configurações de endpoint ao usar o MongoDB como fonte para AWS DMS

Ao configurar seu endpoint de origem do MongoDB, você pode especificar várias configurações de endpoint usando o console. AWS DMS

A tabela a seguir descreve as configurações disponíveis ao usar bancos de dados MongoDB como fonte. AWS DMS

Configuração (atributo) Valores válidos Valor padrão e descrição

Modo de autenticação

"none"

"password"

O valor "password" solicita um nome de usuário e uma senha. Quando "none" for especificado, os parâmetros de nome de usuário e senha não serão utilizados.

Origem da autenticação

Um nome de banco de dados MongoDB válido.

O nome do banco de dados MongoDB que você deseja utilizar para validar as credenciais para autenticação. O valor padrão é "admin".

Mecanismo de autenticação

"default"

"mongodb_cr"

"scram_sha_1"

O mecanismo de autenticação. O valor "default" é "scram_sha_1". Essa configuração não é utilizada quando authType está definido como "no".

Modo metadados

Documento e tabela

Escolhe o modo documento ou o modo tabela.

Número de documentos a serem verificados (docsToInvestigate)

Um inteiro positivo maior do que 0.

Utilize essa opção no modo tabela somente para definir a configuração da tabela de destino.

_id como uma coluna separada

Marca de seleção na caixa

Marca de seleção opcional que cria uma segunda coluna chamada _id que atua como a chave primária.

socketTimeoutMS

NUMBER

Somente atributo de conexão adicional (ECA).

Essa configuração está em unidades de milissegundos e configura o tempo limite de conexão para clientes MongoDB. Se o valor for menor ou igual a zero, o padrão do cliente MongoDB será utilizado.

UseUpdateLookUp

boolean

true

false

Quando verdadeiro, durante os eventos de atualização do CDC, AWS DMS copia todo o documento atualizado para o destino. Quando definido como false, AWS DMS usa o comando de atualização do MongoDB para atualizar somente os campos modificados no documento no destino.

ReplicateShardCollections

boolean

true

false

Quando verdadeiro, AWS DMS replica os dados em coleções de fragmentos. AWS DMS só usa essa configuração se o endpoint de destino for um cluster elástico DocumentDB.

Quando essa configuração for verdadeira, observe o seguinte:

  • Defina TargetTablePrepMode como nothing.

  • AWS DMS define automaticamente useUpdateLookup comofalse.

Se você escolher o Documento como Modo metadados, opções diferentes estarão disponíveis.

Se o endpoint de destino for DocumentDB, execute a migração no Modo documento. Além disso, modifique o endpoint de origem e selecione a opção _id como coluna separada. Esse será um pré-requisito obrigatório se a workload de origem do MongoDB envolver transações.

Tipos de dados de origem do MongoDB

A migração de dados que usa o MongoDB como fonte AWS DMS suporta a maioria dos tipos de dados do MongoDB. Na tabela a seguir, você pode encontrar os tipos de dados de origem do MongoDB que são suportados durante o AWS DMS uso e o mapeamento AWS DMS padrão dos tipos de dados. Para obter mais informações sobre os tipos de dados do MongoDB, consulte Tipos de BSON na documentação do MongoDB.

Para obter informações sobre como exibir o tipo de dados mapeado no destino, consulte a seção relativa ao endpoint de destino que está usando.

Para obter informações adicionais sobre AWS DMS os tipos de dados, consulteTipos de dados para AWS Database Migration Service.

Tipos de dados do MongoDB

AWS DMS tipos de dados

Booliano

Bool

Binário

BLOB

Data

Data

Marca de data e hora

Data

Int

INT4

Longo

INT8

Duplo

REAL8

String (UTF-8)

CLOB

Array

CLOB

OID

String

REGEX

CLOB

Código

CLOB

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.