best database performance time-series

database - best - ¿Existe un poderoso sistema de base de datos para series de tiempo?



influxdb login (6)

Como dijo Jonathan Leffler, debería probar la función Informix Timeseries. Está incluido en todas las ediciones de Informix sin costo adicional. Puede echar un vistazo a las funciones de TimeSeries que admite:

Rutinas SQL de IBM Informix Series de tiempo

Puede acceder a los datos a través de funciones sql o interfaces de vista virtual, incluso puede insertar en la vista.

En proyectos múltiples, tenemos que almacenar, agregar, evaluar valores de medición simples. Una fila típicamente consiste en un sello de tiempo, un valor y algunos atributos del valor. En algunas aplicaciones, nos gustaría almacenar 1000 valores por segundo y más. Estos valores no solo deben insertarse sino también eliminarse a la misma velocidad, ya que la vida útil de un valor está restringida a un año más o menos (en diferentes pasos de agregación, no almacenamos 1000 / s para todo el año).

Hasta ahora, hemos desarrollado diferentes soluciones. Uno basado en Firebird, uno en Oracle y otro en un mecanismo de almacenamiento hecho por uno mismo. Pero ninguna de estas soluciones son muy satisfactorias.

Ambas soluciones RDBMS no pueden manejar el flujo de datos deseado. Además de eso, las aplicaciones que entregan los valores (por ejemplo, controladores de dispositivos) no se pueden adjuntar fácilmente a las bases de datos, las instrucciones de inserción son engorrosas. Y, por último, aunque es muy deseable contar con una interfaz SQL para los datos, las evaluaciones típicas son difíciles de formular en SQL y lentas en la ejecución. Por ejemplo, encuentre el valor máximo con sello de tiempo por 15 minutos para todas las mediciones durante el último mes.

La solución hecha a sí misma puede manejar la tasa de inserción y tiene una API amigable para el cliente para hacerlo, pero no tiene nada que ver con un lenguaje de consulta y no puede ser utilizada por otras aplicaciones a través de una interfaz estándar, por ejemplo, para informes.

La mejor solución en mis sueños sería un sistema de base de datos que:

  • tiene una API para una inserción muy rápida
  • es capaz de eliminar / truncar los valores en la misma velocidad
  • proporciona una interfaz SQL estándar con soporte específico para datos típicos de series de tiempo

¿Conoces alguna base de datos que se acerque a esos requisitos o abordarías el problema de otra manera?


Considere IBM Informix Dynamic Server con TimeSeries DataBlade.

Sin embargo, es una tasa de datos extrema con la que está trabajando. (No es exactamente para la física subatómica en el CERN, pero se dirigió en esa dirección general).

Divulgación justa : trabajo para IBM en Informix DBMS, aunque no en TimeSeries DataBlade per se.


La mayoría de las otras respuestas parecen mencionar bases de datos SQL. Las bases de datos basadas en NoSQL son muy superiores en este tipo de cosas.

Algunas bases de datos de series de código abierto:

Basado en la nube:


Puede probar HDF5 para datos de series de tiempo. Es extremadamente rápido para tales aplicaciones.



influxdb :: Una base de datos de series de tiempo abierto distribuidas sin dependencias externas.