Utilizar o MongoDB como origem do 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á.

Utilizar o MongoDB como origem do AWS DMS

Para obter informações sobre as versões do MongoDB compatíveis com o AWS DMS como origem, consulte Fontes para AWS DMS.

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

  • As versões 3.4.5 e posteriores do AWS DMS são compatíveis com as versões 4.2 e 4.4 do MongoDB.

  • As versões 3.4.5 e posteriores do AWS DMS e as versões 4.2 e posteriores do MongoDB são compatíveis com 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 3.5.0 e posteriores do AWS DMS não são compatíveis com às versões anteriores à 3.6 do MongoDB.

  • As versões 3.5.1 e posteriores do AWS DMS são compatíveis com a versão 5.0 do MongoDB.

  • As versões 3.5.2 e posteriores do AWS DMS são compatíveis com a 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.

O AWS DMS é compatível com dois modos de migração ao utilizar o MongoDB como origem, Modo documento ou 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 metadadosAWS DMS no console do . 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 de documentos, o AWS DMS gerencia a criação e a renomeação das coleções da seguinte forma:

  • Se você adicionar uma nova coleção ao banco de dados de origem, o AWS DMS criará uma nova tabela de destino para a coleção e replicara 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 de tabela, o AWS DMS transforma cada campo de nível superior de um documento do MongoDB em uma coluna na tabela de destino. Se um campo estiver aninhado, o AWS DMS nivelará os valores aninhados em uma única coluna. O AWS DMS então adiciona um campo de chave e os tipos de dados ao conjunto de colunas da tabela de destino.

Para cada documento do MongoDB, o AWS DMS adiciona cada chave e tipo ao conjunto de colunas da tabela de destino. Por exemplo, usando o modo de tabelas, o 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, o AWS DMS migra um documento JSON com um campo de valores aninhados como {"a" : {"b" : {"c": 1}}} para uma coluna chamada a.b.c.

Para criar as colunas de destino, o AWS DMS verifica um número específico de documentos do MongoDB e cria um conjunto de todos os campos e seus tipos. O AWS DMS utiliza 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. Ao utilizar a AWS CLI, o atributo de conexão adicional docsToInvestigate pode ser utilizado.

No modo de tabelas, o 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 de captura de dados de alteração (CDC), o AWS DMS não é compatível com a renomeação de uma coleção.

Permissões necessárias ao utilizar o MongoDB como origem do AWS DMS

Para uma migração do AWS DMS com uma origem do MongoDB, é possível criar uma conta de usuário com privilégios de raiz ou um usuário com permissões para migração somente no banco de dados.

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 utilizar a replicação contínua ou a CDC com o MongoDB, o AWS DMS requer 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 é exigida pelo AWS DMS para oferecer suporte às operações de linguagem de manipulação de dados (DML).

nota

O AWS DMS utiliza 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 antes de o AWS DMS lê-los, haverá falha nas tarefas. É recomendável dimensionar o oplog para reter as alterações por pelo menos 24 horas.

Requisitos de segurança ao utilizar o MongoDB como origem do AWS DMS

O AWS é compatível com 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 utilizará o método padrão da versão do MongoDB de origem.

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, é possível especificar os critérios do AWS DMS para segmentar automaticamente a origem para migração em cada thread. Com a segmentação de intervalo, é possível informar ao AWS DMS o intervalo específico de cada segmento para o DMS migrar 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. Ao utilizar essa abordagem, o 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, o AWS DMS utilizará a contagem real da coleção. O padrão é true.

"max-records-skip-per-page"

(Opcional) O número de registros a serem ignorados imediatamente ao determinar os limites de cada partição. O AWS DMS utiliza uma abordagem de ignorar páginas ao 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. Ao utilizar essa abordagem, você informa ao AWS DMS os documentos específicos a serem migrados em cada thread de acordo com a 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 o AWS DMS migrar em paralelo, é possível adicionar regras de mapeamento de tabela à 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, o AWS DMS é compatível com os seguintes tipos de dados do MongoDB como uma coluna de chave de segmento:

  • Double

  • String

  • ObjectId

  • Inteiro de 32 bits

  • Inteiro de 64 bits

Migrar vários bancos de dados ao utilizar o MongoDB como origem do AWS DMS

O AWS DMS versões 3.4.5 e superiores são compatíveis com a migração de vários bancos de dados em uma única tarefa para todas as versões do MongoDB compatíveis. 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.

    • Utilizando o comando CreateEndpoint da AWS CLI, atribua um valor de string vazia ao parâmetro DatabaseName em MongoDBSettings.

  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 de uso do MongoDB como origem do AWS DMS

Veja a seguir as limitações ao utilizar o MongoDB como origem do 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 utilizar regras de transformação no AWS DMS que fazem referência a essas colunas, especifique a coluna prefixada. 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 ($).

  • O AWS DMS não é compatível com coleções que contêm o mesmo campo com maiúsculas e minúsculas diferentes no modo tabela com um destino RDBMS. Por exemplo, o AWS DMS não é compatível com duas coleções chamadas Field1 efield1.

  • 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.

  • O AWS DMS não é compatível com documentos em que o nível de aninhamento é maior que 97.

  • O AWS DMS não é compatível com os 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.

Definições de configuração do endpoint ao utilizar o MongoDB como origem do AWS DMS

Ao configurar o endpoint de origem do MongoDB, é possível especificar várias configurações de endpoint utilizando o console do AWS DMS.

A tabela a seguir descreve as propriedades de configuração disponíveis ao utilizar um banco de dados MongoDB como origem do 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 da CDC, o AWS DMS copia todo o documento atualizado no destino. Quando definido como falso, o AWS DMS utiliza o comando de atualização do MongoDB para atualizar somente os campos modificados no documento no destino.

ReplicateShardCollections

boolean

true

false

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

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

  • Defina TargetTablePrepMode como nothing.

  • O AWS DMS define automaticamente useUpdateLookup como false.

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 utiliza o MongoDB como origem do AWS DMS é compatível com a maioria dos tipos de dados do MongoDB. Na tabela a seguir, encontre os tipos de dados de origem do MongoDB compatíveis ao utilizar o AWS DMS e o mapeamento padrão de tipos de dados do AWS DMS. 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 mais informações sobre os tipos de dados do AWS DMS, consulte Tipos de dados do AWS Database Migration Service.

Tipos de dados do MongoDB

Tipos de dados do AWS DMS

Booleano

Bool

Binário

BLOB

Data

Data

Marca de data e hora

Data

Int

INT4

Longo

INT8

Double

REAL8

String (UTF-8)

CLOB

Array

CLOB

OID

String

REGEX

CLOB

Código

CLOB