Executando verificação de segurança...
1

TeleViewIoT Escolhi o banco de dados que será utilizado

Inicialmente considerei o InfluxDB, ótimo para séries temporais, mas como preciso misturar dados relacionais e temporais, optei pelo PostgreSQL com TimescaleDB.

O TimescaleDB é uma extensão popular para séries temporais no PostgreSQL. Ele permite criar hypertables, que suportam alta taxa de escrita, otimização de consultas, compressão e retenção de dados.
É ideal para aplicações que lidam com dados gerados continuamente, como:

  • IoT: telemetria e métricas de milhões de sensores.
  • Monitoramento: logs e métricas de servidores.
  • Finanças: dados de mercado e trading em tempo real.
  • Análise de eventos: histórico de cliques ou eventos de usuários em larga escala.

Ter um banco que suporte alta taxa de escrita é apenas parte do desafio. Uma aplicação que recebe requests de muitos dispositivos simultaneamente precisa evitar congestionamento nos endpoints e problemas de concorrência em picos de tráfego.

Para isso, usei Rides para criar filas em memória, garantindo que a ingestão de dados seja ultra rápida e com baixa latência.

Além disso, implementei um Worker em conjunto com a fila Redis, transformando um processo síncrono e lento em um processo assíncrono, rápido e tolerante a falhas, protegendo tanto a experiência do usuário quanto a saúde da API.

Carregando publicação patrocinada...