Todos os produtos
Search
Central de documentação

Data Transmission Service:Migrar o ApsaraDB for MongoDB para o Lindorm

Última atualização: Oct 09, 2026

Este tópico descreve como usar o Data Transmission Service (DTS) para migrar dados de uma instância do ApsaraDB for MongoDB (replica set ou cluster fragmentado) para uma instância do Lindorm.

Pré-requisitos

  • A região Germany (Frankfurt) é a única compatível com tarefas de migração.

  • A instância source do ApsaraDB for MongoDB deve ser um replica set ou um cluster fragmentado.

    Importante

    Se a source for um cluster fragmentado do ApsaraDB for MongoDB, solicite um endpoint para cada nó de shard e garanta que todos os nós de shard compartilhem a mesma conta e senha. Para obter instruções, consulte Apply for an endpoint for a shard.

  • Crie uma instância do Lindorm de destino que use o mecanismo de tabela larga. Para obter instruções, consulte Create an instance.

    Nota

    Recomendamos provisionar a instância de destino com pelo menos 10% a mais de capacidade de armazenamento em relação à instância source.

  • Crie uma tabela larga na instância do Lindorm com base nos seus requisitos de negócios. Para obter instruções, consulte Connect to and use the wide table engine by using Lindorm-cli ou Access the wide table engine by using Lindorm Shell.

    Nota

Limitações

Tipo

Descrição

Limites do banco de dados source

  • O servidor do banco de dados source deve ter largura de banda de saída suficiente. A largura de banda insuficiente afeta a velocidade da migração.

  • As coleções a serem migradas devem ter uma chave primária ou uma restrição de unicidade, e os campos devem ter valores exclusivos. Caso contrário, podem ocorrer dados duplicados no banco de dados de destino.

  • Se a migração ocorrer no nível da coleção e for necessário editar as coleções (como mapear nomes), uma única tarefa poderá migrar no máximo 1.000 coleções. Se esse limite for excedido, o envio da tarefa falhará. Nesse caso, divida as coleções em vários lotes e configure uma tarefa separada para cada lote.

  • Se o banco de dados source for o Azure Cosmos DB for MongoDB ou um cluster elástico do Amazon DocumentDB, apenas a migração completa de dados é compatível.

  • Para executar a migração incremental de dados:

    O banco de dados source deve ter o oplog ativado com pelo menos sete dias de retenção. Alternativamente, os change streams devem estar ativados, e o DTS deve conseguir assinar as alterações de dados do banco de dados source nos últimos sete dias por meio de change streams. Se esses requisitos não forem atendidos, a tarefa de migração poderá falhar por não conseguir obter as alterações de dados da source. Em casos extremos, isso pode levar à inconsistência ou perda de dados. Problemas decorrentes dessa situação não são cobertos pelo Service Level Agreement (SLA) do DTS.

    Importante
    • Recomendamos usar o oplog para obter as alterações de dados do banco de dados source.

    • Apenas o MongoDB 4.0 e versões posteriores são compatíveis com a obtenção de alterações de dados por meio de change streams.

    • Se o banco de dados source for um cluster do Amazon DocumentDB (não elástico), ative manualmente os change streams. Ao configurar a tarefa, defina o Migration Method como ChangeStream e a Architecture como Sharded Cluster.

  • Se a instância source do ApsaraDB for MongoDB tiver arquitetura de cluster fragmentado, o campo _id nas coleções a serem migradas deve ser exclusivo. Caso contrário, pode haver inconsistência de dados.

  • Se a instância source do ApsaraDB for MongoDB tiver arquitetura de cluster fragmentado, o número de nós mongos da source não pode exceder 10.

  • Se a instância source for um MongoDB autogerenciado com arquitetura de cluster fragmentado:

    • O Access Method é compatível apenas com Public IP Address, Express Connect, VPN Gateway, or Smart Access Gateway e Cloud Enterprise Network (CEN).

    • Se a versão do MongoDB for 8.0 ou posterior e o Migration Method for Oplog, garanta que a conta de shard usada pela tarefa de migração tenha a permissão directShardOperations. Conceda essa permissão executando o seguinte comando: db.adminCommand({ grantRolesToUser: "username", roles: [{ role: "directShardOperations", db: "admin"}]})

      Nota

      Substitua username no comando pela conta de shard usada pela tarefa de migração.

    • Se o Migration Method for Oplog e a tarefa incluir migração completa, garanta que a conta mongos do cluster fragmentado do MongoDB source tenha permissão para executar o comando db.runCommand({"balancerStatus":1}). O DTS usa esse comando durante a pré-verificação para confirmar se o Balancer da source está desativado.

  • O DTS não é compatível com conexão a um banco de dados MongoDB usando registro SRV.

  • Limites operacionais do banco de dados source:

    • Durante a fase de migração completa, não realize alterações de esquema em bancos de dados ou coleções, incluindo atualizações de dados em arrays. Essas alterações podem causar falha na tarefa de migração ou levar à inconsistência de dados entre os bancos de dados source e de destino.

    • Se executar apenas a migração completa de dados, não grave novos dados na instância source. Caso contrário, os dados ficarão inconsistentes entre os bancos de dados source e de destino.

    • Se a instância source do MongoDB for um cluster fragmentado, não execute comandos que alterem a distribuição de dados dos objetos a serem migrados no banco de dados source durante a execução da tarefa, como shardCollection, reshardCollection, unshardCollection, moveCollection ou movePrimary. Caso contrário, pode haver inconsistência de dados.

  • Se uma coleção a ser migrada contiver um índice Time-to-Live (TTL), pode haver inconsistência de dados ou aumento na latência da instância.

  • Se o banco de dados source for um MongoDB com arquitetura de cluster fragmentado e o Balancer da source estiver reequilibrando dados, a instância source poderá apresentar latência.

