Skip to Content

¿Qué es una base de datos de serie temporal (TSDB)?

Vector illustration concept of time management isolated on blue background with long shadow.

Cuando necesita mostrar un análisis minuto a minuto, día a día o cualquier otro análisis de intervalo de fechas, utiliza una base de datos de series temporales. Una base de datos de serie temporal almacena puntos de datos con sus marcas de tiempo asociadas para que se puedan mostrar a los usuarios las tendencias dentro de un intervalo de tiempo. A menudo se utiliza en la visualización de información y análisis basados en el tiempo.

¿Qué es una base de datos de serie temporal?

En una base de datos de series temporales, cada registro contiene una marca de tiempo. La marca de tiempo se puede usar para mostrar un único punto de datos o para graficar y analizar. La base de datos de series temporales se utiliza específicamente para información que requiere un intervalo de fechas, como el seguimiento del clima o la consulta de eventos específicos registrados con fines de monitoreo.

¿Qué es una colección de series temporales?

Una base de datos de series temporales almacena todos los datos, pero una recopilación de series temporales es un fragmento de datos tomados de la base de datos y devueltos a la aplicación. Las recopilaciones de series temporales se recuperan de la base de datos en forma de conjunto de datos, y el conjunto de datos contiene puntos de datos para el intervalo de fechas dado. El usuario o la aplicación envía el intervalo de tiempo como entrada a la base de datos, y la base de datos devuelve una recopilación para cada punto de datos que se encuentra dentro del intervalo dado.

Cómo funciona una base de datos de series temporales

Por lo general, se crea una base de datos de series temporales para capturar grandes cantidades de datos para análisis futuros. Los usuarios establecen su intervalo de fechas en una aplicación y la base de datos devuelve un conjunto de puntos de datos. La base de datos funciona capturando datos en intervalos. Por ejemplo, un código bursátil puede mostrar cambios en el precio de una acción cada minuto. La base de datos almacena el nombre de la acción, el precio y la marca de tiempo para mantener un registro del precio de la acción cada minuto para el análisis y la información histórica.

Los datos recuperados de una base de datos de series temporales clasifican los registros en orden cronológico para que los desarrolladores puedan crear visualizaciones sin mucha sobrecarga. Las bases de datos son servidores potentes, por lo que pueden ordenar un conjunto de datos mucho más rápido que una aplicación web front-end. La base de datos de series temporales toma información de la aplicación para determinar la forma en que se deben ordenar los datos, de modo que los desarrolladores puedan mostrar el análisis a los usuarios. Por ejemplo, un usuario puede solicitar datos sobre los precios de las acciones para un intervalo de fechas específico y para que se clasifiquen en orden ascendente.

Bases de datos populares de series temporales: Comparaciones

Cada base de datos de series temporales tiene un motor de back-end, que se utiliza para almacenar y recuperar datos. El motor debe ser rápido y eficiente para almacenar grandes cantidades de datos y, al mismo tiempo, poder recuperarlos con muy poca latencia. Podría almacenar datos basados en el tiempo en una base de datos tradicional, pero varias bases de datos de series temporales en el mercado están diseñadas específicamente para consultar y almacenar este tipo de datos.

Por qué usar InfluxDB: TSDB de código abierto

Algunos desarrolladores prefieren las bases de datos de código abierto porque pueden crear la base de código y hacer sus propios cambios en el producto base. InfluxDB es una base de datos de series temporales de código abierto que puede almacenar miles de puntos de datos por segundo. Si desea monitorear infraestructura como dispositivos IoT para aplicaciones industriales, InfluxDB es una buena opción.

Prometheus frente a InfluxDB

La principal diferencia entre InfluxDB y Prometheus es la forma en que se recuperan los datos. Con InfluxDB, una aplicación envía datos continuamente a la base de datos donde se almacenan y recuperan. Prometheus funciona a través de una API donde la aplicación envía datos y la base de datos utiliza la API para luego sondear los datos almacenados. Para grandes empresas con sistemas ubicados en varias ubicaciones, la API basada en la nube de Prometheus permite a los desarrolladores cargar datos desde varias ubicaciones donde se pueden revisar en un panel central.

Escala de tiempoDB frente a InfluxDB

InfluxDB es una base de datos NoSQL, mientras que TimescaleDB es una base de datos relacional. Las bases de datos relacionales funcionan de manera muy diferente a las bases de datos NoSQL. Una base de datos relacional funciona con tablas y claves que se pueden usar para unir datos almacenados en cada tabla. Es importante conocer la forma en que una base de datos almacena sus datos porque la forma en que se recupera utiliza una sintaxis diferente. Si conoce los datos que se almacenarán y puede organizarlos en tablas, entonces TimescaleDB es una opción viable.

Elasticsearch frente a InfluxDB

Para aumentar el rendimiento, Elasticsearch es un motor común que se usa en aplicaciones empresariales. Su rendimiento es ligeramente mejor que el de InfluxDB debido a su capacidad para dividir índices, que son mapas de datos almacenados como un “documento” en Elasticsearch. Elasticsearch debe utilizarse para grandes conjuntos de datos en los que las aplicaciones y los usuarios recuperarán conjuntos de datos que podrían abarcar millones de puntos de datos de una amplia gama de marcas de tiempo. Por ejemplo, Elasticsearch es beneficioso para revisar los archivos de registro utilizados para monitorear un entorno de red empresarial grande para detectar cualquier actividad sospechosa del usuario.

