Vistas de página en total

miércoles, 19 de febrero de 2020

Por qué las series de tiempo son importantes para métricas, análisis en tiempo real y datos de sensores



Introducción

Dentro de Industria 4.0 y más cercano a IIoT, el procesamientos de la información lo podemos llevar a cabo a través de sensores, a fin de Diagnosticar y predecir futuros fallos, y esto se hace procesando Series de Tiempo.

Las series de tiempo en los últimos años se han convertido en un caso de uso común en muchas industrias y en una categoría de base de datos propia. Las métricas, los eventos y otros datos basados en el tiempo se generan a un ritmo exponencial, ya que existe un requisito creciente para analizar los entornos complejos de hoy.

Históricamente, las series de tiempo se habían asociado con aplicaciones en finanzas. Sin embargo, a medida que los desarrolladores y las empresas se mueven para instrumentar más de sus servidores, aplicaciones, infraestructura de red y el mundo físico, las series temporales se están convirtiendo en el estándar de facto sobre cómo pensar en almacenar, recuperar y extraer estos datos en tiempo real e histórico.

¿Qué son los datos de series temporales?

Las series de tiempo son simplemente mediciones o eventos que se rastrean, supervisan, disminuyen y agregan a lo largo del tiempo. Esto podría ser métricas del servidor, monitoreo del rendimiento de la aplicación, datos de la red, datos del sensor, eventos, clics, operaciones en un mercado y muchos otros tipos de datos analíticos. La diferencia clave con los datos de series temporales de los datos regulares es que siempre hace preguntas al respecto a lo largo del tiempo. Una forma a menudo simple de determinar si el conjunto de datos con el que está trabajando es una serie temporal o no, es mirar y ver si uno de sus ejes es el tiempo. A continuación se presentan algunos ejemplos de datos de series temporales trazados en gráficos:

Los datos de series temporales vienen en dos formas: regular e irregular.

Las series de tiempo regulares consisten en mediciones obtenidas de sensores de software o hardware a intervalos regulares de tiempo (digamos cada 10 segundos, por ejemplo).




De estos datos se generan los que conocemos como Kpi´s o Métricas.


Las series temporales irregulares son eventos controlados por usuarios u otros eventos externos.



Los resúmenes de series irregulares se vuelven regulares ellos mismos. Por ejemplo, resumir el tiempo de respuesta promedio para solicitudes en una aplicación en intervalos de 1 minuto o mostrar el precio comercial promedio de las acciones de Apple cada 10 minutos en el transcurso de un día.

Hay varias paquetería de Software que pueden solucionar este procesamiento con diferentes alcances como son Graphite, RRD, OpenTSDB, Prometheus e InfluxData entre otras

El SW InfluxData está optimizada para ambos casos de uso (regular e irregular), lo que definitivamente es una ventaja competitiva que lo diferencia de manera significativa de otras soluciones. Muchos servicios y bases de datos de series temporales solo admiten el caso de uso de métricas de series temporales regulares. InfluxDB permite a los usuarios recopilar múltiples y de diversas fuentes series, almacenar, consultar, procesar y visualizar datos sin el procesar alta precisión además de los datos agregados y disminuidos. Esto le caracteriza como una opción viable para aplicaciones en ciencia y sensores que requieren almacenar datos sin procesar.

La pila InfluxData organiza series de tiempo en un formato estructurado. En el nivel superior hay un nombre de medición, seguido de un conjunto de pares clave / valor llamados etiquetas que describen los metadatos, seguido de pares clave / valor de los valores reales llamados campos. Los valores de campo en InfluxDB pueden ser booleanos, int64, float64 o cadenas. Finalmente, hay una marca de tiempo para el conjunto de valores. Todos los datos son consultados por la medición, las etiquetas y el campo junto con el rango de tiempo.

Esta estructura de conjunto facilita a los desarrolladores la creación de herramientas en torno a las API que proporciona InfluxData. A diferencia de las bases de Datos Relacionales o de Documentos, InfluxDB organiza los datos de series temporales en una estructura establecida.

Con el esquema y la configuración correctos, un solo servidor InfluxDB puede manejar más de 1,000,000 de escrituras por segundo, algo que la competencia no puede igualar.

Caso de uso horizontal

La plataforma InfluxData proporciona un conjunto integral de herramientas y servicios para recopilar y acumular datos de métricas y eventos, analizar los datos y actúa sobre los datos a través de potentes visualizaciones y notificaciones.

Ya sea que los datos provengan de humanos, sensores o máquinas, InfluxData permite a los desarrolladores crear aplicaciones de monitoreo, análisis y IIoT de próxima generación de manera más rápida y fácil, y escalar ofreciendo valor comercial real y rápidamente.

Esta aplicacion tiene clientes y usuarios que abarcan tres casos de uso principales: monitoreo de DevOps, análisis en tiempo real y monitoreo de IoT. Cualquier persona que tenga servidores, máquinas virtuales, contenedores, aplicaciones, sensores, usuarios o eventos para rastrear podría beneficiarse del uso de InfluxData.

Monitoreo de DevOps (contracción en inglés de developers&operations)

Para nuestros usuarios de organizaciones medianas y grandes, lo utiliza en el espacio de métricas y monitoreo de DevOps. Otros usuarios están creando soluciones de monitoreo personalizadas desde cero, implementando la pila InfluxData para rastrear primero sus servidores, máquinas virtuales, contenedores, almacenes de datos y hardware de red y luego como una plataforma de métricas generalizadas para desarrolladores de aplicaciones dentro de la organización. Tambien se puede utilizar InfluxData para complementar los productos comerciales de APM para instrumentar porciones de la pila para las que no existen sondas o agentes, o para unir métricas de múltiples soluciones de monitoreo. Y en ambos casos, los usuarios no solo recopilan métricas para determinar una línea de base sobre el estado de sus sistemas, sino que también usan InfluxDB como el lugar para acumular sus eventos de registro. Tener acceso a los datos de registro es una fuente contextual secundaria e importante para ayudar a una mayor selección y resolver problemas.

Análisis en tiempo real

En el ámbito de la analítica en tiempo real, vemos organizaciones de todos los tamaños. Algunos están creando aplicaciones que enfrentarán a sus usuarios con InfluxDB como la base de datos subyacente. Otros están instrumentando métricas empresariales, sociales o de desarrollo en tiempo real para consumo interno. Frecuentemente vemos a los usuarios comenzar con el caso de uso de métricas y monitoreo personalizado de DevOps, y luego pasar a análisis en tiempo real una vez que se despliega la plataforma. InfluxDB finalmente se convierte en la tienda central de todas las series de tiempo, sensores y datos analíticos.

Internet de las cosas (IoT)

En el ámbito de IoT hay muchos casos de subuso. Hemos visto usuarios en entornos industriales como fábricas, petróleo y gas, así como plantas de energía renovable, agricultura, hogares inteligentes, carreteras e infraestructura. También hay usuarios en IoT de grado de consumidor como wearables, dispositivos de consumo y rastreadores.