Outros limites

  • O DTS não é compatível com a migração de dados dos bancos de dados admin, config ou local.

  • As coleções na instância do Lindorm de destino não podem ter campos chamados _id e _value. Caso contrário, a migração falhará.

  • Se a migração incremental incluir operações UPDATE ou DELETE, aplicam-se os seguintes limites:

    • Se a tabela larga for criada com o Lindorm SQL, adicione uma coluna de chave não primária chamada _mongo_id_ ao criar a tabela. O tipo de dados dessa coluna depende do tipo de dados do campo _id no MongoDB. Crie também um índice secundário para essa coluna.

    • Se a tabela larga for criada com a API do HBase, adicione uma coluna de chave não primária chamada _mongo_id_ à família de colunas f ao criar a tabela. O tipo de dados dessa coluna depende do tipo de dados do campo _id no MongoDB. Crie também um índice secundário para essa coluna. Se usar a nova coluna com o recurso ETL, garanta que não existam dados duplicados no Lindorm.

  • As informações de transação não são preservadas. As transações no banco de dados source tornam-se registros únicos no banco de dados de destino.

  • Os dados a serem sincronizados na instância do Lindorm devem atender aos requisitos especificados em Request limits. Caso contrário, a tarefa falhará.

  • Antes de migrar os dados, avalie o desempenho dos bancos de dados source e de destino. Execute a migração em horários de menor pico. A migração completa consome recursos de leitura e gravação em ambos os bancos de dados, o que aumenta a carga sobre eles.

  • Durante a migração completa, o DTS realiza operações INSERT simultâneas. Isso pode causar fragmentação nas coleções de destino. Como resultado, as coleções de destino usarão mais espaço de armazenamento do que as coleções da source.

  • Verifique se a precisão de migração usada pelo DTS para valores FLOAT ou DOUBLE atende aos seus requisitos de negócios. O DTS lê valores desses tipos usando ROUND(COLUMN,PRECISION). Se a precisão não for especificada, o DTS usará uma precisão padrão de 38 dígitos para FLOAT e 308 dígitos para DOUBLE.

  • O DTS tenta retomar tarefas de migração com falha em até sete dias. Portanto, antes de alternar as cargas de trabalho para a instância de destino, pare ou libere a tarefa, ou use o comando revoke para revogar as permissões de gravação da conta que o DTS usa para acessar a instância de destino. Isso impede que a tarefa seja retomada automaticamente e sobrescreva dados na instância de destino.

  • O DTS calcula a latência de uma migração incremental comparando o timestamp do registro mais recente migrado para o banco de dados de destino com o timestamp atual. Se o banco de dados source não tiver atualizações recentes, a latência relatada poderá ser imprecisa. Se a tarefa exibir latência excessiva, execute uma operação de gravação no banco de dados source para obter uma leitura de latência precisa.

  • As coleções de séries temporais (time series), introduzidas no MongoDB 5.0, não são compatíveis com migração.

  • Se uma tarefa falhar, a equipe de suporte do DTS tentará restaurá-la em até oito horas. Durante a restauração, a equipe pode reiniciar a tarefa ou ajustar seus parâmetros.

    Nota

    Apenas os parâmetros da tarefa do DTS são modificados, e não os parâmetros do banco de dados. Os parâmetros que podem ser ajustados incluem aqueles listados em Modify instance parameters.

  • A sincronização de dados com codificação não UTF-8 não é compatível, o que pode levar à inconsistência de dados.

