Tag: Kibana

Qué es Elasticsearch

ElasticSearch es un gestor de datos y motor de búsqueda basado en Lucene. Se trata de un sistema distribuido que permite trabajar con un gran volumen de datos de cualquier tipo, con una interfaz web RESTful de búsqueda así como clientes para distintos lenguajes de programación, y un sistema de analítica que permite realizar consultas en tiempo real. Elasticsearch está publicado como open source (código abierto) bajo licencia Apache y desarrollado en Java. Se trata de una tecnología que ayuda a optimizar la arquitectura de datos de nuestro negocio.

También es conocido bajo el acrónimo ELK, un conjunto de tres tecnologías de código abierto:

  • Elasticsearch. Motor de búsqueda y análisis.
  • Logstash. Canal de procesamiento de la información que ingiere datos de múltiples fuentes simultáneamente, las transforma y luego las envía a un “stash” como Elasticsearch.
  • Kibana. Permite la visualización de datos a través de tablas y gráficos.

Qué ventajas ofrece Elasticsearch

  1. Sistema distribuido. Los datos se almacenan en diferentes sistemas que colaboran entre sí y nos muestran los resultados que les demandamos en cada momento en una sola petición.
  2. Multitenencia de datos. Nos permite operar sobre distintos índices al mismo tiempo y así potenciar nuestras búsquedas.
  3. Acceso en tiempo real. Esta tecnología nos permite acceder de forma instantánea a los datos.
  4. Búsqueda de texto completo. Usar Elasticsearch hace que implementen una gran cantidad de funciones, tales como la división personalizada de texto en palabras, derivación personalizada, búsqueda personalizada, etc.
  5. Autocompletado y búsqueda instantánea. Buscar mientras el usuario escribe. Pueden ser simples sugerencias de búsquedas tratando de predecirlas en base al historial de búsqueda, o simplemente haciendo una búsqueda completamente nueva para cada palabra clave. Esta opción funciona como ocurre en el buscador Google, que escribimos una palabra y nos sugiere otras opciones de búsqueda. Además, al usar Elasticsearch nos permite encontrar lo que estamos buscando aunque tenga un error ortográfico.
  6. Consultas complejas y afinación. Elasticsearch tiene una poderosa DSL basada en JSON, que permite a los equipos de desarrollo construir consultas complejas y afinarlas para recibir los resultados más precisos de una búsqueda. También proporciona una forma de clasificar y agrupar los resultados.
  7. Ahorro tiempo de análisis y mayor velocidad. Elasticsearch puede ejecutar consultas complejas extremadamente rápido. También almacena casi todas las consultas estructuradas comúnmente utilizadas como filtro para el conjunto de resultados y las ejecuta solo una vez. Para cada otra solicitud que contiene un filtro en caché, comprueba el resultado de la caché. Esto ahorra el tiempo de análisis y ejecución de la consulta mejorando la velocidad.
  8. Elasticsearch está orientado a documentos.  Elasticsearch no utiliza esquemas, acepta documentos JSON e intenta detectar la estructura de datos, indexar los datos y hacer que se pueda buscar.
  9. Uso de facetas. Una búsqueda facetada es más sólida que una búsqueda de texto típica, lo que permite a los usuarios aplicar una cantidad de filtros a la información e incluso tener un sistema de clasificación basado en los datos. Esto permite una mejor organización de los resultados de búsqueda y permite a los usuarios determinar mejor qué información necesitan examinar.
  10. Escalabilidad horizontal y registro de nodos. Elasticsearch permite escalar horizontalmente, por lo que, gracias a su diseño, permite extender los recursos y equilibrar la carga entre los nodos de un cluster. Además, registra cualquier cambio realizado en registros de transacciones en múltiples nodos en el clúster para minimizar la posibilidad de pérdida de datos. Por otro lado, estos cluster pueden detectar aquellos nodos que fallan y reorganizarlos para que los datos siempre sean accesibles.

Al tratarse de una tecnología de open source, en su web, existen diversos videos tutoriales y webinars a los que puedes acceder de forma gratuita tan solo facilitando tu correo electrónico puedes aprender a utilizar Elasticsearch ¡si aún no lo has hecho!

videos_elasticsearch

En todo proyecto en el que se trabaja con Big Data,  la visualización de datos es una de las áreas más relevantes para la comprensión y análisis de datos masivos. Asimismo, poder sacar partido a toda esa información y extraer conclusiones es imprescindible para cualquier empresa que trabaje con Big Data.

