Una base de datos de series temporales (TSDB) es un sistema de software optimizado para manejar datos de series temporales : una secuencia de puntos de datos indexados en orden cronológico. [ 1 ] En varias disciplinas científicas y financieras, estas secuencias cronológicas pueden denominarse perfiles, curvas, trazas o tendencias. [ 2 ] Las primeras versiones de estas bases de datos se asociaron principalmente con aplicaciones industriales, donde funcionaban como historiadores de datos para registrar de manera eficiente las mediciones de sensores físicos; sin embargo, las implementaciones modernas ahora abarcan una gama mucho más amplia de usos. Debido a las altas tasas de ingesta y la naturaleza secuencial de estos datos, los repositorios TSDB utilizan en gran medida algoritmos de compresión especializados para administrar el almacenamiento de manera eficiente. [ 3 ] Si bien los datos de series temporales se pueden almacenar en varios tipos de bases de datos, los sistemas diseñados en torno a un índice primario temporal difieren estructuralmente de las bases de datos relacionales , que optimizan las relaciones discretas utilizando modelos referenciales.
Descripción general
En comparación con los conjuntos de datos de propósito general, los conjuntos de datos de series temporales son altamente uniformes y escalan rápidamente, y generalmente consisten en marcas de tiempo secuenciales asignadas a valores métricos específicos. [ 4 ] Debido a que las entradas individuales rara vez presentan dependencias relacionales complejas entre tablas, las bases de datos de series temporales no requieren la sobrecarga de las restricciones relacionales tradicionales. Además, debido a que estas cargas de trabajo rara vez exigen retención de datos indefinida , las bases de datos de series temporales pueden reducir drásticamente el espacio de almacenamiento y acelerar las consultas en comparación con las bases de datos de propósito general. [ 4 ]
Por ejemplo, la uniformidad secuencial de los datos temporales permite que algoritmos de compresión especializados, como la codificación delta o la compresión Gorilla, alcancen una densidad de datos significativamente mayor que las técnicas de compresión estándar. [ 3 ] Además, mientras que los sistemas de propósito general están optimizados para la retención persistente de datos, las bases de datos de series temporales (TSDB) automatizan de forma nativa la gestión del ciclo de vida de los datos mediante el submuestreo o la eliminación masiva de particiones de datos históricos completas. [ 5 ] Finalmente, las estrategias de indexación temporal especializadas aíslan aún más las ventanas de tiempo para maximizar el rendimiento de las consultas.
Cargas de trabajo y paradigmas de diseño
Las bases de datos de series temporales suelen diseñarse para cargas de trabajo de solo adición, donde se ingieren continuamente grandes volúmenes de observaciones secuenciales o eventos discretos junto con las marcas de tiempo correspondientes. Los sistemas de gestión de series diseñados específicamente para ello se encargan de ingerir y procesar datos procedentes de la monitorización de infraestructuras, la automatización de sistemas, el internet de las cosas (IoT) y redes ciberfísicas complejas. En estos entornos, los flujos de datos se generan normalmente a velocidades extremas y en grandes volúmenes. [ 4 ] [ 5 ]
Los paradigmas de diseño primarios se centran en maximizar el rendimiento de escritura, garantizar consultas de rango de baja latencia, utilizar compresión de datos altamente eficiente y admitir de forma nativa agregaciones temporales de múltiples ventanas o submuestreo automatizado. [ 3 ] [ 6 ] Para facilitar la indexación multidimensional, muchas implementaciones organizan los datos utilizando un esquema compuesto por etiquetas clave-valor, identificadores de dispositivos u otros metadatos. Esta estructura de metadatos permite a las aplicaciones aislar y consultar la telemetría basándose simultáneamente en intervalos de tiempo específicos y atributos de origen. [ 6 ]
Aplicaciones y cargas de trabajo
Las bases de datos de series temporales se utilizan en diversos sectores donde la recopilación continua de datos cronológicos es fundamental. Entre las áreas de aplicación comunes se incluyen la monitorización de la automatización industrial, los historiadores de datos operativos, la monitorización del rendimiento de la infraestructura y las aplicaciones (APM), la telemetría de IoT, la gestión de redes eléctricas inteligentes, el seguimiento de datos de ticks del mercado financiero y las mediciones experimentales científicas. [ 5 ] [ 7 ]
En el ámbito de la telemetría y la monitorización de sistemas, los sistemas de bases de datos de series temporales deben ingerir e indexar flujos masivos de datos de sensores o métricas en tiempo real. Para dar soporte a los flujos de trabajo analíticos posteriores, estas bases de datos ejecutan de forma nativa consultas continuas y admiten tareas analíticas como la exploración de datos, la detección de anomalías en tiempo real , el análisis predictivo de tendencias y la recuperación de valores faltantes o la reconstrucción de datos faltantes en la base de datos . [ 7 ]
Análisis y aprendizaje automático
Las bases de datos de series temporales suelen servir como motores subyacentes de almacenamiento y recuperación para flujos de trabajo analíticos posteriores, incluyendo pronósticos, detección de anomalías en tiempo real, imputación de valores faltantes y coincidencia de patrones . Para optimizar el rendimiento y reducir la sobrecarga de transferencia de datos, algunos sistemas modernos de series temporales admiten análisis dentro de la base de datos mediante la integración de funciones de aprendizaje automático directamente en la capa de la base de datos. Esta arquitectura permite que las operaciones invoquen algoritmos de pronóstico o detección de valores atípicos de forma nativa a través de interfaces de consulta de bases de datos estándar, como extensiones SQL especializadas. [ 7 ] [ 8 ]
La investigación en ciencia de datos temporales utiliza cada vez más modelos base de series temporales preentrenadas de gran tamaño para tareas complejas de predicción y clasificación. En la literatura de informática, estas arquitecturas de aprendizaje profundo se clasifican estrictamente como metodologías de análisis algorítmico aplicadas a conjuntos de datos temporales, en lugar de características nativas que definen la arquitectura del motor de base de datos subyacente . [ 9 ] [ 10 ]
Lista de bases de datos de series temporales
Los siguientes sistemas de bases de datos cuentan con funcionalidades optimizadas para el manejo de datos de series temporales .
Véase también
Referencias
- ↑ Mueen, Abdullah; Keogh, Eamonn; Zhu, Qiang; Cash, Sydney; Westover, Brandon (2009). "Descubrimiento exacto de motivos en series temporales". Actas de la Conferencia Internacional SIAM de 2009 sobre Minería de Datos (PDF) . Vol. 2009. págs. 473–484 . doi : 10.1137/1.9781611972795.41 . ISBN 978-0-89871-682-5. PMC 6814436 . PMID 31656693 . Archivado del original (PDF) el 25 de junio de 2010 . Recuperado el 31 de julio de 2019 .
Definición 2: Una base de datos de series temporales (D) es un conjunto no ordenado de m series temporales, posiblemente de diferentes longitudes.
- ↑ Villar-Rodriguez, Esther; Del Ser, Javier; Oregi, Izaskun; Bilbao, Miren Nekane; Gil-Lopez, Sergio (2017). "Detección de pérdidas no técnicas en datos de contadores inteligentes basada en el perfilado de curvas de carga y el análisis de series temporales". Energy . 137 : 118– 128. Bibcode : 2017Ene...137..118V . doi : 10.1016/j.energy.2017.07.008 . hdl : 20.500.11824/693 .
- 1 2 3 Pelkonen, Tuomas; Franklin, Scott; Teller, Justin; Cavallaro, Paul; Huang, Qi; Meza, Justin; Veeraraghavan, Kaushik (2015-08-01). "Gorilla: una base de datos de series temporales rápida, escalable y en memoria" . Actas de la Fundación VLDB . 8 (12): 1816– 1827. doi : 10.14778/2824032.2824078 . ISSN 2150-8097 .
- 1 2 3 4 Bader, Andreas; Kopp, Oliver; Mitschang, Bernhard (julio de 2017). "Un estudio sobre bases de datos de series temporales". Actas de la 13.ª Conferencia Internacional sobre Avances en Bases de Datos, Conocimiento y Aplicaciones de Datos : 23–32 .
- 1 2 3 Jensen, Søren Kejser; Pedersen, Torben Bach; Thomsen, cristiano (2017). "Sistemas de gestión de series temporales: una encuesta" . Transacciones IEEE sobre conocimiento e ingeniería de datos . 29 (11): 2581–2600.doi : 10.1109 / TKDE.2017.2740932 .
- 1 2 3 Wang, Chen; Huang, Xiangdong; Qiao, Jialin; Jiang, Tian; Rui, Lei; Zhang, Jinrui; Kang, Rong; Feinauer, Julian; McGrail, Kevin A.; Wang, Peng; Luo, Diaohan; Yuan, Jun; Wang, Jianmin; Sun, Jiaguang (agosto de 2020). "Apache IoTDB: base de datos de series temporales para internet de las cosas" (PDF) . Actas de la Fundación VLDB . 13 (12): 2901– 2904. doi : 10.14778/3415478.3415504 . ISSN 2150-8097 . S2CID 221352039 .
- 1 2 3 Khelifati, Abdelouahab; Khayati, Mourad; Dignös, Anton; Difallah, Djellel; Cudré-Mauroux, Philippe (2023). "TSM-Bench: Evaluación comparativa de sistemas de bases de datos de series temporales para aplicaciones de monitorización" (PDF) . Actas de la Fundación VLDB . 16 (11): 3363– 3376. doi : 10.14778/3611479.3611532 .
- ^ Shen, Chunhui; Ouyang, Qianyu; Li, Feibo; Liu, Zhipeng; Zhu, Longcheng; Zou, Yujie; Su, Qing; Yu, Tianhuan; Yi, Yi; Hu, Jianhong; Zheng, Cen; Wen, Bo; Zheng, Hanbang; Xu, Lun Fan; Pan, Sicheng; Wu, Bin; Él, Xiao; Li, Ye; Tan, Jian; Wang, Sheng; Pei, Dan; Zhang, Wei; Li, Feifei (2023). "Lindorm TSDB: una base de datos de series temporales nativa de la nube para sistemas de monitoreo a gran escala" (PDF) . Actas del Fondo de Dotación VLDB . 16 (12): 3715– 3727. doi : 10.14778/3611540.3611559 .
- ^ Jin, Ming; Wen, Qingsong; Liang, Yuxuan; Zhang, Chaoli; Xue, Siqiao; Wang, Zue; Zhang, Jianbin; Wang, Yi; Chen, Sheng; Li, Hao; Pan, Shirui; Larson, Vicente S.; Yin, Yidong; Mamá, William K.; Wang, Jia; Huang, Xiyuan; Megagars, Charles; Khayati, Mourad; Cudré-Mauroux, Philippe; Torres, Rodrigo; Deng, Simeng; Subrahmanya, Suhas; Bhattacharjee, Sanyam; Su, Yuan-Fang; Radivojac, Predrag; Kalyanaraman, Yasant; Sol, Jian; Ke, Sheng; Yang, Zheng; Januschowski, Tim; Li, Yanyan; Giles, C. Lee; Alahi, Alexandre; Yi, Jinfeng; Spitz, Andreas; Dietterich, Thomas G. (enero de 2024). «Documento de posición: ¿Qué pueden hacer los modelos de lenguaje grandes para las series temporales?». Boletín de ACM SIGKDD Explorations . 25 (2): 1– 12. doi : 10.1145/3648354.3648356 .
- ↑ Liu, Yong; Zhang, Haoran; Li, Chenyu; Huang, Xiangdong; Wang, Jianmin; Long, Mingsheng (2024). "Timer: Generative Pre-trained Transformers Are Large Time Series Models" . Actas de la 41.ª Conferencia Internacional sobre Aprendizaje Automático . Actas de Investigación en Aprendizaje Automático. Vol. 235. PMLR. págs. 32369–32399 .
- ^ Documentación de Apache Kudu.
- ↑ Documentación de Apache Pinot.
- ↑ Documentación principal de ClickHouse.
- ↑ Gupta, Saurabh; Pathak, Jyoti (2020). "SmartBench: Un punto de referencia para la gestión de datos en espacios inteligentes" . Actas de la Fundación VLDB . 13 (12): 1807–1810 .
- ↑ Kopp, Oliver; Mitschang, Bernhard (2021). "Gestión de secuencias grandes: escalando hacia arriba y hacia afuera" . Actas de la 24.ª Conferencia Internacional sobre Tecnología de Bases de Datos Extendidas (EDBT) . págs. 305–310 .
- ↑ Banco de Pagos Internacionales: Uso de productos de series temporales por parte de los bancos centrales (Análisis FAME).
- ↑ "licencia influxdb" . GitHub . Consultado el 14 de agosto de 2016 .
- ↑ "agrupación de influxdb" . influxdata.com . Consultado el 10 de marzo de 2016 .
- ↑ Wachtel, Jessica (2023-07-06). "Conozca a los fundadores que reescribieron en Rust" . InfluxData . Recuperado el 2023-10-05 .
- 1 2 3 4 5 6 Stephens, Rachel (2018-04-03). "Estado del mercado de bases de datos de series temporales" . Recuperado el 2018-10-03 .
- ↑ Anadiotis, George (28-09-2018). "Procesamiento de datos de series temporales: ¿Cuáles son las opciones?" . ZDNet . Recuperado el 10-03-2016 .
- ↑ Dantale, Viabhav (21/09/2012). Resolución de problemas empresariales con Informix TimeSeries (PDF) . IBM Redbooks. ISBN 9780738437231.
- ↑ "Licencia pública del lado del servidor (SSPL)" . MongoDB . Consultado el 17 de abril de 2026 .
- ↑ "Documentación sobre la arquitectura de TimescaleDB" . timescale.com . Consultado el 9 de julio de 2026 .
- ↑ "Documentación oficial del repositorio Graphite Whisper" . github.com . Consultado el 9 de julio de 2026 .
- Software de series temporales