Faturamento

Tipo de migração

Taxa de configuração da tarefa

Taxa de transferência de dados

Migração completa de dados

Gratuito.

Este tutorial é gratuito. No entanto, uma data transfer fee será cobrada se o Access Method do banco de dados de destino for Public IP Address.

Migração incremental de dados

Há cobrança de taxas. Para mais detalhes, consulte billing overview.

Tipos de migração

Tipo de migração

Descrição

Migração completa de dados

Migra todos os dados existentes da instância source do ApsaraDB for MongoDB para a instância do Lindorm de destino.

Nota

Compatível com migração completa de dados para bancos de dados e coleções.

Migração incremental de dados

Após a migração completa, migra as atualizações incrementais da instância source do ApsaraDB for MongoDB para a instância do Lindorm de destino.

Nota
  • Compatível apenas com operações de inserção, atualização e exclusão em documentos de uma coleção.

  • Para atualizações incrementais de documentos, apenas as alterações feitas com o comando $set são replicadas.

Permissões da conta do banco de dados

Banco de dados

Migração completa de dados

Migração incremental de dados

Ações

ApsaraDB for MongoDB source

A permissão read nos bancos de dados a serem migrados.

A permissão read nos bancos de dados a serem migrados, no banco de dados admin e no banco de dados local.

Manage MongoDB database account permissions

Lindorm de destino

As permissões read e write na instância do Lindorm.

User management

Nota

Se usar o ChangeStream como método de migração incremental, a conta do banco de dados source requer permissões de leitura de Change Streams em toda a instância (como readAnyDatabase). Se a source for uma instância do ApsaraDB for MongoDB com conta personalizada, conceda também à conta permissão de leitura no banco de dados admin. Para mais detalhes, consulte Permissions of the root account specified during instance creation.

Procedimento

