O Data Transmission Service (DTS) oferece suporte a diversos cenários, como migração de recursos, consolidação de contas e ajustes na arquitetura de negócios.
Pré-requisitos
Crie uma instância de destino Tair (Redis OSS-Compatible) com capacidade de armazenamento superior ao espaço utilizado na instância de origem Tair (Redis OSS-Compatible).
Para obter informações sobre as versões compatíveis, consulte Overview of data synchronization scenarios.
Contexto
Este tópico descreve como sincronizar dados de uma instância Redis de origem em uma conta da Alibaba Cloud (Conta A) para uma instância de destino em outra conta (Conta B).
Para utilizar o DTS na sincronização unidirecional de dados do Tair (Redis OSS-Compatible) entre contas, configure a tarefa conforme descrito abaixo.
|
Etapa |
Descrição |
|
1. Acesse o console de gerenciamento da Alibaba Cloud com a conta proprietária do banco de dados de origem e configure a autorização da função RAM. Para mais informações, consulte Configure RAM authorization for cross-account DTS tasks. |
Configure uma função RAM para definir a conta da Alibaba Cloud proprietária do banco de dados de destino como conta confiável e autorize-a a acessar os recursos cloud da conta atual. |
|
2. Acesse o console de gerenciamento da Alibaba Cloud com a conta principal proprietária do banco de dados de destino e configure a tarefa de sincronização de dados. Para mais informações, consulte Procedure. |
O DTS lê diretamente as informações da instância Redis de origem entre contas da Alibaba Cloud. |
Limitações
|
Tipo |
Descrição |
|
Limitações do banco de dados de origem |
|
|
Outras limitações |
|
Faturamento
|
Tipo |
Taxa |
|
Sincronização completa de dados |
Gratuita. |
|
Sincronização incremental de dados |
Cobrada. Para detalhes, consulte Billing overview. |
Comandos de sincronização incremental
Edição | Comandos |
Tair (Redis OSS-Compatible) Open-Source Edition |
|
Tair (Redis OSS-Compatible) Enterprise Edition |
|
O comando
PUBLISHnão é sincronizado.Para scripts Lua invocados com
EVALouEVALSHA, o DTS não garante que os scripts sejam executados com sucesso no destino durante a sincronização incremental de dados. Isso ocorre porque o destino não retorna explicitamente um resultado de execução.Para tipos de dados List, o DTS não limpa os dados existentes no destino ao retransmitir dados com
syncoupsync. Isso pode resultar em dados duplicados.
Preparação
Acesse o console de gerenciamento da Alibaba Cloud com a conta principal proprietária da instância Redis de origem. Em seguida, crie uma função RAM que conceda à conta principal da instância de destino permissão para acessar a instância de origem. Para mais informações, consulte Configure RAM authorization for cross-account DTS tasks.
Procedimento
Este tópico utiliza um banco de dados de origem entre contas para demonstrar como configurar uma instância de sincronização para esse cenário. Para mais informações, consulte Configure RAM authorization for cross-account DTS tasks.
-
Acesse a conta principal proprietária da instância de destino e vá para a página da lista de tarefas de sincronização.
Pelo console do DTS
No painel de navegação à esquerda, clique em Data Synchronization.
No canto superior esquerdo da página, selecione a região onde a instância de sincronização está localizada.
Pelo console do DMS
NotaAs operações reais podem variar dependendo do modo e layout do console do DMS. Para mais informações, consulte Simple mode e Customize the layout and style of the DMS interface.
Acesse o Data Management (DMS).
Na barra de menu superior, escolha .
À direita de Data Synchronization Tasks, selecione a região onde a instância de sincronização está localizada.
Clique em Create Task para abrir a página de configuração da tarefa.
-
Configure os bancos de dados de origem e destino.
AvisoApós selecionar as instâncias de origem e destino, leia atentamente os limites exibidos no topo da página. O não cumprimento desses limites pode causar falha na tarefa ou inconsistência de dados.
Categoria
Parâmetro
Descrição
N/A
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 único.
Source Database
Select Existing Connection
-
Para usar uma instância de banco de dados que foi added to the system (recém-criada ou salva), selecione a instância na lista suspensa. As informações do banco de dados serão configuradas automaticamente.
NotaNo console do DMS, este item de configuração chama-se Select a DMS database instance..
-
Se você não adicionou a instância de banco de dados ao sistema ou não precisa usar uma instância já adicionada, configure manualmente as seguintes informações do banco de dados.
Database Type
Selecione Tair/Redis.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região onde reside a instância Tair (Redis OSS-Compatible) de origem.
Replicate Data Across Alibaba Cloud Accounts
Selecione Yes.
NotaEste recurso suporta comunicação entre sites, permitindo que contas na Alibaba Cloud (China) e Alibaba Cloud (International) se comuniquem entre si.
Alibaba Cloud Account
Insira o ID da conta principal proprietária da instância Tair (Redis OSS-Compatible) de origem.
NotaPara informações sobre como obter o ID, consulte Obtain the ID of the primary account that owns the source database.
RAM Role Name
Insira o nome da função RAM criada usando a conta principal proprietária do banco de dados de origem. Exemplo: ram-for-dts.
NotaPara informações sobre como criar uma função RAM, consulte Step 1: Create a RAM role.
Instance ID
Selecione o ID da instância Tair (Redis OSS-Compatible) de origem.
Authentication Method
Database Password
Insira a senha da conta da instância Tair (Redis OSS-Compatible) de origem. A conta deve ter permissões de leitura. Se esqueceu a senha, redefina-a. Para mais informações, consulte Modify or reset the password.
Para a conta padrão (nomeada com o ID da instância), insira apenas a senha.
Para uma conta recém-criada, use o formato
<custom_account>:<password>. Exemplo:testaccount:Test1234.
NotaEste parâmetro é opcional. Deixe-o em branco se nenhuma senha estiver definida.
Encryption
Destination Database
Select Existing Connection
-
Para usar uma instância de banco de dados que foi added to the system (recém-criada ou salva), selecione a instância na lista suspensa. As informações do banco de dados serão configuradas automaticamente.
NotaNo console do DMS, este item de configuração chama-se Select a DMS database instance..
-
Se você não adicionou a instância de banco de dados ao sistema ou não precisa usar uma instância já adicionada, configure manualmente as seguintes informações do banco de dados.
Database Type
Selecione Tair/Redis.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região onde reside a instância Tair (Redis OSS-Compatible) de destino.
Replicate Data Across Alibaba Cloud Accounts
Neste exemplo, a sincronização é para uma instância de origem entre contas. Selecione No.
Instance ID
Selecione o ID da instância Tair (Redis OSS-Compatible) de destino.
Authentication Method
Database Password
Insira a senha da conta da instância Tair (Redis OSS-Compatible) de destino. A conta deve ter permissões de leitura e escrita. Se esqueceu a senha, redefina-a. Para mais informações, consulte Modify or reset the password.
Para a conta padrão (nomeada com o ID da instância), insira apenas a senha.
Para uma conta recém-criada, use o formato
<custom_account>:<password>. Exemplo:testaccount:Test1234.
Encryption
-
-
Após concluir a configuração, clique em Test Connectivity and Proceed na parte inferior da página.
NotaCertifique-se de que os blocos CIDR de endereços IP dos servidores DTS foram adicionados às configurações de segurança dos bancos de dados de origem e destino para permitir o acesso. Isso pode ser feito automática ou manualmente. Para mais informações, consulte Add the IP address CIDR blocks of DTS servers to a whitelist.
Se o banco de dados de origem ou destino for autogerenciado (onde Access Method não é Alibaba Cloud Instance), clique também em Test Connectivity na caixa de diálogo CIDR Blocks of DTS Servers.
-
Configure os objetos da tarefa.
-
Na página Configure Objects, configure os objetos a serem sincronizados.
Parâmetro
Descrição
Synchronization Types
O DTS pré-seleciona Incremental Data Synchronization ou Full Data Synchronization + Incremental Data Synchronization. Se apenas Incremental Data Synchronization estiver selecionado por padrão, selecione também Full Data Synchronization. Após a pré-verificação, o DTS realiza uma cópia completa dos dados dos objetos especificados para a instância de destino. Essa cópia serve como base para a sincronização incremental subsequente.
Synchronization Topology
Selecione One-way Synchronization.
NotaEste parâmetro está disponível apenas quando as instâncias de origem e destino são Tair (Redis OSS-Compatible) Enterprise Edition.
Processing Mode of Conflicting Tables
-
Precheck and Report Errors: Verifica se o destino está vazio. A pré-verificação passa se o destino estiver vazio. Se o destino não estiver vazio, a pré-verificação falha, um erro é reportado e o trabalho de sincronização de dados não inicia.
-
Ignore Errors and Proceed: Ignora a pré-verificação Check the existence of objects in the destination database..
AvisoSe você selecionar Ignore Errors and Proceed, os dados de origem sobrescreverão os dados de destino durante a sincronização quando as chaves de origem e destino tiverem o mesmo nome. Isso pode causar perda de dados no destino. Selecione esta opção com cautela.
Source Objects
Na caixa Source Objects, clique em um objeto para sincronizar e, em seguida, clique em
para movê-lo para a caixa Selected Objects.NotaVocê pode selecionar objetos apenas no nível do banco de dados. Para sincronizar dados de chaves específicas dentro de um banco de dados, use o recurso data filtering no painel Selected Objects.
Selected Objects
Para especificar um banco de dados de destino (DB 0 a DB 255) ou filtrar dados por prefixo, use os recursos de mapeamento ou filtragem. No painel Selected Objects, clique com o botão direito no banco de dados a ser sincronizado e configure as opções na caixa de diálogo Edit Schema que aparece. Para mais informações, consulte Map object names e Specify filter conditions.
-
-
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, e você não precisa selecionar um cluster. Para um desempenho mais estável, adquira um cluster dedicado para executar tarefas de sincronização do DTS. Para mais informações, consulte What is a DTS dedicated cluster?.
Retry Time for Failed Connections
Após o início da tarefa de sincronização, se a conexão com o banco de dados de origem ou destino falhar, o DTS reporta um erro e inicia imediatamente a retentativa de conexão. A duração padrão de retentativa é de 720 minutos. Você também pode especificar uma duração personalizada de 10 a 1.440 minutos. Recomendamos definir a duração para 30 minutos ou mais. Se o DTS reconectar com sucesso ao banco de dados dentro da duração especificada, a tarefa de sincronização será retomada automaticamente. Caso contrário, a tarefa falhará.
Nota-
Se você tiver várias instâncias DTS (por exemplo, Instância A e Instância B) compartilhando a mesma origem ou destino, e definir o tempo de retentativa de rede como 30 minutos para a Instância A e 60 minutos para a Instância B, a menor duração de 30 minutos será usada para ambas.
-
Como o DTS cobra pelo tempo de execução da tarefa durante o período de retentativa de conexão, recomendamos personalizar a duração da retentativa com base nas necessidades do seu negócio ou liberar a instância DTS o mais rápido possível após a liberação das instâncias de banco de dados de origem e destino.
Retry Time for Other Issues
Após o início da tarefa de sincronização, se ocorrerem outros problemas não relacionados à conectividade com o banco de dados de origem ou destino (como exceções na execução de DDL ou DML), o DTS reporta um erro e inicia imediatamente operações contínuas de retentativa. A duração padrão de retentativa é de 10 minutos. Você também pode personalizar a duração dentro do intervalo de 1 a 1.440 minutos. Recomendamos definir para 10 minutos ou mais. Se as operações relevantes forem bem-sucedidas dentro da duração de retentativa definida, a tarefa de sincronização será retomada automaticamente. Caso contrário, a tarefa falhará.
ImportanteO valor para Retry Time for Other Issues deve ser menor que o valor para Retry Time for Failed Connections.
Enable Throttling for Full Data Synchronization
Durante a fase de sincronização completa, o DTS consome recursos de leitura e escrita dos bancos de dados de origem e destino, o que pode aumentar a carga. Para reduzir a carga nos bancos de dados, defina um limite de taxa para a tarefa de sincronização completa configurando os parâmetros Queries per second (QPS) to the source database, RPS of Full Data Migration e Data migration speed for full migration (MB/s).
NotaEste parâmetro está disponível apenas quando Synchronization Types inclui Full Data Synchronization.
Enable Throttling for Incremental Data Synchronization
Você também pode definir um limite de taxa para a tarefa de sincronização incremental. Para aliviar a pressão no banco de dados de destino, configure RPS of Incremental Data Synchronization e Data synchronization speed for incremental synchronization (MB/s).
Extend Expiration Time of Destination Database Key
Defina um tempo de expiração adicional para chaves do banco de dados de origem quando forem sincronizadas para o banco de dados de destino. Para garantir a consistência dos dados, recomendamos definir um tempo de expiração estendido se você usar qualquer um dos seguintes comandos.
NotaEm cenários de bloqueio distribuído, isso pode atrasar a liberação de locks.
EXPIRE key seconds PEXPIRE key milliseconds EXPIREAT key timestamp PEXPIREAT key timestampMsEnvironment Tag
Selecione uma tag de ambiente para identificar a instância conforme suas necessidades. Isso não é obrigatório para este exemplo.
Configure ETL
Escolha se deseja ativar o recurso de extração, transformação e carga (ETL). Para mais informações, consulte What is ETL? Valores válidos:
-
Yes: Ativa o recurso ETL. Insira instruções de processamento de dados no editor de código. Para mais informações, consulte Configure ETL in a data migration or data synchronization task.
-
No: Desativa o recurso ETL.
Monitoring and Alerting
Especifique se deseja configurar alertas. Se a sincronização falhar ou a latência exceder o limiar especificado, uma notificação será enviada a um contato de alerta.
-
No: Nenhum alerta é configurado.
-
Yes: Configure alertas definindo um limiar de alerta e especificando um notificação de alerta. Para mais informações, consulte Configure monitoring and alerting during task configuration.
-
-
Clique em Next: Data Validation para configurar uma tarefa de validação de dados.
Se desejar usar o recurso de validação de dados, consulte Configure data validation para instruções de configuração.
-
-
Salve a tarefa e execute uma pré-verificação.
Para visualizar os parâmetros da API para configurar esta instância, passe o mouse sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters no balão.
Se terminou de visualizar os parâmetros da API, clique em Next: Save Task Settings and Precheck na parte inferior da página.
NotaAntes do início do trabalho de sincronização, o DTS executa uma pré-verificação. O trabalho só pode começar após todos os itens de pré-verificação serem aprovados.
Se a pré-verificação falhar, clique em View Details para o item com falha. Corrija o problema conforme indicado e execute a pré-verificação novamente.
-
Se a pré-verificação retornar um aviso:
Se um item de verificação falhar e não puder ser ignorado, clique em View Details ao lado do item. Siga as instruções para corrigir o problema 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 em sequência para pular o aviso e executar a pré-verificação novamente. Se optar por suprimir o item de aviso, isso 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 o método de faturamento e a especificação de link para a instância de sincronização de dados. A tabela a seguir descreve esses parâmetros em detalhe.
Categoria
Parâmetro
Descrição
New Instance Class
Método de Faturamento
-
Assinatura: Pagamento realizado na criação da instância. Adequado para necessidades de longo prazo e mais econômico que o pagamento conforme o uso. Quanto maior a duração da assinatura, maior o desconto.
-
Pagamento conforme o uso: Cobrança horária. Adequado para necessidades de curto prazo. Libere a instância imediatamente após o uso para economizar custos.
Configuração do Grupo de Recursos
O grupo de recursos ao qual a instância pertence. O padrão é default resource group. Para mais informações, consulte What is Resource Management?.
Especificação de Link
O DTS fornece especificações de sincronização com diferentes níveis de desempenho. A especificação do link de sincronização afeta a taxa de sincronização. Escolha uma especificação baseada no seu cenário de negócio. Para mais informações, consulte Data synchronization link specifications.
Duração da Assinatura
No modo de assinatura, selecione a duração e a quantidade para a instância. Escolha uma assinatura mensal de 1 a 9 meses ou uma assinatura anual de 1, 2, 3 ou 5 anos.
NotaEsta opção está disponível apenas quando o método de faturamento é Subscription.
-
Após concluir a configuração, leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms.
-
Clique em Purchase and Start e, em seguida, clique em OK na caixa de diálogo OK.
Visualize o progresso da tarefa na página Data Synchronization.
NotaSe sua instância DTS estiver configurada para sincronização completa e incremental de dados (ou seja, Synchronization Types inclui tanto Full Data Synchronization quanto Incremental Data Synchronization), a tarefa aparecerá como Incremental Data Synchronization na lista de tarefas de sincronização.