¿Qué es Elasticsearch?

ElasticSearch es un motor de búsqueda orientado a documentos que nos permite indexar un gran volumen de datos para poder hacer consultas sobre ellos posteriormente.

Elasticsearch es un servidor de búsqueda basado en Lucene. Provee un motor de búsqueda de texto completo, distribuido y con capacidad de multi-tenencia con una interfaz web RESTful y con documentos JSON.

Apache Lucene es una API de código abierto para recuperación de información, originalmente implementada en Java por Doug Cutting. Está apoyado por el Apache Software Foundation y se distribuye bajo la Apache Software License.

Elasticsearch, sin duda una de las herramientas más populares en los últimos tiempos, creada con el fin de realizar búsquedas en grandes cantidades de datos. En uno de los últimos artículos en la web, donde os hablaba de las últimas tendencias en el mundo IT.
¿Porqué usar una herramienta como Elasticsearch?
¿Qué es Elasticsearch?
  • Es orientado a documentos: Utiliza JSON
  • No utiliza esquemas, aunque si son necesarios se pueden llegar a definir
  • Distribuido: Realiza escalado de manera dinámica, implementa alta disponibilidad (HA)
  • Utiliza una potente API: expone prácticamente todas sus funcionalidades utiliza una API REST
  • Permite búsquedas tanto estructuras como no estructuradas
En nuestra cada vez más compleja sociedad de la información, navegar entre toneladas de información puede ser algo realmente complicado y tedioso. En los últimos años todos estamos aún más conectados si cabe. Acceder a múltiples canales de información está en nuestra mano en tan solo unos pocos clicks.


Y aunque esto tiene un sinfín de ventajas, también puede ser un problema cuando quieres buscar unos patrones exactos, entre tanta marabunta de información.
Justamente Elasticsearch busca ayudarnos en este cometido. Separar el grano de la paja, dentro de este inmenso granero llamado “Big Data”, y mostrarla de forma legible además de ordenada.
Se trata de un motor de búsqueda y análisis. Es distribuible y fácilmente escalable, enfocado sobre todo al mundo empresarial y científico. Es accesible a través de una extensa y elaborada API. Con esta herramienta podemos impulsar búsquedas extremadamente rápidas que respalden nuestras aplicaciones de descubrimientos de datos.

Está escrito en Java, utilizando la filosofía de desarrollo de código abierto y utiliza una licencia Apache, similar a la de software libre.

Trabajo conjuntamente con un motor de recopilación de datos llamado Logtash, y una plataforma de análisis y visualización llamada Kibana. Los tres productos están diseñados para trabajar de manera conjunta, una solución llamada “Elastic Stack” (anteriormente llamada ELK)
Sus características:

  • Es orientado a documentos: Utiliza JSON
  • No utiliza esquemas, aunque si son necesarios se pueden llegar a definir
  • Distribuido: Realiza escalado de manera dinámica, implementa alta disponibilidad (HA)
  • Utiliza una potente API: expone prácticamente todas sus funcionalidades utiliza una API REST
  • Permite búsquedas tanto estructuras como no estructuradas

¿Cómo funciona Elasticsearch?
Su funcionamiento es simple y sólo conlleva una ligera curva de aprendizaje. En contraposición con los sistemas de bases de datos relacionales como SQL, ya que estos no están pensados para la cantidad de datos que puede llegar a manejar Elasticsearch.
Durante una operación de indexación, por mostrar un ejemplo, convierte datos sin formato, como archivos de registro o archivos de mensajes, en documentos internos y los almacena en una estructura de datos básica similar a un objeto JSON.
Cada documento resultante es un conjunto simple de claves y valores correlativos: las claves son cadenas y los valores son uno de los numerosos tipos de datos: cadenas, números, fechas o listas.
Referencias
https://youtu.be/clZH-Yd0o9s


Comentarios

Entradas más populares de este blog

ESCANEO DEL CODIGO PDF417 DEL DNI (Documento Nacional de Identidad digital)

¿Que tipos de Mensajes de HL7 hay?

¿Que es Razor?