Este procedimento usa como exemplo uma tabela larga criada no Lindorm com Lindorm SQL como banco de dados de destino.

  1. Acesse a página da lista de tarefas de migração da região de destino por um dos seguintes métodos.

    Do console do DTS

    1. Faça login no console do Data Transmission Service (DTS).

    2. No painel de navegação à esquerda, clique em Data Migration.

    3. No canto superior esquerdo da página, selecione a região onde a instância de migração está localizada.

    Do console do DMS

    Nota

    As operações reais podem variar de acordo com o modo e o layout do console do DMS. Para mais informações, consulte Simple mode console e Customize the layout and style of the DMS console.

    1. Faça login no console do Data Management (DMS).

    2. Na barra de menu superior, escolha Data + AI > Data Transmission (DTS) > Data Migration.

    3. À direita de Data Migration Tasks, selecione a região onde a instância de migração está localizada.

  2. Clique em Create Task para acessar a página de configuração da tarefa.

  3. Configure os bancos de dados source e de destino.

    Seção

    Parâmetro

    Descrição

    N/D

    Task Name

    O DTS gera automaticamente um nome para a tarefa. Recomendamos especificar um nome descritivo para facilitar a identificação. O nome não precisa ser exclusivo.

    Source Database

    Select Existing Connection

    • Para usar uma instância de banco de dados que foi added to the system (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco de dados abaixo serão configuradas automaticamente.

      Nota

      No console do DMS, este parâmetro é nomeado Select a DMS database instance..

    • Se não tiver registrado a instância do banco de dados no sistema ou não precisar usar uma instância registrada, configure manualmente as informações do banco de dados abaixo.

    Database Type

    Selecione MongoDB.

    Connection Type

    Selecione Alibaba Cloud Instance.

    Instance Region

    Selecione a região onde a instância source do ApsaraDB for MongoDB reside.

    Replicate Data Across Alibaba Cloud Accounts

    Neste exemplo, os dados são migrados na mesma conta do Alibaba Cloud. Selecione No.

    Architecture

    Neste exemplo, Replica Set está selecionado.

    Nota

    Se definir a Architecture como Sharded Cluster, também especifique Shard account e Shard password.

    Migration Method

    Selecione um método para a migração incremental de dados com base nos seus requisitos.

    • Oplog (Recomendado):

      Esta opção está disponível se o oplog estiver ativado para o banco de dados source.

      Nota

      O oplog é ativado por padrão tanto para bancos de dados MongoDB autogerenciados quanto para instâncias do ApsaraDB for MongoDB. Este método oferece menor latência para migração incremental de dados devido à extração de logs mais rápida. Portanto, recomendamos selecionar Oplog.

    • ChangeStream: Esta opção está disponível se os Change Streams estiverem ativados para o banco de dados source.

      Nota
      • Se o banco de dados source for uma instância do Amazon DocumentDB (cluster não elástico), selecione apenas ChangeStream.

      • Se definir a Architecture como Sharded Cluster para o banco de dados source, não será necessário inserir Shard account ou Shard password.

    Instance ID

    Selecione o ID da instância source do ApsaraDB for MongoDB.

    Authentication Database

    Insira o nome do banco de dados ao qual a conta da instância source do ApsaraDB for MongoDB pertence. O valor padrão é admin.

    Database Account

    Insira a conta do banco de dados da instância source do ApsaraDB for MongoDB.

    Database Password

    Insira a senha correspondente à conta do banco de dados.

    Encryption

    O DTS é compatível com três métodos de conexão: Non-encrypted, SSL-encrypted e Mongo Atlas SSL. As opções de Encryption variam com base no Access Method e na Architecture selecionados. As opções exibidas no console prevalecem.

    Nota
    • Um banco de dados MongoDB com Architecture definida como Sharded Cluster e Migration Method como Oplog não é compatível com SSL-encrypted.

    • Se a source for um banco de dados MongoDB autogerenciado (Access Method diferente de Alibaba Cloud Instance) com arquitetura Replica Set e você selecionar SSL-encrypted, o DTS também permitirá o upload de um certificado CA para verificar a conexão.

    Destination Database

    Select Existing Connection

    • Para usar uma instância de banco de dados que foi added to the system (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco de dados abaixo serão configuradas automaticamente.

      Nota

      No console do DMS, este parâmetro é nomeado Select a DMS database instance..

    • Se não tiver registrado a instância do banco de dados no sistema ou não precisar usar uma instância registrada, configure manualmente as informações do banco de dados abaixo.

    Database Type

    Selecione Lindorm.

    Connection Type

    Selecione Alibaba Cloud Instance.

    Instance Region

    Selecione a região onde a instância do Lindorm de destino reside.

    Instance ID

    Selecione o ID da instância do Lindorm de destino.

    Database Account

    Insira a conta do banco de dados da instância do Lindorm de destino.

    Database Password

    Insira a senha correspondente à conta do banco de dados.

  4. Após concluir a configuração, clique em Test Connectivity and Proceed na parte inferior da página.

    Nota
    • Garanta que o segmento de endereços IP do serviço DTS seja adicionado automática ou manualmente às configurações de segurança dos bancos de dados source e de destino para permitir o acesso a partir dos servidores do DTS. Para mais informações, consulte Add DTS server IP addresses to a whitelist.

    • Se o banco de dados source ou de destino for autogerenciado (o Access Method não é Alibaba Cloud Instance), clique também em Test Connectivity na caixa de diálogo CIDR Blocks of DTS Servers que aparece.

  5. Configure os objetos da tarefa.

    1. Na página Configure Objects, configure os objetos a serem migrados.

      Parâmetro

      Descrição

      Migration Types

      • Se precisar executar apenas uma migração completa, selecione Full Data Migration.

      • Para executar uma migração sem tempo de inatividade, selecione Full Data Migration e Incremental Data Migration.

      Nota

      Se não selecionar Incremental Data Migration, não grave novos dados na instância source durante a migração para garantir a consistência dos dados.

      Processing Mode of Conflicting Tables

      Mantenha as configurações padrão.

      Capitalization of Object Names in Destination Instance

      Configure a política de diferenciação de maiúsculas e minúsculas para os nomes dos objetos migrados, como bancos de dados e coleções, na instância de destino. Por padrão, DTS default policy está selecionado. Você também pode optar por manter a diferenciação de maiúsculas e minúsculas consistente com a política padrão do banco de dados source ou de destino. Para mais informações, consulte Case sensitivity of object names in the destination database.

      Source Objects

      No painel Source Objects, clique nas coleções a serem migradas e clique no ícone Seta para a direita para movê-las para o painel Selected Objects.

      Selected Objects

      Se a tabela larga de destino foi criada com o Lindorm SQL, adicione novas colunas para a migração de dados. O DTS não migrará colunas não configuradas.

      1. Edite o mapeamento do nome do banco de dados.

        1. No painel Selected Objects, clique com o botão direito no banco de dados que contém a coleção a ser migrada.

        2. Altere o Schema Name para o nome do banco de dados de destino no Lindorm.

          image.png

        3. Opcional: Na seção Select DDL and DML Operations to Be Synchronized, selecione as operações para migração incremental.

        4. Clique em OK.

      2. Edite o mapeamento do nome da tabela.

        1. No painel Selected Objects, clique com o botão direito na coleção a ser migrada.

        2. Altere o Table Name para o nome da tabela de destino no Lindorm.

          image.png

        3. Opcional: Especifique as condições de filtro. Para mais informações, consulte Filter task data with an SQL condition.

        4. Opcional: Na seção Select DDL and DML Operations to Be Synchronized, selecione as operações para migração incremental.

      3. Configure os campos a serem migrados do MongoDB.

        Por padrão, o DTS mapeia os dados da coleção a ser migrada e configura uma expressão na coluna Parameter Value. Verifique se a expressão atende aos seus requisitos e configure parâmetros como Column Name, Type, Length e Precision.

        1. Na coluna Parameter Value, visualize o nome do campo da linha no MongoDB na expressão bson_value().

          A string em "" especifica o nome do campo no MongoDB. Por exemplo, se a expressão for bson_value("age"), os dados nesta linha correspondem ao campo age no MongoDB.

        2. Opcional: Exclua os campos que não deseja migrar.

          Nota

          Para excluir um campo indesejado, clique no ícone imagem na linha do campo.

        3. Configure os campos a serem migrados.

          Tome medidas adicionais dependendo se a expressão bson_value() atende aos seus requisitos.

          Expressões correspondentes

          1. Insira um Column Name.

            Nota

            Insira o nome da coluna de destino na tabela do Lindorm.

            • Se a tabela de destino for criada com SQL, defina Column Name como o nome da coluna de destino na tabela do Lindorm.

            • Se a tabela de destino for criada com a API do HBase e for necessário adicionar novas colunas, adicione mapeamentos de colunas antes de modificar os nomes das colunas. Para mais informações, consulte Example of adding column mappings for a table created by calling the Apache HBase API. Defina Column Name com base nas seguintes regras:

              • Se a coluna for uma chave primária, defina o nome como ROW.

              • Se a coluna não for uma chave primária, use o formato column family:column name. Exemplo: person:name.

          2. Selecione um Type de dados para a coluna.

            Importante

            Certifique-se de que o tipo de dados da tabela de destino seja compatível com o tipo de dados no banco de dados MongoDB source.

          3. Opcional: Configure o Length e a Precision dos dados da coluna.

          4. Repita as etapas anteriores para mapear cada campo necessário.

          Expressões personalizadas

          Nota

          Por exemplo, campos com relacionamentos hierárquicos (estruturas pai-filho).

          1. Na coluna Actions, clique no ícone imagem na linha do campo.

          2. Clique em + Add Column. imagem

          3. Configure o Column Name, Type, Length e Precision.

          4. Na caixa de texto sob Parameter Value, insira a expressão bson_value(). Para mais informações, consulte Value Configuration Example.

            Importante
            • A coluna de chave primária da tabela de destino deve receber o valor bson_value("_id").

            • Ao configurar a expressão bson_value(), especifique o caminho para o subcampo de nível mais baixo. Caso contrário, pode haver perda de dados ou falha na tarefa.

          5. Repita as etapas anteriores para mapear cada campo necessário.

      4. Clique em OK.

    2. Clique em Next: Advanced Settings para configurar parâmetros avançados.

      Parâmetro

      Descrição

      Dedicated Cluster for Task Scheduling

      Por padrão, o DTS agenda tarefas em um cluster compartilhado, não sendo necessário selecionar um. Se desejar tarefas mais estáveis, compre um dedicated cluster para executar tarefas de migração do DTS.

      Retry Time for Failed Connections

      Após o início da tarefa de migração, se a conexão com o banco de dados source ou de destino falhar, o DTS relatará um erro e começará imediatamente a tentar reconectar. A duração padrão de nova tentativa é de 720 minutos. Personalize o tempo de nova tentativa para um valor de 10 a 1440 minutos. Recomendamos definir a duração para mais de 30 minutos. Se o DTS se reconectar aos bancos de dados source e de destino dentro da duração especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.

      Nota
      • Para várias instâncias do DTS que compartilham a mesma source ou destino, o tempo de nova tentativa de rede é determinado pela configuração da última tarefa criada.

      • Como há cobrança pela tarefa durante o período de nova tentativa de conexão, recomendamos personalizar o tempo de nova tentativa com base nas suas necessidades de negócios ou liberar a instância do DTS o mais rápido possível após a liberação das instâncias dos bancos de dados source e de destino.

      Retry Time for Other Issues

      Após o início da tarefa de migração, se ocorrer um problema que não seja de conectividade, como uma exceção de execução de DDL ou DML no banco de dados source ou de destino, o DTS relatará um erro e começará imediatamente a tentar repetir a operação. A duração padrão de nova tentativa é de 10 minutos. Personalize o tempo de nova tentativa para um valor de 1 a 1440 minutos. Recomendamos definir a duração para mais de 10 minutos. Se as operações relacionadas forem bem-sucedidas dentro da duração especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.

      Importante

      O valor de Retry Time for Other Issues deve ser menor que o valor de Retry Time for Failed Connections.

      Enable Throttling for Full Data Migration

      Durante a migração completa, o DTS consome recursos de leitura e gravação nos bancos de dados source e de destino, o que pode aumentar a carga do banco de dados. Se necessário, ative o limitador para a tarefa de migração completa. Defina Queries per second (QPS) to the source database, RPS of Full Data Migration e Data migration speed for full migration (MB/s) para reduzir a carga no banco de dados de destino.

      Nota
      • Este item de configuração está disponível apenas se você selecionar Full Data Migration para Migration Types.

      • Você também pode adjust the full migration speed após a instância de migração estar em execução.

      Only one data type for primary key _id in a table of the data to be synchronized

      Nos dados a serem migrados, o tipo de dados da chave primária _id é uniforme dentro de uma única coleção?

      Importante
      • Selecione uma opção com base nos seus requisitos. Caso contrário, pode haver perda de dados.

      • Este parâmetro está disponível apenas se você selecionar Full Data Migration para Migration Types.

      • Yes: O tipo de dados é único. Durante a migração completa, o DTS não verifica os tipos de dados das chaves primárias nos dados da source. Para uma única coleção, o DTS migra apenas os dados correspondentes a um tipo de dados de chave primária.

      • No: O tipo de dados não é único. Durante a migração completa, o DTS verifica os tipos de dados das chaves primárias nos dados da source e migra todos os dados.

      Enable Throttling for Incremental Data Migration

      Se necessário, defina limites de velocidade para a tarefa de migração incremental. Defina RPS of Incremental Data Migration e Data migration speed for incremental migration (MB/s) para reduzir a carga no banco de dados de destino.

      Nota
      • Este item de configuração está disponível apenas se você selecionar Incremental Data Migration para Migration Types.

      • Você também pode adjust the incremental migration speed após a instância de migração estar em execução.

      Environment Tag

      Selecione uma tag de ambiente para identificar a instância com base nos seus requisitos de negócios. Neste exemplo, não é necessário selecionar uma tag.

      Configure ETL

      Com base nas suas necessidades de negócios, selecione se deseja configurar o ETL feature para processar dados.

      Nota

      Se a tabela de destino for criada com a API do HBase, observe o seguinte:

      • A sintaxe ETL inclui colunas a serem configuradas e colunas a serem excluídas. Durante a migração, todos os campos de nível superior dos documentos do MongoDB para os quais o ETL está configurado são armazenados na família de colunas padrão f da tabela do HBase. O exemplo a seguir mostra como gravar todos os elementos, exceto os elementos de nível superior _id e name, como colunas dinâmicas na tabela de destino. Para mais informações, consulte Example of configuring an ETL task for a table created by calling the Apache HBase API.

        script:e_expand_bson_value("*", "_id,name")
      • Se precisar usar os recursos de nova coluna e ETL, certifique-se de que não existam dados duplicados na instância do Lindorm.

      • As colunas para as quais nem a nova coluna nem o recurso ETL estão configurados não são migradas para o banco de dados de destino.

      Monitoring and Alerting

      Selecione se deseja definir alertas e receber notificações de alerta com base nas suas necessidades de negócios.

      • No: Não define um alerta.

      • Yes: Configure alertas definindo um alert threshold e notificações de alerta. Se uma migração falhar ou a latência exceder o limiar, o sistema enviará uma notificação de alerta.

  6. Salve a tarefa e execute uma pré-verificação.

    • Para visualizar os parâmetros de configuração desta instância ao chamar a operação da API, mova o ponteiro sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters na dica que aparece.

    • Se não precisar visualizar ou já tiver terminado de visualizar os parâmetros da API, clique em Next: Save Task Settings and Precheck na parte inferior da página.

    Nota
    • Antes do início da tarefa de migração, o DTS realiza uma pré-verificação. A tarefa só é iniciada após ser aprovada na pré-verificação.

    • Se a pré-verificação falhar, clique em View Details ao lado do item com falha, corrija o problema com base no aviso e execute a pré-verificação novamente.

    • Se um aviso for relatado durante a pré-verificação:

      • Para itens de verificação que não podem ser ignorados, clique em View Details ao lado do item com falha, corrija o problema com base no aviso e execute a pré-verificação novamente.

      • Para itens de verificação que podem ser ignorados, clique em Confirm Alert Details, Ignore, OK e Precheck Again para pular o item de alerta e executar a pré-verificação novamente. Se optar por ignorar um aviso, isso pode causar problemas como inconsistência de dados e representar riscos para o seu negócio.

  7. Compre a instância.

    1. Quando a Success Rate for 100%, clique em Next: Purchase Instance.

    2. Na página Purchase, selecione a especificação do link para a instância de migração de dados. Para mais informações, consulte a tabela a seguir.

      Categoria

      Parâmetro

      Descrição

      New Instance Class

      Resource Group Settings

      Selecione o grupo de recursos ao qual a instância pertence. O valor padrão é default resource group. Para mais informações, consulte What is resource management?

      Instance Class

      O DTS fornece especificações de migração com diferentes níveis de desempenho. A especificação do link afeta a velocidade de migração. Selecione uma especificação com base no seu cenário de negócios. Para mais informações, consulte Data migration link specifications.

    3. Após concluir a configuração, leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms.

    4. Clique em Buy and Start. Na caixa de diálogo OK que aparece, clique em OK.

      Visualize o progresso da tarefa de migração na página de lista Data Migration Tasks.

      Nota
      • Se a tarefa de migração não incluir migração incremental, ela será interrompida automaticamente após a conclusão da migração completa. Após a interrupção da tarefa, o Status muda para Completed.

      • Se a tarefa de migração incluir migração incremental, ela não será interrompida automaticamente. A tarefa de migração incremental continua em execução. Enquanto a tarefa de migração incremental estiver em execução, o Status da tarefa será Running.

Mapeamento de colunas da tabela HBase

Este exemplo mostra os comandos a serem executados no SQL Shell.

Nota

Este recurso requer o Lindorm 2.4.0 ou posterior.

  1. Adicione um mapeamento de colunas à tabela do HBase.

    ALTER TABLE test MAP DYNAMIC COLUMN f:_mongo_id_ HSTRING/HINT/..., person:name HSTRING, person:age HINT;
  2. Crie um índice secundário na tabela do HBase.

    CREATE INDEX idx ON test(f:_mongo_id_);

Migração de tabela HBase (ETL)

Documento do MongoDB

{
  "_id" : 0,
  "person" : {
    "name" : "cindy0",
    "age" : 0,
    "student" : true
  }
}

Instrução ETL

script:e_expand_bson_value("*", "_id")

Resultado da migração

迁移结果

Exemplo de configuração de atribuição

Estrutura do ApsaraDB for MongoDB source

{
  "_id":"62cd344c85c1ea6a2a9f****",
  "person":{
    "name":"neo",
    "age":"26",
    "sex":"male"
  }
}

Esquema da tabela do Lindorm de destino

Parâmetro

Tipo

id

STRING

person_name

STRING

person_age

BIGINT

Configuração de coluna adicional

Importante

Configure a expressão bson_value() de acordo com a hierarquia de dados para evitar perda de dados ou falha na tarefa. Por exemplo, se configurar a expressão como bson_value("person"), o Data Transmission Service (DTS) não poderá gravar alterações incrementais dos subcampos do objeto person da source, como name, age e sex, no destino.

Parâmetro

Tipo

Valor

id

STRING

bson_value("_id")

person_name

STRING

bson_value("person","name")

person_age

BIGINT

bson_value("person","age")