Menu Docs
Página inicial do Docs
/
Manual do banco de dados

Séries temporais

Dados de séries temporais são uma sequência de pontos de dados na qual insights são obtidos analisando as mudanças ao longo do tempo.

Os dados de série temporal geralmente são compostos destes componentes:

  • Hora: indica quando o ponto de dados foi registrado.

  • Metadados: um rótulo ou tag que identifica uma série de dados e raramente muda. Os metadados são armazenados em um metaField. Não é possível adicionar um campo metaField a um documento de série temporal após a criação. Os metadados também são conhecidos como source.

  • Métricas: pontos de dados individuais monitorados em períodos incrementais, frequentemente exibidos como pares chave-valor que variam ao longo do tempo. As métricas também são conhecidas como valores.

  • Medições: documentos que contêm dados para todas as métricas em um ponto específico no tempo. Uma medição inclui o tempo, os metadados e todas as métricas registradas naquele momento.

Esta tabela mostra exemplos de dados de série temporal:

Exemplo
Métricas
Metadata

Dados das ações

Preço das ações

Código de ações, câmbio

Dados meteorológicos

Temperatura

Identificador do sensor, localização

Visitantes do website

Contagem de visualizações

URL

Para armazenamento eficiente de dados de séries temporais, o MongoDB fornece coleções de séries temporais.

O exemplo a seguir mostra um documento de medição de dados meteorológicos:

{
"timestamp": ISODate("2025-08-19T12:00:00Z"),
"metaField": {
"sensorId": "A1234",
"location": {
"city": "New York",
"state": "NY"
}
},
"temperature": 25.4,
"humidity": 48.2,
"pressure": 1012.5,
"windSpeed": 5.2,
"windDirection": "NW"
}

Neste exemplo, a medição contém:

  • Um carimbo de data/hora indicando quando os dados foram registrados.

  • Metadados que identificam o sensor e a sua localização.

  • Múltiplas métricas, incluindo temperatura, umidade, pressão, velocidade do vento e direção, coletadas no momento especificado.

Novidades na versão 5.0.

As coleções de séries temporais armazenam dados de séries temporais de forma eficiente. Em coleções de séries temporais, as gravações são organizadas para que os dados da mesma fonte sejam armazenados junto com outros pontos de dados de um ponto no tempo semelhante.

Você pode criar coleção de séries temporais na IU para implantações hospedadas no MongoDB Atlas.

Comparadas com coleções normais, armazenar dados de série temporal em coleções de série temporal melhora a eficiência da query e reduz o uso do disco para dados de série temporal e índices secundários.

A coleção de séries temporais utiliza um formato de armazenamento em colunas subjacente e armazena dados em ordem de tempo com um índice clusterizado criado automaticamente. O formato de armazenamento em colunas oferece os seguintes benefícios:

  • Menos complexidade para trabalhar com dados de séries temporais

  • Mais eficiência da query

  • Uso de disco reduzido

  • Menos E/S em operações de leitura

  • Aumento do uso de cache do WiredTiger

As coleções de séries temporais se comportam como collections normais. Você pode inserir e consultar seus dados normalmente.

O MongoDB trata as coleções de séries temporais como visualizações não materializadas graváveis, apoiadas por uma collection interna. Quando você insere dados, a collection interna organiza automaticamente os dados de série temporal em um formato de armazenamento otimizado.

Ao query coleção de séries temporais, você opera em um documento por medida. Queries on time series collections take advantage of the optimized internal storage format and return results faster.

Dica

Para melhorar o desempenho da query, você pode adicionar índices secundários manualmente em campos de medição ou em qualquer campo em sua coleção de séries temporais

Importante

Funcionalidade incompatível com versões anteriores

Você deve descartar coleções de séries temporais antes de fazer downgrade:

  • MongoDB 6.0 ou posterior para MongoDB 5.0.7 ou anterior.

  • MongoDB 5.3 para MongoDB 5.0.5 ou anterior.

A fragmentação de zona não oferece suporte a coleções de séries temporais. O balanceador sempre distribui dados em coleções de séries temporais fragmentadas uniformemente entre todos os fragmentos no cluster.

Quando você cria uma coleção de séries temporais, o MongoDB cria automaticamente um índice interno agrupado no campo de tempo. Este índice melhora a eficiência da query e reduz o uso do disco. Para saber mais sobre os benefícios de desempenho dos índices clusterizados, consulte Coleções clusterizadas.

O índice interno não é listado quando você executa listIndexes.

Observação

Se você inserir um documento em uma coleção com um valor timeField antes 1970-01-01T00:00:00.000Z ou depois 2038-01-19T03:14:07.000Z, o MongoDB registrará um aviso e impedirá que algumas otimizações de query usem o índice interno. Criar um índice secundário no timeField para recuperar o desempenho da query e resolver o aviso de log.

Para começar a usar coleções de séries temporais, consulte Criar e consultar uma coleção de séries temporais.

Voltar

Referência

Nesta página