O Cloud TSDB for InfluxDB será descontinuado, e os dados existentes precisam ser migrados. Este tópico descreve como utilizar as ferramentas backup e restore do InfluxDB para migrar dados históricos da sua instância em nuvem para uma instância auto-hospedada do InfluxDB 1.x, shard por shard.
O TSDB for InfluxDB® será oficialmente descontinuado em 23 de outubro de 2026. Para garantir a continuidade do serviço, conclua a migração dos seus dados antes dessa data. Para mais detalhes sobre a descontinuação, consulte o aviso de descontinuação do TSDB for InfluxDB®.
Pré-requisitos
Atualize sua instância do Cloud TSDB for InfluxDB para a versão 1.8.14 ou posterior.
Envie um ticket pelo sistema de tickets da Alibaba Cloud para entrar em contato com o suporte técnico e ative a porta de backup 8088.
Adquira uma instância ECS com as mesmas especificações, na mesma região, zona, VPC e vSwitch da sua instância do TSDB for InfluxDB. Essa instância ECS será usada para a migração e para hospedar o InfluxDB auto-hospedado. Para mais informações, consulte Crie uma instância ECS.
Baixe o InfluxDB open-source 1.8.10 e conclua a instalação, inicialização e configuração básica para usá-lo como instância de destino auto-hospedada.
Leia a seção Backup and Restore na documentação oficial do InfluxDB para entender o processo de backup e restauração.
Verifique se o armazenamento disponível da instância do Cloud TSDB for InfluxDB é de pelo menos 40%. A operação de backup ocupa armazenamento temporário na instância. Se o espaço livre for insuficiente, o backup pode falhar e afetar as operações normais da instância.
Confirme se o uso de memória da instância do Cloud TSDB for InfluxDB não excede 60%. Caso o uso ultrapasse esse percentual, atualize as especificações da instância antes de executar o backup e a migração.
Considerações
O backup e a restauração migram apenas dados históricos. Não há garantia de migração de dados incrementais gravados após o backup. Recomendamos gravar dados simultaneamente no Cloud TSDB for InfluxDB e no InfluxDB auto-hospedado antes de iniciar a migração dos dados históricos.
Os arquivos de backup ocupam espaço de armazenamento na instância ECS que hospeda o InfluxDB auto-hospedado. Reserve pelo menos o dobro da capacidade de armazenamento do seu volume de dados.
A migração de dados utiliza uma estratégia de importação serial por shard de tempo. Conclua a migração completa de todo o banco de dados dentro de um único shard de tempo antes de iniciar o próximo.
Visão geral do fluxo de trabalho
A migração é realizada shard por shard. O fluxo de trabalho completo é o seguinte:
Confirme se todos os pré-requisitos foram atendidos.
Execute
SHOW SHARDSpara obter informações sobre todos os shards.Selecione um shard e execute
influxd backupna instância ECS para fazer o backup dos dados localmente.Execute
influxd restorepara restaurar o backup em um banco de dados temporário na instância auto-hospedada do InfluxDB.Use
SELECT INTOpara gravar dados do banco de dados temporário no banco de dados de destino.Verifique a integridade dos dados no banco de dados de destino.
Exclua o banco de dados temporário.
Repita as etapas 3 a 7 para os shards restantes até que todos sejam migrados.
Procedimento
Visualize a lista de shards
Antes de realizar o backup, execute a seguinte instrução InfluxQL para visualizar as informações de todos os shards e determinar quais devem ser migrados:
SHOW SHARDS
No resultado, obtenha os campos id, database e retention_policy de cada shard. Esses campos são usados como parâmetros nos comandos de backup subsequentes. As operações de backup e restauração devem ser executadas individualmente em cada shard.
backup
Execute o comando de backup na instância ECS que hospeda o InfluxDB auto-hospedado para fazer o backup dos dados shard por shard. É necessário especificar o nome do banco de dados, o nome da política de retenção e o ID do shard para cada backup.
-
Sintaxe
influxd backup -portable \ -host <source instance VPC address:8088> \ -db <database name> \ -rp <retention policy name> \ -shard <shard ID> \ <backup directory> -
Parâmetros
Parâmetro
Descrição
-portableUtiliza o formato de backup portátil.
-hostO endpoint VPC e a porta de backup da instância do Cloud TSDB for InfluxDB, no formato
ts-xxx:8088.-dbNome do banco de dados a ser copiado.
-rpNome da política de retenção a ser copiada.
-shardID do shard a ser copiado. Execute
SHOW SHARDSpara obter os IDs dos shards.<backup directory>Diretório onde os arquivos de backup são salvos, por exemplo,
/root/tmp/influx_backup. -
Exemplo
influxd backup -portable \ -host ts-xxx.influxdata.tsdb.aliyuncs.com:8088 \ -db example_db \ -rp example_rp \ -shard 123 \ /root/tmp/influx_backupNotaNeste exemplo, substitua
ts-xxx.influxdata.tsdb.aliyuncs.com:8088,example_db,example_rp,123e/root/tmp/influx_backuppelos valores adequados ao escopo real da sua migração.
restore
Consulte a documentação oficial para restaurar dados em um banco de dados existente.
-
Na instância ECS que hospeda o InfluxDB auto-hospedado, execute o comando de restauração para recuperar os dados em um banco de dados temporário.
-
Sintaxe
influxd restore -portable \ -db <backed-up database name> \ -rp <backed-up retention policy name> \ -shard <shard ID> \ -newdb <temporary database name> \ <backup directory> -
Parâmetros
Parâmetro
Descrição
-portableLê o formato de backup portátil.
-dbNome do banco de dados que teve backup realizado.
-rpNome da política de retenção que teve backup realizado.
-shardID do shard que teve backup realizado.
-newdbNome do banco de dados temporário onde os dados serão restaurados.
<backup directory>Diretório onde os dados de backup estão armazenados, por exemplo,
/root/tmp/influx_backup. -
Exemplo
influxd restore -portable \ -db example_db \ -rp example_rp \ -shard 123 \ -newdb example_tmp_db \ /root/tmp/influx_backupNeste exemplo, substitua
example_db,example_rp,123,example_tmp_dbe/root/tmp/influx_backuppelos valores correspondentes ao conteúdo real do seu backup.
-
-
Utilize InfluxQL para consultar dados do banco de dados temporário e gravá-los no banco de dados de destino.
Para grandes volumes de dados, o comando
SELECT INTOpode gerar dados incompletos devido a tempos limite de consulta. Confirme os pontos abaixo antes da execução:Se um tempo limite de consulta estiver ativado (ou seja,
INFLUXDB_COORDINATOR_QUERY_TIMEOUTestiver definido), aumente-o para um valor suficientemente grande. Por padrão, o InfluxDB não impõe tempo limite de consulta.-
Em cenários com grandes volumes de dados, execute
SELECT INTOem lotes por intervalo de tempo para evitar tempos limite em uma única consulta.SELECT * INTO "example_db"."example_rp".:MEASUREMENT FROM "example_tmp_db"."example_rp"/.*/ GROUP BY *
/.*/é uma sintaxe de expressão regular do InfluxQL que corresponde a todas as medições. -
Verifique a integridade dos dados. Consulte a contagem de linhas tanto no banco de dados temporário quanto no banco de dados de destino. Confirme se os dados estão consistentes antes de prosseguir para a próxima etapa.
SELECT COUNT(*) FROM "example_tmp_db"."example_rp"/.*/ SELECT COUNT(*) FROM "example_db"."example_rp"/.*/ -
Exclua o banco de dados temporário.
DROP DATABASE "example_tmp_db";
FAQ
-
P: O backup e a restauração migram dados incrementais?
R: Não, os dados incrementais não são migrados automaticamente. O comando
influxd backupcaptura apenas os dados existentes no momento em que o backup é realizado. Dados gravados após a conclusão do backup não são incluídos. Recomendamos gravar dados simultaneamente no Cloud TSDB for InfluxDB e no InfluxDB auto-hospedado antes de migrar os dados históricos. -
P: Como visualizo as especificações da minha instância do Cloud TSDB for InfluxDB?
R: Faça login no console do TSDB e acesse a página Instance Details. Na seção Configuration Information, visualize as especificações da instância, incluindo capacidade de armazenamento, CPU, memória do banco de dados, tipo de disco e versão do mecanismo.
-
P: Como determino se uma instância ainda possui tráfego de leitura ou gravação?
R: Faça login no console do TSDB e acesse a página Instance Monitoring. Selecione Engine Monitoring. Verifique a métrica Data Points Written per Second para confirmar se as solicitações de gravação ainda estão ativas e a métrica Queries per Second para confirmar se as solicitações de consulta ainda estão ativas.
-
P: Como faço para migrar para um banco de dados diferente?
R: Recomendamos migrar primeiro para uma instância auto-hospedada do InfluxDB. O custo de migração é relativamente baixo, permitindo preservar seu modelo de dados existente, linguagem de consulta e padrões de uso do cliente. Ao migrar para um banco de dados diferente, o modelo de dados, a linguagem de consulta, a precisão temporal, os tipos de dados e as ferramentas de importação podem divergir do InfluxDB. Avalie e valide a migração com base nas capacidades do banco de dados de destino. Este tópico não fornece etapas de migração para bancos de dados específicos.