Início rápido de séries temporais
Este início rápido descreve como configurar, criar e consultar uma coleção de séries temporais com o MongoDB Atlas ou um sistema autogerenciado.
Tempo necessário: 30 minutos
Passos
Configure seu cluster do Atlas.
Crie uma conta Atlas gratuita ou entre em uma conta existente.
Se você ainda não tiver um cluster do Atlas , crie um0 cluster M gratuito. Para saber mais sobre como criar um cluster do Atlas , consulte Criar um cluster.
Observação
Se você estiver trabalhando com um cluster existente, deverá ter
Project Data Access Admin
acesso ou superior ao seu projeto Atlas .Se você criar um novo cluster, terá as permissões necessárias por padrão.
Você pode criar somente um
M0
cluster gratuito por projeto.Na barra lateral esquerda, clique em Visão geral. Escolha seu cluster e clique Connect em.
Em Acessar seus dados por meio de ferramentas, clique em Shell.
Caso ainda não tenha feito isso, siga as etapas fornecidas para baixar e instalar
mongosh
o.Copie sua string de conexão e clique em Done.
Abra uma nova janela do terminal e conecte-se ao seu sistema.
Use para se conectar à sua implantação autogerenciada ou do Atlas . Por mongosh
exemplo:
mongosh "mongodb+srv://my-test-cluster.1twap.mongodb.net/" --apiVersion 1 --username <user>
Crie uma coleção de séries temporais vazia.
Observação
Este exercício usa dados de amostra do código da ação . O date
campo armazena dados de tempo e o ticker
campo identifica o estoque individual.
Defina
timeField
,metaField
egranularity
:timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds" } OU especifique a granularidade personalizada:
Novidades na versão 6.3.
timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds", bucketMaxSpanSeconds: "300", bucketRoundingSeconds: "300" } Crie a coleção utilizando o
db.createCollection()
método:db.createCollection( "stocks", { timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds" } }) Isso cria uma coleção de séries temporais vazia chamada
stocks
.
Adicione documentos de amostra.
Execute o método para adicionar os seguintes documentos de amostra à db.collection.insertMany()
coleção:
db.stocks.insertMany([ { ticker: "MDB", date: ISODate("2021-12-18T15:59:00.000Z"), close: 252.47, volume: 55046.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:58:00.000Z"), close: 252.93, volume: 44042.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:57:00.000Z"), close: 253.61, volume: 40182.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:56:00.000Z"), close: 253.63, volume: 27890.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:55:00.000Z"), close: 254.03, volume: 40270.00} ])
Se você estiver executando MongoDB no Atlas, você poderá clicar em Browse collections para visualizar os dados de amostra.
Consulte os dados.
Você faz query de uma coleção de séries temporais como qualquer outra coleção do MongoDB . Para obter mais informações, consulte Sobre consulta de dados de série temporal.
Queries comuns para dados de séries temporais estão consultando o metaField
para obter dados para uma única série temporal ou utilizando uma consulta de intervalo no timeField
para obter dados para um determinado período de tempo.
Para fazer query do metaField
para uma única série temporal:
db.stocks.find( { ticker: "MDB" } )
Para executar query do timeField
para um período de tempo:
db.stocks.find({ date : { $gte : ISODate("2021-12-18T15:50:00.000Z"), $lte : ISODate("2021-12-18T15:56:00.000Z")} });
Instale as dependências.
Para obter instruções detalhadas, consulte Pré-requisitos.
Instale o Atlas CLI.
Se você usar Homebrew, poderá executar o seguinte comando em seu terminal:
brew install mongodb-atlas-cli Para obter instruções de instalação em outros sistemas operacionais, consulte Instalar a Atlas CLI
Instale o docker.
O Docker requer uma conexão de rede para extrair e armazenar em cache imagens do MongoDB .
Para MacOS ou Windows, instale o Docker Desktop v4.31+.
Para Linux, instale o Docker Engine v27.0+.
Para RHEL, você também pode usar o Podman v5.0+.
Configure sua implantação local do Atlas.
Se você não tem uma conta existente do Atlas, execute o
atlas setup
em seu terminal ou crie uma nova conta.Execute
atlas deployments setup
e siga as solicitações para criar uma implantação local. Quando solicitado a se conectar à implantação, selecioneskip
.Para obter instruções detalhadas, consulte Criar uma implementação local do Atlas.
Instale mongosh
o.
Abra uma nova janela do terminal e conecte-se ao seu sistema.
Use para se conectar à sua implantação autogerenciada ou do Atlas . Por mongosh
exemplo:
mongosh "mongodb+srv://my-test-cluster.1twap.mongodb.net/" --apiVersion 1 --username <user>
Crie uma coleção de séries temporais vazia.
Observação
Este exercício usa dados de amostra do código da ação . O date
campo armazena dados de tempo e o ticker
campo identifica o estoque individual.
Defina
timeField
,metaField
egranularity
:timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds" } OU especifique a granularidade personalizada:
Novidades na versão 6.3.
timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds", bucketMaxSpanSeconds: "300", bucketRoundingSeconds: "300" } Crie a coleção utilizando o
db.createCollection()
método:db.createCollection( "stocks", { timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds" } }) Isso cria uma coleção de séries temporais vazia chamada
stocks
.
Adicione documentos de amostra.
Execute o método para adicionar os seguintes documentos de amostra à db.collection.insertMany()
coleção:
db.stocks.insertMany([ { ticker: "MDB", date: ISODate("2021-12-18T15:59:00.000Z"), close: 252.47, volume: 55046.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:58:00.000Z"), close: 252.93, volume: 44042.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:57:00.000Z"), close: 253.61, volume: 40182.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:56:00.000Z"), close: 253.63, volume: 27890.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:55:00.000Z"), close: 254.03, volume: 40270.00} ])
Se você estiver executando MongoDB no Atlas, você poderá clicar em Browse collections para visualizar os dados de amostra.
Consulte os dados.
Você faz query de uma coleção de séries temporais como qualquer outra coleção do MongoDB . Para obter mais informações, consulte Sobre consulta de dados de série temporal.
Queries comuns para dados de séries temporais estão consultando o metaField
para obter dados para uma única série temporal ou utilizando uma consulta de intervalo no timeField
para obter dados para um determinado período de tempo.
Para fazer query do metaField
para uma única série temporal:
db.stocks.find( { ticker: "MDB" } )
Para executar query do timeField
para um período de tempo:
db.stocks.find({ date : { $gte : ISODate("2021-12-18T15:50:00.000Z"), $lte : ISODate("2021-12-18T15:56:00.000Z")} });
Instalar o MongoDB e dependências.
Se você estiver executando um sistema autogerenciado, siga as instruções de instalação para sua versão, edição e plataforma do MongoDB .
Instale mongosh
o.
Abra uma nova janela do terminal e conecte-se ao seu sistema.
Use para se conectar à sua implantação autogerenciada ou do Atlas . Por mongosh
exemplo:
mongosh "mongodb+srv://my-test-cluster.1twap.mongodb.net/" --apiVersion 1 --username <user>
Crie uma coleção de séries temporais vazia.
Observação
Este exercício usa dados de amostra do código da ação . O date
campo armazena dados de tempo e o ticker
campo identifica o estoque individual.
Defina
timeField
,metaField
egranularity
:timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds" } OU especifique a granularidade personalizada:
Novidades na versão 6.3.
timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds", bucketMaxSpanSeconds: "300", bucketRoundingSeconds: "300" } Crie a coleção utilizando o
db.createCollection()
método:db.createCollection( "stocks", { timeseries: { timeField: "date", metaField: "ticker", granularity: "seconds" } }) Isso cria uma coleção de séries temporais vazia chamada
stocks
.
Adicione documentos de amostra.
Execute o método para adicionar os seguintes documentos de amostra à db.collection.insertMany()
coleção:
db.stocks.insertMany([ { ticker: "MDB", date: ISODate("2021-12-18T15:59:00.000Z"), close: 252.47, volume: 55046.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:58:00.000Z"), close: 252.93, volume: 44042.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:57:00.000Z"), close: 253.61, volume: 40182.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:56:00.000Z"), close: 253.63, volume: 27890.00}, { ticker: "MDB", date: ISODate("2021-12-18T15:55:00.000Z"), close: 254.03, volume: 40270.00} ])
Se você estiver executando MongoDB no Atlas, você poderá clicar em Browse collections para visualizar os dados de amostra.
Consulte os dados.
Você faz query de uma coleção de séries temporais como qualquer outra coleção do MongoDB . Para obter mais informações, consulte Sobre consulta de dados de série temporal.
Queries comuns para dados de séries temporais estão consultando o metaField
para obter dados para uma única série temporal ou utilizando uma consulta de intervalo no timeField
para obter dados para um determinado período de tempo.
Para fazer query do metaField
para uma única série temporal:
db.stocks.find( { ticker: "MDB" } )
Para executar query do timeField
para um período de tempo:
db.stocks.find({ date : { $gte : ISODate("2021-12-18T15:50:00.000Z"), $lte : ISODate("2021-12-18T15:56:00.000Z")} });
Dados de amostra
Este início rápido cria uma coleção de séries temporais stocks
com a seguinte estrutura de documento .
{ _id: ObjectId(...), ticker: <string>, date: ISODate(...), close: <double>, volume: <double> }
Resumo do aprendizado
Este início rápido focado na criação de uma nova coleção de séries temporais. Como as coleções de séries temporais são otimizadas para dados de tempo, seu desempenho depende muito de como você as configura na criação. Para obter mais informações, consulte Considerações sobre a coleção de séries temporais.
Próximos passos
Para migrar dados existentes para uma coleção de séries temporais, consulte Migrar dados para uma coleção de séries temporais.
Para fragmentar uma coleção de séries temporais, consulte Fragmentar uma coleção de séries temporais.
Para obter comportamentos de agregação e query específicos para coleções de séries temporais, consulte Considerações sobre aggregation e operador.
Saiba mais
Para saber mais sobre como o MongoDB armazena dados de séries temporais internamente, consulte Sobre dados de séries temporais.
Para saber mais sobre parâmetros de bucketing personalizados no MongoDB 6.3 e posterior, consulte Usando parâmetros de bucketing personalizados.