En concreto, la visualización de grandes volúmenes datos (Big Data Visualization) consiste en representar de forma comprensible y medible los datos obtenidos del procesamiento y modelización de grandes volúmenes de datos (Big Data) con el objetivo de, no sólo de mostrar de forma más atractiva los datos, sino de comunicar esta información de forma clara y entendible a través de gráficos, diagramas o infografías. En este punto es donde entran en juego las herramientas para la visualización de datos masivos. Saber elegir la herramienta adecuada para aquello que queramos comunicar es imprescindible para desarrollar una analítica empresarial o Business Analytics de forma eficiente.  A continuación, desglosamos cinco herramientas para la visualización de datos:

TABLEAU 

Se trata de una de las más conocidas herramientas de visualización de datos. Su interfaz permite generar visualizaciones sobre grandes volúmenes de datos y personalizarlo.  Posee una versión gratuita: Tableau Public, con la que puedes crear mapas interactivos, gráficos de barras, tartas, etc. de forma sencilla.

Características:

  • Puede importar tablas Excel,
  • Gráficos interactivos y pueden ser embebidos en tu web y/o compartirlos
  • Gráficos Responsive, optimizados para visualizarlos en diversos dispositivos (tablets y moviles)

QLIK View & Sense

QlikView pertenece a la empresa Qlik la cual posee varios productos para la visualización de datos masivos. El más popular es QlikView. Destaca por su sencillez, con una configuración muy personalizable, permitiendo a los usuarios tomar decisiones basadas en datos. Posibilita trabajar con grandes cantidades de datos procedentes de diferentes fuentes. La otra herramienta de la empres Qlik se llama QkikSense. Se trata de una versión aún más sencilla que QlikView para crear visualizaciones flexibles e interactivas.

QlikView y Qlik Sense comparten el mismo motor y una serie de capacidades básicas, pero hay diferencias entre ellos que reflejan tanto los avances en tecnología, como la evolución de las necesidades del consumidor en el mercado.

Características:

  • Gráficos Responsive, optimizados para visualizarlos en diversos dispositivos (tablets y móviles)
  • Permite formular y responder sus propias preguntas y seguir sus propias rutas hacia el conocimiento.

PLOTLY

Plotly, también conocida por su versión web Plot.ly, es una herramienta de visualización y análisis de datos online. Se trata de un software colaborativo bastante flexible que ofrece visualizaciones complejas y sofisticadas. Posee todo tipo de gráficas: columnas, líneas, circulares, histogramas, etc. Funciona con cualquier formato de datos (Excel, CSV o texto) y se puede importar desde Google Drive o Dropbox.

Características:

  • Está integrado con lenguajes de programación como Python, JavaScript o Matlab.
  • Se puede compartir y editar datos, gráficas y macros con otros usuarios.

CARTO

Aunque esta tecnología sólo permite establecer visualizaciones de datos masivos sobre mapas, se trata de un servicio open source dirigido a cualquier usuario, independientemente del nivel técnico que tenga, con una interfaz muy amigable. Carto ofrece dos aplicaciones muy completas: Carto Builder, donde los usuarios pueden administrar datos, ejecutar análisis o diseñar mapas personalizados; y Carto Engine, el cual ofrece un conjunto de bibliotecas para crear interfaces de visualización de mapas y datos personalizados.

Características:

  • Permite crear una gran variedad de mapas interactivos, lo que permite elegir entre el catálogo que el mismo servicio ofrece, incluir mapas de Google Maps, o agregar a la lista tus propios mapas personalizados.
  • Permite el acceso a los datos de Twitter.

KIBANA

Kibana es un complemento de visualización de datos de código abierto para Elasticsearch. Posee una gran variedad de gráficos interactivos: histogramas, gráficos de líneas, gráficos circulares, rayos solares, etc. Además, puedes diseñar tus propias visualizaciones y Elastic Maps para visualizar datos geoespaciales. Todos ellos aprovechan las capacidades de agregación de Elasticsearch.

Características;

  • Con Kibana se puede detectar las anomalías que se esconden en los datos de Elasticsearch y explorar las propiedades que los influencian significativamente.
  • Kibana permite visualizar los datos de Elasticsearch y navegar por Elastic Stack, de modo que puedes hacer cualquier cosa, desde saber por qué te están buscando por Internet a las 2:00 a.m. hasta comprender el impacto que la lluvia puede tener en tus números trimestrales.

kibana_web