O DTS migra dados para uma instância de cluster com sharding do MongoDB e define um valor padrão para a chave de sharding quando esta estiver ausente na origem. Este exemplo utiliza uma instância de conjunto de réplicas do ApsaraDB for MongoDB como origem e uma instância de cluster com sharding do ApsaraDB for MongoDB como destino.
Pré-requisitos
-
Crie uma instância de cluster com sharding do ApsaraDB for MongoDB de destino. Criar uma instância de cluster com sharding.
NotaSe a instância de origem do ApsaraDB for MongoDB utilizar arquitetura de cluster com sharding, garanta que cada shard possua um endpoint e que todos os shards utilizem a mesma conta e senha. Solicitar um endpoint de shard.
Versões de banco de dados suportadas: Cenários de migração.
A capacidade de armazenamento da instância de destino do ApsaraDB for MongoDB deve ser pelo menos 10% maior que o armazenamento utilizado pela instância de origem do ApsaraDB for MongoDB.
-
Na instância de destino do ApsaraDB for MongoDB, crie os bancos de dados e coleções que exigem sharding, configure o sharding, ative o balanceador e pré-divida as coleções. Configurar sharding para maximizar o desempenho do shard. Como lidar com distribuição desigual de dados em um cluster com sharding do MongoDB.
NotaO sharding impede o acúmulo de dados em um único shard e maximiza o desempenho do cluster. Ativar o balanceador e pré-dividir as coleções ajuda a evitar distorção de dados.
Limitações
|
Tipo |
Descrição |
|
Limitações do banco de dados de origem |
|
|
Outras limitações |
|
|
Casos especiais |
Se o banco de dados de origem for um MongoDB auto-gerenciado:
Nota
Ao migrar um banco de dados inteiro, você também pode criar um heartbeat atualizando ou gravando dados a cada segundo. |
Faturamento
|
Tipo de migração |
Taxa de configuração da instância |
Taxa de tráfego de Internet |
|
Migração de esquema e migração completa de dados |
Gratuito. |
Quando o parâmetro Access Method do banco de destino estiver definido como Public IP Address, haverá cobrança de tráfego de Internet. Para mais informações, consulte Visão geral de faturamento. |
|
Migração incremental de dados |
Pago. Para mais informações, consulte Visão geral de faturamento. |
Tipos de migração
|
Tipo |
Descrição |
|
migração de esquema |
Migra o esquema dos objetos de migração do ApsaraDB for MongoDB de origem para o ApsaraDB for MongoDB de destino. Nota
A migração de esquema suporta bancos de dados, coleções e índices. |
|
migração completa de dados |
Migra todos os dados existentes dos objetos de migração do ApsaraDB for MongoDB de origem para o ApsaraDB for MongoDB de destino. Nota
A migração completa suporta dados em bancos de dados e coleções. |
|
migração incremental de dados |
Além da migração completa, permite migrar atualizações incrementais do ApsaraDB for MongoDB de origem para o ApsaraDB for MongoDB de destino. OplogA migração incremental não suporta bancos de dados criados após o início da tarefa. As seguintes atualizações incrementais são suportadas:
Change streamAs seguintes atualizações incrementais são suportadas:
|
Permissões de conta de banco de dados
|
Banco de dados |
Migração de esquema |
Migração completa de dados |
Migração incremental de dados |
|
instância ApsaraDB for MongoDB de origem |
Permissões de leitura nos bancos de dados a serem migrados e no banco |
Permissões de leitura nos bancos de dados a serem migrados, além dos bancos |
|
|
instância ApsaraDB for MongoDB de destino |
Permissão |
||
Conceda as permissões necessárias nas instâncias de origem e destino do ApsaraDB for MongoDB. Gerenciar permissões de usuários de banco de dados MongoDB.
Procedimento
-
Acesse a página da lista de tarefas de migração da região de destino usando um dos métodos abaixo.
Pelo console do DTS
Faça login no console do Data Transmission Service (DTS).
No painel de navegação à esquerda, clique em Data Migration.
No canto superior esquerdo da página, selecione a região onde a instância de migração está localizada.
Pelo console do DMS
NotaAs operações reais podem variar conforme o modo e o layout do console DMS. Para mais informações, consulte Console no modo Simples e Personalizar o layout e estilo do console DMS.
Faça login no console do Data Management (DMS).
Na barra de menu superior, escolha .
À direita de Data Migration Tasks, selecione a região onde a instância de migração está localizada.
Clique em Create Task para acessar a página de configuração da tarefa.
-
Configure os bancos de dados de origem e destino.
Categoria
Parâmetro
Descrição
N/A
Task Name
O DTS gera automaticamente um nome para a tarefa. Especifique um nome descritivo para facilitar a identificação. O nome não precisa ser único.
Source Database
Select Existing Connection
-
Para usar uma instância de banco de dados já adicionada ao sistema (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco abaixo serão configuradas automaticamente.
NotaNo console DMS, este parâmetro chama-se Select a DMS database instance..
-
Se você não registrou a instância no sistema ou não precisa usar uma instância registrada, configure manualmente as informações do banco abaixo.
Database Type
Selecione MongoDB.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região da instância ApsaraDB for MongoDB de origem.
Replicate Data Across Alibaba Cloud Accounts
Neste exemplo, utiliza-se uma instância de banco de dados da conta Alibaba Cloud atual. Selecione No.
Architecture
Neste exemplo, selecione Replica Set.
-
Replica Set: Alta disponibilidade e divisão de leitura/gravação com múltiplos tipos de nós. Instâncias de conjunto de réplicas.
-
Sharded Cluster: Composto pelos componentes Mongos, Shard e ConfigServer, com contagens e configurações de nós personalizáveis. Instâncias de cluster com sharding.
NotaAo definir Architecture como Sharded Cluster, é obrigatório especificar Shard account e Shard password.
Migration Method
Escolha um método para migração incremental conforme suas necessidades.
-
Oplog (Recomendado):
Esta opção está disponível se o oplog estiver habilitado no banco de origem.
NotaO oplog vem habilitado por padrão tanto em bancos MongoDB auto-gerenciados quanto em instâncias ApsaraDB for MongoDB. Este método oferece menor latência na migração incremental devido à extração mais rápida de logs. Portanto, selecione Oplog.
-
ChangeStream: Esta opção está disponível se Change Streams estiverem habilitados no banco de origem.
Nota-
Se a origem for uma instância Amazon DocumentDB (cluster não elástico), apenas ChangeStream pode ser selecionado.
-
Ao definir Architecture como Sharded Cluster na origem, não é necessário inserir Shard account ou Shard password.
-
Instance ID
Selecione o ID da instância ApsaraDB for MongoDB de origem.
Authentication Database
Banco de autenticação da instância ApsaraDB for MongoDB de origem. Padrão: admin.
Database Account
Insira a conta do banco de dados da instância ApsaraDB for MongoDB de origem. Permissões necessárias para contas de banco de dados.
Database Password
Insira a senha correspondente à conta do banco de dados.
Encryption
O DTS suporta três métodos de conexão: Non-encrypted, SSL-encrypted e Mongo Atlas SSL. As opções de Encryption variam conforme o Access Method e a Architecture selecionados. Prevalecem as opções exibidas no console.
Nota-
Bancos MongoDB com Architecture definida como Sharded Cluster e Migration Method como Oplog não suportam SSL-encrypted.
-
Se a origem for um banco MongoDB auto-gerenciado (Access Method diferente de Alibaba Cloud Instance) com arquitetura Replica Set, e você selecionar SSL-encrypted, o DTS também permite enviar um certificado CA para verificar a conexão.
Destination Database
Select Existing Connection
-
Para usar uma instância de banco de dados já adicionada ao sistema (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco abaixo serão configuradas automaticamente.
NotaNo console DMS, este parâmetro chama-se Select a DMS database instance..
-
Se você não registrou a instância no sistema ou não precisa usar uma instância registrada, configure manualmente as informações do banco abaixo.
Database Type
Selecione MongoDB.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região da instância ApsaraDB for MongoDB de destino.
Replicate Data Across Alibaba Cloud Accounts
Neste exemplo, utiliza-se uma instância de banco de dados da conta Alibaba Cloud atual. Selecione No.
Architecture
Neste exemplo, selecione Sharded Cluster.
Instance ID
Selecione o ID da instância ApsaraDB for MongoDB de destino.
Authentication Database
Banco de autenticação da instância ApsaraDB for MongoDB de destino. Padrão: admin.
Database Account
Insira a conta do banco de dados da instância ApsaraDB for MongoDB de destino. Permissões necessárias para contas de banco de dados.
Database Password
Insira a senha correspondente à conta do banco de dados.
Encryption
O DTS suporta três métodos de conexão: Non-encrypted, SSL-encrypted e Mongo Atlas SSL. As opções de Encryption variam conforme o Access Method e a Architecture selecionados. Prevalecem as opções exibidas no console.
Nota-
Bancos MongoDB com Architecture definida como Sharded Cluster não suportam SSL-encrypted.
-
Se o destino for um banco MongoDB auto-gerenciado (Access Method diferente de Alibaba Cloud Instance) com arquitetura Replica Set, e você selecionar SSL-encrypted, o DTS também permite enviar um certificado CA para verificar a conexão.
-
-
Após concluir a configuração, clique em Test Connectivity and Proceed na parte inferior da página.
NotaGaranta que o segmento de endereços IP do serviço DTS esteja adicionado, automática ou manualmente, às configurações de segurança dos bancos de origem e destino para permitir acesso dos servidores DTS. Para mais informações, consulte Adicionar IPs de servidores DTS à lista de permissões.
Se a origem ou o destino for um banco auto-gerenciado (onde Access Method não é Alibaba Cloud Instance), clique também em Test Connectivity na caixa de diálogo CIDR Blocks of DTS Servers que aparecer.
-
Configure os objetos da tarefa.
-
Na página Configure Objects, configure os objetos que deseja migrar.
Parâmetro
Descrição
Migration Types
-
Para realizar apenas migração completa, selecione Schema Migration e Full Data Migration.
-
Para uma migração sem tempo de inatividade, selecione Schema Migration, Full Data Migration e Incremental Data Migration.
Nota-
Caso não selecione Schema Migration, garanta que exista um banco de dados e tabelas para receber os dados no destino. Também é possível usar o recurso de mapeamento de nomes de objetos na caixa Selected Objects, conforme necessário.
-
Se não selecionar Incremental Data Migration, não grave novos dados na instância de origem durante a migração para garantir consistência.
Processing Mode of Conflicting Tables
-
Precheck and Report Errors: Verifica se existem coleções com o mesmo nome no banco de destino. Se não existirem, a pré-verificação é aprovada. Se existirem, um erro é reportado e a tarefa de migração não inicia.
NotaSe uma coleção no destino tiver o mesmo nome e não puder ser facilmente excluída ou renomeada, altere o nome da coleção no destino. Para mais informações, consulte Mapeamento de nomes de objetos.
-
Ignore Errors and Proceed: Ignora a verificação de coleções com nomes iguais.
AvisoSelecionar Ignore Errors and Proceed pode causar inconsistência de dados e riscos ao negócio. Por exemplo:
-
Se um registro no destino tiver o mesmo valor de chave primária que um registro na origem, o registro do destino é mantido. O registro da origem não é migrado.
-
A inicialização de dados pode falhar, apenas parte dos dados pode ser migrada ou a migração pode falhar completamente.
-
Capitalization of Object Names in Destination Instance
Configure a política de diferenciação de maiúsculas/minúsculas para nomes de objetos migrados, como bancos, tabelas e colunas, na instância de destino. Por padrão, DTS default policy está selecionado. Também é possível manter a sensibilidade consistente com a política padrão da origem ou do destino. Para mais informações, consulte Sensibilidade a maiúsculas/minúsculas de nomes de objetos no banco de destino.
Source Objects
Na caixa Source Objects, clique nos objetos a migrar e depois clique em
para movê-los para a caixa Selected Objects.NotaSelecione bancos de dados ou coleções como objetos de migração.
Selected Objects
-
Para renomear o banco de dados de destino:
Clique com o botão direito no banco de destino em Selected Objects. Na caixa de diálogo Edit Schema, insira o novo nome no campo Schema Name. Mapear nomes individuais de objetos.
-
Para renomear a coleção de destino:
Clique com o botão direito na coleção de destino em Selected Objects. Na caixa de diálogo Edit Table, insira o novo nome no campo Table Name.
ImportanteDisponível apenas quando coleções forem selecionadas como objetos de migração.
Nota-
Para filtrar dados, clique com o botão direito na coleção no painel Selected Objects e configure condições de filtro. A filtragem de dados é suportada apenas na migração completa. Definir condições de filtro.
-
O mapeamento de nomes de objetos pode causar falha na migração de objetos dependentes.
-
-
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 é necessário selecionar um. Para tarefas mais estáveis, adquira um cluster dedicado para executar tarefas de migração do DTS.
Retry Time for Failed Connections
Após o início da tarefa, se a conexão com a origem ou destino falhar, o DTS reporta um erro e começa imediatamente a tentar reconectar. A duração padrão de tentativa é de 720 minutos. Personalize o tempo de tentativa entre 10 e 1440 minutos. Defina uma duração superior a 30 minutos. Se o DTS reconectar à origem e ao destino dentro do período especificado, a tarefa retoma automaticamente. Caso contrário, a tarefa falha.
Nota-
Para múltiplas instâncias DTS compartilhando a mesma origem ou destino, o tempo de tentativa de rede é determinado pela configuração da última tarefa criada.
-
Como há cobrança pela tarefa durante o período de tentativa de conexão, personalize o tempo conforme a necessidade do negócio ou libere a instância DTS assim que possível após a liberação das instâncias de banco de origem e destino.
Retry Time for Other Issues
Após o início da tarefa, se ocorrer um problema não relacionado à conexão, como exceção na execução de DDL ou DML na origem ou destino, o DTS reporta um erro e começa imediatamente a tentar novamente a operação. A duração padrão é de 10 minutos. Personalize o tempo entre 1 e 1440 minutos. Defina mais de 10 minutos. Se as operações forem bem-sucedidas dentro do período especificado, a tarefa retoma automaticamente. Caso contrário, a tarefa falha.
ImportanteO 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 na origem e no destino, podendo aumentar a carga do banco. Se necessário, ative o limitador de taxa 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 destino.
Nota-
Este item de configuração está disponível apenas se Full Data Migration estiver selecionado em Migration Types.
-
Também é possível ajustar a velocidade da migração completa 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 dado da chave primária
_idé uniforme dentro de uma única coleção?Importante-
Selecione uma opção conforme suas necessidades. Caso contrário, pode ocorrer perda de dados.
-
Este parâmetro está disponível apenas se Full Data Migration estiver selecionado em Migration Types.
-
Yes: O tipo de dado é único. Durante a migração completa, o DTS não verifica os tipos de chaves primárias nos dados de origem. Para uma única coleção, o DTS migra apenas os dados correspondentes a um tipo de chave primária.
-
No: O tipo de dado não é único. Durante a migração completa, o DTS verifica os tipos de chaves primárias nos dados de origem 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. Configure RPS of Incremental Data Migration e Data migration speed for incremental migration (MB/s) para reduzir a carga no banco de destino.
Nota-
Este item de configuração está disponível apenas se Incremental Data Migration estiver selecionado em Migration Types.
-
Também é possível ajustar a velocidade da migração incremental após a instância de migração estar em execução.
Environment Tag
Opcional. Selecione uma tag de ambiente para identificar a instância.
Configure ETL
Conforme a necessidade do negócio, escolha se deseja configurar o recurso ETL para processar dados.
-
Yes: Configura o recurso ETL. É necessário inserir instruções de processamento de dados na caixa de texto.
-
No: Não configura o recurso ETL.
Monitoring and Alerting
Decida se deseja configurar alertas e receber notificações conforme a necessidade do negócio.
-
No: Não configura alerta.
-
Yes: Configure alertas definindo um limiar de alerta e um notificações de alerta. Se a migração falhar ou a latência exceder o limiar, o sistema envia uma notificação de alerta.
-
-
Clique em Next: Data Validation para configurar uma tarefa de validação de dados.
Para mais informações sobre o recurso de validação de dados, consulte Configurar validação de dados.
-
Clique em Next: Configure Database and Table Fields para definir o valor padrão da ShardKey.
-
Na linha da coleção de destino, clique em Set Default Value.
NotaSe o Number of Shard Keys de um Table Name (coleção) for 0, a coleção não possui chave de sharding e nenhum valor padrão é necessário.
-
Selecione o Shard key default value type.
NotaO Shard key default value type suporta apenas string e int.
-
Defina o Default Value para a ShardKey.
ImportanteO valor padrão tem efeito apenas para instâncias de destino anteriores à versão 4,4.
Defina um valor padrão para todas as ShardKeys dos objetos de migração. Caso contrário, um aviso ocorrerá durante a fase de Precheck e a tarefa poderá falhar.
-
-
-
Salve a tarefa e execute a pré-verificação.
Para visualizar os parâmetros de configuração desta instância ao chamar a API, passe o ponteiro sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters no balão que aparecer.
Se não precisar visualizar ou já tiver visualizado os parâmetros da API, clique em Next: Save Task Settings and Precheck na parte inferior da página.
NotaAntes do início da tarefa de migração, o DTS realiza uma pré-verificação. A tarefa só inicia após ser aprovada na pré-verificação.
Se a pré-verificação falhar, clique em View Details ao lado do item reprovado, corrija o problema conforme a orientação e execute a pré-verificação novamente.
-
Se um aviso for reportado durante a pré-verificação:
Para itens de verificação que não podem ser ignorados, clique em View Details ao lado do item reprovado, corrija o problema conforme a orientação 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 aviso e executar a pré-verificação novamente. Optar por ignorar um aviso pode causar problemas como inconsistência de dados e representar riscos ao seu negócio.
-
Adquira a instância.
Quando a Success Rate for 100%, clique em Next: Purchase Instance.
-
Na página Purchase, selecione a especificação de 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 é o grupo de recursos padrão. Para mais informações, consulte O que é Resource Management?
Instance Class
O DTS oferece especificações de migração com diferentes níveis de desempenho. A especificação do link afeta a velocidade da migração. Selecione uma especificação baseada no seu cenário de negócio. Para mais informações, consulte Especificações de link de migração de dados.
Após concluir a configuração, leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms.
-
Clique em Buy and Start. Na caixa de diálogo OK que aparecer, clique em OK.
Acompanhe o progresso da tarefa de migração na página de lista Data Migration Tasks.
NotaSe a tarefa não incluir migração incremental, ela para automaticamente após a conclusão da migração completa. Após a parada, o Status muda para Completed.
Se a tarefa incluir migração incremental, ela não para automaticamente. A tarefa de migração incremental continua em execução. Enquanto estiver ativa, o Status da tarefa será Running.