La versión breve es que ayudamos a todos a encontrar lo que necesitan más rápido: desde empleados que necesitan documentos de la intranet, hasta clientes que buscan en línea el par de zapatos perfecto. Pero la versión más técnica es así:
Elasticsearch es un motor de búsqueda y analítica distribuido, gratuito y abierto para todos los tipos de datos, incluidos textuales, numéricos, geoespaciales, estructurados y no estructurados. Elasticsearch está desarrollado a partir de Apache Lucene y fue presentado por primera vez en 2010 por Elasticsearch N.V. (ahora conocido como Elastic). Conocido por sus API REST simples, naturaleza distribuida, velocidad y escalabilidad, Elasticsearch es el componente principal del Elastic Stack, un conjunto de herramientas gratuitas y abiertas para la ingesta, el enriquecimiento, el almacenamiento, el análisis y la visualización de datos. Comúnmente denominado el ELK Stack (por Elasticsearch, Logstash y Kibana), el Elastic Stack ahora incluye una gran colección de agentes ligeros conocidos como Beats para enviar los datos a Elasticsearch.
Primeros pasos con Elasticsearch: almacenar, buscar y analizar con el Elastic Stack gratuito y abierto.
Mira el video
Introducción a ELK: da los primeros pasos con logs, métricas, ingesta de datos y visualizaciones personalizadas en Kibana.
Mira el video
Primeros pasos con Elastic Cloud: inicia tu primer despliegue.
Conoce más
La velocidad y escalabilidad de Elasticsearch y su capacidad de indexar muchos tipos de contenido significan que puede usarse para una variedad de casos de uso:
- búsqueda de aplicaciones
- búsqueda de sitio web
- búsqueda empresarial
- logging y analíticas de log
- métricas de infraestructura y monitoreo de contenedores
- monitoreo de rendimiento de aplicaciones
- análisis y visualización de datos geoespaciales
- analítica de seguridad
- analítica de negocios
Los datos sin procesar fluyen hacia Elasticsearch desde una variedad de fuentes, incluidos logs, métricas de sistema y aplicaciones web. La ingesta de datos es el proceso mediante el cual estos datos se parsean, normalizan y enriquecen antes de su indexación en Elasticsearch. Una vez indexados en Elasticsearch, los usuarios pueden ejecutar consultas complejas sobre sus datos y usar agregaciones para recuperar resúmenes complejos de sus datos. Desde Kibana, los usuarios crean visualizaciones poderosas de sus datos, comparten dashboards y gestionan el Elastic Stack.
Un índice de Elasticsearch es una colección de documentos relacionados entre sí. Elasticsearch almacena datos como documentos JSON. Cada documento correlaciona un conjunto de claves (nombres de campos o propiedades) con sus valores correspondientes (textos, números, Booleanos, fechas, variedades de valores, geolocalizaciones u otros tipos de datos).
Elasticsearch usa una estructura de datos llamada índice invertido, que está diseñado para permitir búsquedas de texto completo muy rápidas. Un índice invertido hace una lista de cada palabra única que aparece en cualquier documento e identifica todos los documentos en que ocurre cada palabra.
Durante el proceso de indexación, Elasticsearch almacena documentos y construye un índice invertido para poder buscar datos en el documento casi en tiempo real. La indexación comienza con la API de índice, a través de la cual puedes agregar o actualizar un documento JSON en un índice específico.
Logstash, uno de los productos principales del Elastic Stack, se usa para agregar y procesar datos y enviarlos a Elasticsearch. Logstash es una pipeline de procesamiento de datos open source y del lado del servidor que te permite ingestar datos de múltiples fuentes simultáneamente, enriquecerlos y transformarlos antes de que se indexen en Elasticsearch.
Kibana es una herramienta de visualización y gestión de datos para Elasticsearch que brinda histogramas en tiempo real, gráficos circulares y mapas. Kibana también incluye aplicaciones avanzadas, como Canvas, que permite a los usuarios crear infografías dinámicas personalizadas con base en sus datos, y Elastic Maps para visualizar los datos geoespaciales.
Elasticsearch es rápido. Como Elasticsearch está desarrollado sobre Lucene, es excelente en la búsqueda de texto completo. Elasticsearch también es una plataforma de búsqueda en casi tiempo real, lo que implica que la latencia entre el momento en que se indexa un documento hasta el momento en que se puede buscar en él es muy breve: normalmente, un segundo. Como resultado, Elasticsearch está bien preparado para casos de uso con restricciones de tiempo como analítica de seguridad y monitoreo de infraestructura.
Elasticsearch es distribuido por naturaleza. Los documentos almacenados en Elasticsearch se distribuyen en distintos contenedores conocidos como shards, que están duplicados para brindar copias redundantes de los datos en caso de que falle el hardware. La naturaleza distribuida de Elasticsearch le permite escalar horizontalmente a cientos (o incluso miles) de servidores y gestionar petabytes de datos.
Elasticsearch viene con un amplio conjunto de características. Además de su velocidad, la escalabilidad y la resistencia, Elasticsearch tiene una cantidad de características integradas poderosas que contribuyen a que el almacenamiento y la búsqueda de datos sean incluso más eficaces, como data rollup y gestión de ciclo de vida del índice.
El Elastic Stack simplifica la ingesta de datos, la visualización y el reporte. La integración con Beats y Logstash facilita el proceso de datos antes de indexarlos en Elasticsearch. Y, Kibana provee visualización en tiempo real de los datos de Elasticsearch así como UI para acceder rápidamente al Monitoreo de rendimiento de aplicaciones (APM), los logs y los datos de métricas de infraestructura.
Sí, las características gratuitas y abiertas de Elasticsearch son de uso gratuito con SSPL o la licencia Elastic. Hay características gratuitas adicionales disponibles con la licencia Elastic, y las suscripciones de pago brindan acceso a soporte y a características avanzadas como Alerting y Machine Learning.
La distribución oficial de Elasticsearch está disponible en la página web de Elastic.
Elasticsearch es un proyecto gratuito y abierto gestionado por Elastic. La base de código incluye contribuciones de desarrolladores tanto dentro como fuera de Elastic.
Cualquiera puede presentar una solicitud de extracción en el repositorio de GitHub de Elasticsearch. Elastic realiza una revisión transparente de todas las solicitudes de extracción antes de combinarlas en la base de código.
Elasticsearch puede descargarse como un servicio hospedado y gestionado a través de Elasticsearch Service (disponible en Amazon Web Services [AWS], Google Cloud y Alibaba Cloud) o puedes descargarlo e instalarlo en tu propio hardware o en el cloud. La documentación de Elasticsearch brinda instrucciones para descargar, instalar y configurar Elasticsearch.
Para los usuarios que quieren provisionar, gestionar y monitorear sus despliegues desde una consola única pero prefieren no usar una plataforma de cloud público, Elastic también ofrece Elastic Cloud Enterprise (que puede desplegarse en clouds públicos o privados, máquinas virtuales o hardware básico), así como un nivel de suscripción privada.
Elasticsearch soporta 34 lenguajes de texto, desde árabe hasta tailandés, y provee analizadores para cada uno. Puedes encontrar la lista completa en la documentación del analizador de lenguaje de Elasticsearch. Se puede agregar soporte para idiomas adicionales con plugins personalizados.
Sí, Elasticsearch provee un conjunto de API REST integral y poderoso para realizar tareas como comprobar el estado del cluster, realizar CRUD (crear, leer, actualizar y borrar) y operaciones de búsqueda en índices, y ejecutar operaciones de búsqueda avanzada, como filtrado y agregaciones.