InfluxDB: Primeiros passos

Como configurar e gerir rapidamente o InfluxDB seguindo as melhores práticas

👋 Bem-vindo à documentação da Stackhero

A Stackhero disponibiliza um ambiente InfluxDB cloud totalmente gerido, concebido para garantir rapidez e simplicidade:

  • Escritas, consultas, dashboards, tarefas e buckets ilimitados.
  • Retenção de dados ilimitada: mantenha as suas métricas pelo tempo que precisar.
  • Transferências de rede e disco ilimitadas, sem limites ocultos.
  • Atualizações com um clique: aceda sempre às funcionalidades e correções mais recentes.
  • Desempenho consistente e segurança reforçada na sua própria infraestrutura privada e dedicada.

Com a Stackhero, pode concentrar-se nos seus dados e análises. Começar com InfluxDB cloud hosting demora apenas alguns minutos, e cada configuração é otimizada para garantir fiabilidade a longo prazo.

O InfluxDB não disponibiliza a gestão de utilizadores diretamente através da interface web. Pode gerir de forma eficiente a criação e administração de utilizadores utilizando o InfluxDB CLI.

Pode aceder ao InfluxDB CLI através do Docker. Por exemplo, pode executar o seguinte comando:

docker run -it influxdb:2.8 /bin/bash

Lembre-se de utilizar o tag de versão correspondente à sua instância de InfluxDB em vez de 2.8.

Após iniciar o contentor, crie uma configuração. Substitua <XXXXXX>.stackhero-network.com pelo domínio real da sua instância InfluxDB:

influx config create \
  --config-name adminConfig \
  --active \
  --username-password admin \
  --org admin \
  --host-url https://<XXXXXX>.stackhero-network.com

Depois de configurar, pode utilizar o InfluxDB CLI para gerir utilizadores. Por exemplo, para criar um novo utilizador:

influx user create --name <user> --password <password>

O InfluxDB está optimizado para grandes volumes de dados de séries temporais. Como não elimina automaticamente dados antigos, bases de dados não geridas podem rapidamente esgotar o espaço de armazenamento disponível. A Stackhero ajuda a evitar esta situação ao suportar as funcionalidades nativas do InfluxDB para uma gestão eficiente dos dados.

O InfluxDB disponibiliza duas soluções principais:

  1. Políticas de retenção: Eliminam automaticamente dados mais antigos do que um período definido, por exemplo, 365 dias. Isto permite manter o uso do armazenamento previsível e evita limpezas manuais.
  2. Downsampling de dados: Armazene dados de alta resolução para períodos recentes e dados agregados para períodos mais antigos. Por exemplo:
    • Manter resolução de 1 segundo para os últimos 5 minutos.
    • Guardar valores máximo, mínimo e média em intervalos de 1 minuto para as últimas 24 horas.
    • Reter agregados horários para dados mais antigos.

As políticas de retenção permitem-lhe guardar o histórico relevante sem consumir espaço em disco em excesso. Para mais informações sobre downsampling, consulte a documentação oficial de downsampling do InfluxDB.

Por predefinição, o InfluxDB mantém os dados indefinidamente. Para a maioria dos casos de uso de séries temporais, definir um período de retenção para cada bucket garante que apenas mantém os dados necessários e evita o crescimento descontrolado do armazenamento.

Para configurar a retenção:

  1. Abra a interface web do InfluxDB.
  2. Vá a "Data" e selecione "Buckets".
  3. Clique em "Settings" ao lado do bucket pretendido.
  4. Em "Delete data older than", escolha o período de retenção desejado.

Os dados mais antigos do que o período de retenção selecionado serão eliminados de forma permanente.

O InfluxDB armazena dados em shards. Os shards que contêm apenas dados expirados são eliminados automaticamente. Se um shard incluir dados expirados e atuais, permanece até que todos os dados estejam expirados. Por predefinição, cada shard cobre 7 dias de dados. Ao definir uma nova política de retenção, até cerca de 7 dias de dados antigos podem permanecer até ao próximo ciclo de shard. Para mais detalhes, consulte a documentação dos shards do InfluxDB.

Pode encontrar exemplos práticos para enviar dados de Node.js para InfluxDB neste repositório InfluxDB Getting Started.