Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Datos de Time Series

En esta guía, puedes aprender cómo usar el controlador de Java Reactive Streams para almacenar e interactuar con datos de series de tiempo.

Los datos de series de tiempo se componen de los siguientes componentes:

  • Cantidad medida

  • Marca de tiempo para la medición

  • Metadatos que describen la medición

La siguiente tabla describe situaciones de muestra para las que podrías almacenar datos de series de tiempo:

Situación
Cantidad medida
Metadata

Registro de ventas mensuales por industria

Ganancia en USD

Empresa, país

Seguimiento de los cambios meteorológicos

Nivel de precipitación

Ubicación, tipo de sensor

Registro de fluctuaciones en los precios de la vivienda

Precio de alquiler mensual

Ubicación, moneda

Importante

Versión del servidor para colecciones de series de tiempo

Para crear e interactuar con colecciones de series temporales, debes estar conectado a una implementación que ejecute MongoDB Server 5.0 o posterior.

Puedes crear una colección de series de tiempo para almacenar datos de series de tiempo. Para crear una colección de series de tiempo, pasa los siguientes parámetros al método createCollection():

El siguiente ejemplo crea una colección de series de tiempo llamada october2024 en la base de datos fall_weather con la opción timeField configurada en el campo "timestamp":

MongoDatabase database = mongoClient.getDatabase("fall_weather");
TimeSeriesOptions tsOptions = new TimeSeriesOptions("timestamp");
CreateCollectionOptions collectionOptions = new CreateCollectionOptions().timeSeriesOptions(tsOptions);
database.createCollection("october2024", collectionOptions);

Para verificar que se ha creado correctamente la colección de series de tiempo, ejecutar el método listCollections() en la base de datos e imprimir los resultados:

ListCollectionsPublisher<Document> listCollectionsPublisher = database.listCollections();
Flux.from(listCollectionsPublisher)
.doOnNext(System.out::println)
.blockLast();
Document{{name=october2024, type=timeseries, options=Document{{timeseries=Document{{timeField=timestamp, granularity=seconds, bucketMaxSpanSeconds=3600}}}}, info=Document{{readOnly=false}}}}
...

Puedes insertar datos en una colección de series de tiempo utilizando los métodos insertOne() o insertMany() y especificando la medición, la marca de tiempo y los metadatos en cada documento insertado.

Tip

Para obtener más información sobre cómo insertar documentos en una colección, consulte la guía Insertar documentos.

El siguiente ejemplo inserta datos de temperatura de la ciudad de Nueva York en la colección de series de tiempo october2024 creada en el ejemplo Crear una colección de series de tiempo. Cada documento contiene los siguientes campos:

  • temperatureque almacena las mediciones de temperatura en grados Fahrenheit

  • location, que almacena metadatos de ubicación

  • timestampque almacena la hora de la colección de la medición

MongoCollection<Document> collection = database.getCollection("october2024");
// Temperature data for October 1, 2024
Document temperature1 = new Document("temperature", 54)
.append("location", "New York City")
.append("timestamp", new Date(1727755200000L));
// Temperature data for October 2, 2024
Document temperature2 = new Document("temperature", 55)
.append("location", "New York City")
.append("timestamp", new Date(1727841600000L));
Publisher<InsertManyResult> insertPublisher =
collection.insertMany(Arrays.asList(temperature1, temperature2));
Mono.from(insertPublisher).block();

Puedes utilizar la misma sintaxis y convenciones para consultar datos almacenados en una colección de series temporales que utilizas al realizar operaciones de lectura o agregación en otras colecciones. Para aprender más sobre estas operaciones, consulta la sección Información adicional.

Para conocer más sobre los conceptos mencionados en esta guía, consulta las siguientes entradas del manual de servidor de MongoDB:

Para obtener más información sobre cómo realizar operaciones de lectura, consulte la sección "Consultar documentos".

Para obtener más información sobre cómo realizar operaciones de agregación, consulta la guía Marco de Agregación.

Para obtener más información sobre los métodos mencionados en esta guía, consulta la siguiente documentación de la API: