Timestream para o InfluxDB como alvo - Amazon Timestream

Para recursos semelhantes aos do Amazon Timestream para, considere o Amazon Timestream LiveAnalytics para InfluxDB. Ele oferece ingestão simplificada de dados e tempos de resposta de consulta de um dígito em milissegundos para análises em tempo real. Saiba mais aqui.

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

Timestream para o InfluxDB como alvo

O Amazon Timestream for InfluxDB é um serviço gerenciado de banco de dados de séries temporais que usa o InfluxDB de código aberto para aplicativos AWS em tempo real. APIs Ele oferece fácil configuração, operação e escalabilidade, fornecendo consultas com tempos de resposta de um dígito em milissegundos.

A primeira etapa para determinar se o Timestream for InfluxDB é um destino de migração apropriado para seu caso de uso é determinar a cardinalidade do seu Timestream for table. LiveAnalytics Desenvolvemos um script que calcula a cardinalidade da tabela no Timestream para. LiveAnalytics Esse cálculo tem duas finalidades:

  1. Verifica se a cardinalidade está abaixo de 10 milhões, o que ajudará a determinar se o Timestream for InfluxDB pode lidar com seu caso de uso.

  2. Ajuda você a decidir qual tipo de instância Timestream for InfluxDB usar.

A cardinalidade no InfluxDB é o número de medições, tags e combinações de teclas de campo exclusivas em um bucket do InfluxDB. Consulte a documentação do Timestream for InfluxDB sobre gerenciamento de cardinalidade para entender como exceder os limites recomendados pode degradar o desempenho da consulta e aumentar o consumo de memória. Compare seus padrões de consulta previstos com amostras de dados representativas antes de finalizar sua seleção de instância para garantir que suas consultas continuem funcionando após a migração. Preste atenção às consultas de agregação que consomem muita memória e que podem se comportar de forma diferente do que no Timestream for. LiveAnalytics Ao migrar do Timestream para LiveAnalytics, selecione cuidadosamente suas especificações de instância do InfluxDB com base na cardinalidade do seu conjunto de dados, pois isso afeta diretamente o desempenho e a necessidade de recursos. Recomendamos considerar outros destinos se sua cardinalidade de dados for superior a 10 milhões.

Visão geral do script de cálculo de cardinalidade

O script de cálculo de cardinalidade calcula a cardinalidade de um Timestream para a tabela. LiveAnalytics Se a cardinalidade for inferior a 10 milhões, o script recomenda um Timestream para o tipo de instância InfluxDB. Usando o mapeamento de esquema padrão, a cardinalidade é calculada pelo cálculo do total de combinações exclusivas de dimensões e nome da medida. Escolher as tags de protocolo de linha corretas (equivalentes às dimensões no Timestream for LiveAnalytics) ajuda você a indexar automaticamente seus dados e filtrá-los de forma eficiente usando tags. O script também oferece a opção de excluir dimensões específicas ao calcular a cardinalidade. Se aplicável ao seu caso, ou seja, se você não estiver usando determinadas dimensões para filtrar dados em consultas SQL (especificamente não as usando como predicados), poderá excluir essas dimensões do cálculo de cardinalidade. Posteriormente, você pode ingeri-los como campos (equivalentes às medidas no Timestream for LiveAnalytics) nas próximas etapas da migração.

Pré-requisitos e instalação

Consulte a seção Pré-requisitos e a instalação no README do script de cardinalidade.

Uso básico

Para determinar a cardinalidade de uma tabela, example_table, no banco de dados example_database, o script pode ser usado da seguinte forma:

python3 cardinality.py \ --table-name example_table \ --database-name example_database

Isso produz a seguinte saída:

Cardinality of "example_database"."example_table": 160 Your recommended Timestream for InfluxDB type is: db.influx.medium

Recomendações

O script verifica automaticamente a tabela inteira para calcular a cardinalidade e, ao mesmo tempo, oferece opções de filtro de tempo para a execução ideal da consulta. Sugerimos que a implementação de filtros de tempo quando seus dados envolvam dimensões consistentes e ao analisar variações de dimensões distintas em toda a tabela produza resultados semelhantes aos da análise de intervalos de tempo específicos. Essa abordagem garante a execução eficiente e eficiente da consulta.

Para obter mais informações, consulte o README do script de cardinalidade.