Cuándo usar las bases de datos de series temporales

La mayoría de las bases de datos de series temporales se utilizan para monitorear hardware o software, de modo que se pueda utilizar una gran colección de datos para analizar eventos específicos. Para obtener una imagen clara de los eventos dentro de un entorno, necesita muchos datos recopilados de varias fuentes. Por ejemplo, los sensores de IoT pueden recopilar datos de temperatura de varias máquinas. Una base de datos de series temporales almacena la temperatura por cada minuto del día para que los ingenieros puedan identificar cualquier anomalía y corregirla antes de que falle la maquinaria.

Bases de datos relacionales frente a series temporales

La mayoría de las bases de datos de series temporales utilizan documentos NoSQL para almacenar datos, lo cual es una forma común de almacenar datos no estructurados. Los datos no estructurados significan que los desarrolladores pueden almacenar datos como una marca de tiempo y un nombre sin las restricciones de organizar los datos en filas de tablas definidas. Las bases de datos relacionales requieren que los desarrolladores almacenen datos utilizando estructuras específicas, por lo que no son opciones viables para los datos de series temporales con valores y tipos de datos desconocidos. Por ejemplo, un desarrollador no pudo almacenar un valor de cadena en una columna de marca de tiempo utilizando una base de datos relacional, pero se puede hacer con una base de datos NoSQL de serie temporal.

Bases de datos NoSQL frente a series temporales

Para valores desconocidos, el método preferido es una base de datos NoSQL. Debe elegir una base de datos que admita NoSQL, como InfluxDB o Elasticsearch. Estas bases de datos de series temporales ofrecen almacenamiento de datos masivos con un rendimiento rápido durante las consultas. Están principalmente reservados para aplicaciones empresariales grandes y son mucho más difíciles de implementar. Una base de datos NoSQL configurada incorrectamente podría inhibir el rendimiento durante el procesamiento de consultas.

Beneficios de las bases de datos de series temporales

Todas las bases de datos almacenan información, pero una base de datos de series temporales está diseñada específicamente para el análisis basado en el tiempo. El beneficio de una base de datos de serie temporal es su capacidad de almacenar grandes cantidades de datos con cada punto de datos que incluye una marca de tiempo. Debido a que está diseñado teniendo en cuenta grandes conjuntos de datos, una base de datos de series temporales suele ser más rápida y mucho más eficiente para insertar nuevos registros y recuperar grandes conjuntos de datos que una base de datos tradicional.

Las bases de datos de series temporales suelen ser más precisas para consultas que involucran fechas y horas, y almacenan datos de series temporales de manera mucho más eficiente. Cualquier organización que desee almacenar datos de monitoreo se beneficiará de una base de datos de series temporales. Las aplicaciones se benefician de una base de datos de serie temporal gracias a su capacidad de recuperar grandes conjuntos de datos para análisis, visualizaciones, tendencias financieras, información de actividades y cambios en un entorno que ocurren con frecuencia durante el día en diferentes intervalos.

Desventajas de las bases de datos de series temporales

Al igual que con cualquier infraestructura avanzada, las bases de datos de series temporales son más difíciles de implementar y configurar correctamente. Debido a que la mayoría de ellos son NoSQL, una base de datos NoSQL implementada incorrectamente sufrirá un rendimiento deficiente si no se optimiza. Las configuraciones requieren que alguien dentro de la organización comprenda las formas adecuadas de optimizar la base de datos. 

Las empresas que buscan almacenar datos de series temporales necesitan los recursos para almacenar grandes cantidades de datos. Los datos se pueden almacenar en la nube, pero aumentarán los costos de TI. La infraestructura para admitir el almacenamiento de datos y el procesamiento de bases de datos de series temporales puede ser costosa.

Conclusiones

Si necesita encontrar una mejor solución para los datos basados en el tiempo, una base de datos de series temporales es una buena opción. Revise los diferentes tipos de motores de bases de datos, considere los costos y encuentre uno que se escale con el crecimiento del negocio y el aumento en el almacenamiento de datos. Recuerde revisar las configuraciones y las opciones de optimización para garantizar que la base de datos funcione de la manera más eficiente posible.

CONTÁCTENOS
¿Preguntas, comentarios?

¿Tiene alguna pregunta o comentario sobre los productos o las certificaciones de Pure?  Estamos aquí para ayudar.

Programe una demostración

Programe una demostración en vivo y compruebe usted mismo cómo Pure puede ayudarlo a transformar sus datos en potentes resultados. 

Llámenos: 800-976-6494

Medios de comunicación: pr@purestorage.com

 

Pure Storage, Inc.

2555 Augustine Dr.

Santa Clara, CA 95054

800-379-7873 (información general)

info@purestorage.com

CERRAR
¡Su navegador ya no es compatible!

Los navegadores más antiguos a menudo representan riesgos de seguridad. Para brindar la mejor experiencia posible al utilizar nuestro sitio, actualice a cualquiera de estos navegadores más recientes.