Overview
En esta guía, puedes aprender sobre las colecciones de series de tiempo en MongoDB y cómo interactuar con ellas en el driver de Java de MongoDB.
Las colecciones de series temporales almacenan eficientemente secuencias de mediciones a lo largo del tiempo. Los datos de series temporales consisten en cualquier dato recopilado a lo largo del tiempo, metadatos que describen la medición y la hora de la medición.
Ejemplo | Medición | Metadata |
|---|---|---|
Datos de ventas | Ingresos | Empresa |
Tasas de infección | Cantidad de personas infectadas | Ubicación |
Crear una colección de series de tiempo
Para crear una colección de series de tiempo, pase los siguientes parámetros a la createCollection() :
El nombre de la nueva colección a crear
Las TimeSeriesOptions para crear la colección en un objeto CreateCollectionOptions
MongoDatabase database = mongoClient.getDatabase("fall_weather"); TimeSeriesOptions tsOptions = new TimeSeriesOptions("temperature"); CreateCollectionOptions collOptions = new CreateCollectionOptions().timeSeriesOptions(tsOptions); // Creates a time series collection that stores "temperature" values over time database.createCollection("september2021", collOptions);
Importante
Las versiones anteriores a MongoDB 5.0 no pueden crear una colección de series de tiempo.
Para comprobar si ha creado correctamente la colección, envíe el
"listCollections" comando al método runCommand().
Document commandResult = database.runCommand(new Document("listCollections", new BsonInt64(1))); List<String> keys = Arrays.asList("cursor"); // Prints information about the database's collections and views System.out.println("listCollections: " + commandResult.getEmbedded(keys, Document.class).toJson());
El resultado debería ser similar al siguiente:
{ "id": <some number>, "ns": "<db name>.$cmd.listCollections", "firstBatch": [ { "name": "<time series collection name>", "type": "timeseries", "options": { "expireAfterSeconds": <some number>, "timeseries": { ... } }, ... }, ... ] }
Realiza queries a una colección de series de tiempo
Para realizar consultas en una colección de series de tiempo, utilice las mismas convenciones que utiliza para recuperar y agregar datos.
Nota
Funciones de ventana
La versión de MongoDB 5.0 incorpora funciones de ventana en la canalización de agregación. Puede usarlas para realizar operaciones en un intervalo contiguo de datos de series temporales. Para obtener más información, consulte nuestra guía de Constructores de Agregados.