ELK – ¿Cómo manejar datos en Tiempo Real?
Entorno ELK: Manejo de datos en Tiempo Real
Entorno ELK: Manejo de datos en Tiempo Real
Después de nuestro primer post en el que introducíamos nuestro proyecto de análisis de datos en tiempo real, pasamos a la descripción de las herramientas y recursos necesarios.
Como resulta obvio, lo principal en este proyecto son los datos, y para ello decidimos que estos fueran reales y que pudiéramos contrastar y comprender. Así fue como decimos realizar la monitorización de datos de dos automóviles en circulación. Por suerte la captura de datos en utilitarios resulta muy fácil usando el protocolo OBDII.
Protocolo para extraer datos: OBDII
OBDII es un sistema de diagnóstico a bordo de vehículos. Este sistema está disponible en una amplia gama de vehículos desde aproximadamente el año 1996 en Estados Unidos. En Europa este sistema se instaló en el año 2000 para los vehículos gasolina, en 2003 para los vehículos diésel y en 2005 para camiones. Gracias a este dispositivo hoy en día podemos acceder a los sensores y datos de cualquier vehículo cuya fecha de fabricación supere las anteriormente citadas. Este sistema es muy útil para IoT.
Análisis de datos en tiempo real: ELK
La otra parte más importante de este proyecto consiste en ser capaz de capturar los datos, analizarlos y finalmente mostrarlos. Para esto utilizamos el entorno ELK, presentado en el anterior post, Elasticsearch+Logstash+Kibana.
Siguiendo el esquema superior tras la creación del log (registro) está la fase de la captura de los datos (recolección, procesamiento y almacenado). Para esto usaremos Logstash una herramienta capaz de recolectar los logs, modificarlos de acuerdo a nuestras necesidades y, posteriormente, enviarlos hacia la base de datos. Gracias a esta herramienta, podemos enviar los logs creados por el coche a una base de datos en el formato que más nos interesa.
En una segunda etapa usaremos Elasticsearch. Este combina un motor de búsqueda y una base de datos que usaremos para almacenar los datos procesados por Logstash. Las dos características diferenciadoras de esta base de datos es el ser distribuida y la gran velocidad de procesamiento de búsquedas que puede alcanzar. Esta combinación hace que sea ideal para realizar proyectos de análisis en tiempo real.
Como último paso para mostrar los datos decidimos usar Kibana. Kibana es un plugin de Elasticsearch que aporta la visualización gráfica de los datos almacenados en el clúster de Elasticsearch. De esta forma, se pueden crear gráficas individuales o dashboards completos. Además, gracias a la función de refresco, se pueden ver los datos actualizados a nivel de segundos. Es una interfaz gráfica e intuitiva, por lo que cualquier persona perteneciente al mundo del negocio tiene la completa autonomía para generarse sus propias representaciones gráficas, en función de sus necesidades y sin necesidad de contar con la parte de IT.
Así es como se crea el entorno ELK (Elastic Stack, nombre que recibe en inglés) que nos permite conseguir las representaciones gráficas de datos obtenidos en tiempo real.
Business Intelligence y el arte de las representaciones
En el siguiente post, se detallará como crear los gráficos usando Kibana, además de crear nuestros propio dashboard.
Te esperamos en el siguiente post, ¿te lo vas a perder?