OpenSearch es un motor de búsqueda y análisis de código abierto que se utiliza para indexar, consultar y analizar datos de una amplia gama de fuentes de datos.
OpenSearch, basado en Apache Lucene y derivado originalmente de Elasticsearch (otro motor de búsqueda y análisis), proporciona una arquitectura escalable y distribuida para casos de uso de búsqueda en tiempo real, observabilidad, análisis de registros y análisis de seguridad.
OpenSearch incluye paneles de control de OpenSearch para la visualización de datos y la monitorización de aplicaciones. También cuenta con un amplio ecosistema de plugins, interfaces de programación de aplicaciones (API) y clientes que dan soporte a los flujos de trabajo de análisis en los entornos de datos modernos.
Dado que se trata de un proyecto de código abierto con una hoja de ruta impulsada por la comunidad, las organizaciones pueden utilizar OpenSearch sin restricciones de licencia ni dependencia de un vendor lock-in. Su compatibilidad con versiones anteriores de Elasticsearch, junto con su marco de complementos extensible, permite a los equipos adoptar OpenSearch como un motor de análisis flexible para cargas de trabajo operativas, pipelines de machine learning y aplicaciones de búsqueda.
Manténgase al día sobre las tendencias más importantes e intrigantes del sector en materia de IA, automatización, datos y mucho más con el boletín Think. Consulte la Declaración de privacidad de IBM.
Las organizaciones actuales generan grandes volúmenes de datos que pueden resultar muy valiosos, pero solo si están indexados, se pueden consultar y están disponibles en tiempo real. OpenSearch ofrece esta funcionalidad a través de una arquitectura de búsqueda de código abierto diseñada para la escalabilidad, la rentabilidad y la interoperabilidad.
En la práctica, OpenSearch ofrece:
Las empresas obtienen una visibilidad completa del código fuente y la hoja de ruta de OpenSearch, lo que les permite personalizar la plataforma para adaptarla a sus necesidades internas.
OpenSearch mantiene la compatibilidad de API y sintaxis de consulta con Elasticsearch de código abierto, lo que significa que las organizaciones pueden adoptar o modernizar cargas de trabajo sin reescrituras extensas.
Su arquitectura en clúster garantiza una alta disponibilidad mediante nodos, réplicas y fragmentos, lo que permite realizar búsquedas de baja latencia en grandes conjuntos de datos. Para obtener más información, consulte Cómo funciona OpenSearch.
OpenSearch puede recopilar registros, métricas y trazas a gran escala, lo que permite alimentar los paneles de control operativos que se utilizan para la resolución de problemas y el análisis.
Gracias a la autenticación y el control de acceso integrados, los equipos pueden aplicar capacidades de búsqueda en todas las cargas de trabajo de seguridad.
Al tratarse de software de código abierto, OpenSearch se puede implementar en local, en distintos proveedores de servicios en la nube o a través de ofertas de servicios gestionados.
OpenSearch comenzó como una respuesta de la comunidad a los cambios en las licencias de Elasticsearch y Kibana, una popular capa de visualización. Las versiones anteriores de Elasticsearch se lanzaron bajo la licencia Apache 2.0, pero las versiones posteriores adoptaron la licencia pública del lado del servidor (SSPL) y la licencia Elastic. Estas licencias limitaban la reutilización del código abierto, lo que planteaba dificultades a las organizaciones que dependían de software de búsqueda de libre implementación y redistribución.
Con el fin de preservar un ecosistema de búsqueda abierto, Amazon Web Services (AWS) realizó un fork (es decir, creó una copia independiente) de las últimas versiones de Elasticsearch y Kibana bajo licencia Apache 2.0, dando lugar al Proyecto OpenSearch. El proyecto introdujo nuevas características y mejoras bajo un modelo de gobierno abierto, y amplió la compatibilidad con las API de Elasticsearch y las bibliotecas de clientes para simplificar la migración.
Desde entonces, el proyecto OpenSearch ha evolucionado de forma independiente. Cuenta con una hoja de ruta impulsada por la comunidad, contribuciones de múltiples proveedores y un creciente ecosistema de complementos alojados en GitHub. Aunque sigue siendo compatible con muchos de los patrones de Elasticsearch, OpenSearch ha ampliado su conjunto de características con complementos para la búsqueda vectorial, la detección de anomalías y herramientas avanzadas de observabilidad.
Aunque ambos proyectos comparten un origen común, sus trayectorias han tomado caminos diferentes. Elasticsearch continúa bajo SSPL y Elastic License con una estrategia de desarrollo de características. OpenSearch, por el contrario, sigue teniendo la licencia Apache 2.0, lo que prioriza la apertura, la extensibilidad y la visibilidad operativa. En consecuencia, las organizaciones que deben elegir entre ambas opciones ya no solo evalúan las características, sino también los modelos de gobierno, las condiciones de las licencias y la orientación a largo plazo del ecosistema.
La compatibilidad continúa siendo un puente importante entre los proyectos: OpenSearch sigue siendo compatible con muchas API de Elasticsearch, patrones de consulta y bibliotecas de clientes de versiones anteriores, lo que ayuda a los equipos a migrar con una refactorización mínima. También conserva estructuras de repositorios y formatos de índice similares, lo que mantiene la familiaridad para los usuarios que hacen la transición desde Elasticsearch.
OpenSearch se basa en una arquitectura distribuida diseñada para la escalabilidad y el rendimiento en tiempo real. Sus componentes principales incluyen clústeres, nodos, índices, fragmentos y documentos, todos trabajando juntos para almacenar y recuperar datos de manera eficiente.
Los nodos son servidores o instancias en contenedores que se encargan de las operaciones de indexación, consulta y almacenamiento. Entre los tipos de nodos más comunes se incluyen los siguientes:
Un clúster es un conjunto de uno o más nodos que trabajan juntos para gestionar los datos y ejecutar consultas. Los clústeres proporcionan redundancia y equilibrio de carga para que los fallos de los nodos no afecten al rendimiento general. Cada clúster mantiene metadatos sobre índices, fragmentos e información de enrutamiento.
Un índice es un espacio de nombres lógico similar a una tabla de bases de datos relacionales. Contiene asignaciones que definen la estructura de los documentos JSON y referencias a los fragmentos que almacenan esos documentos. El término "índice" también se utiliza como verbo para describir el acto de rellenar un índice con datos.
Los documentos son objetos JSON que representan registros individuales. En pocas palabras, es la información que se almacena y se busca. Al indexarse, los campos dentro de cada documento se analizan, se tokenizan y se almacenan en índices invertidos.
Los fragmentos son las unidades de almacenamiento fundamentales en OpenSearch, donde viven los documentos. Cada índice consta de fragmentos primarios y fragmentos réplica opcionales.
Dado que cada fragmento es una instancia independiente de Lucene (un motor de búsqueda autónomo), OpenSearch distribuye los fragmentos entre los nodos para paralelizar las operaciones de búsqueda y escalar el rendimiento.
Entonces, ¿cómo funciona todo esto? Cuando se indexa un documento, OpenSearch analiza su contenido y aplica analizadores de texto y tokenizadores. Tras el procesamiento, escribe los términos en el fragmento correspondiente.
La indexación corre a cargo de los nodos de datos y puede distribuirse por todo el clúster para mayor velocidad y fiabilidad. A continuación, las consultas se envían a un nodo coordinador, que identifica los fragmentos que contienen datos relevantes, reenvía la consulta a esos fragmentos y agrega los resultados.
Imagine una cocina de restaurante con diferentes puestos de trabajo. La indexación consiste en preparar los ingredientes y enviarlos al puesto adecuado para que estén listos cuando llegue el pedido. Cuando llega una consulta, el nodo coordinador actúa como el encargado de salida: indica lo que se necesita, recoge la contribución de cada puesto y entrega un plato terminado.
OpenSearch incluye características integradas para búsqueda, análisis y observabilidad. Los complementos y las extensiones amplían la funcionalidad, lo que permite a los equipos adaptar la plataforma a cargas de trabajo específicas.
Aunque no es una lista exhaustiva, estas populares extensiones permiten realizar análisis avanzados, machine learning (ML) y escenarios de observabilidad.
Las organizaciones que prefieran una solución gestionada también pueden utilizar Amazon OpenSearch Service, que automatiza el escalado, las copias de seguridad, la sustitución de nodos y el mantenimiento de los clústeres de OpenSearch en AWS.
OpenSearch Dashboards es la interfaz de visualización y análisis de OpenSearch. Ofrece un entorno interactivo para explorar datos indexados, crear visualizaciones y diseñar paneles de control operativos que se utilizan en los flujos de trabajo de observabilidad, análisis de seguridad y monitorización de aplicaciones. Por ejemplo, los equipos pueden aprovechar los paneles de control para visualizar tendencias en métricas e investigar anomalías casi en tiempo real.
OpenSearch Dashboards permite crear gráficos, tablas, mapas, cuadernos y paneles personalizados. También incluye características diseñadas para agilizar el análisis. Los cuadernos permiten a los usuarios combinar visualizaciones y texto en una única narrativa, mientras que los paneles operativos organizan las visualizaciones de observabilidad creadas con Piped Processing Language en una pantalla unificada.
Debido a que OpenSearch Dashboards comparte una IU herencia con Kibana, muchos equipos de datos encuentran el flujo de trabajo familiar. Sin embargo, se desarrolla bajo su propia hoja de ruta e incluye capacidades que reflejan el conjunto más amplio de características de OpenSearch.
OpenSearch admite una amplia gama de casos de uso en todos los sectores, que incluyen:
Teams indexa registros de aplicaciones, infraestructuras y servicios en la nube para analizar problemas de rendimiento y solucionar interrupciones. OpenSearch soporta el consumo de alto volumen y análisis en tiempo real, lo que lo hace adecuado para sistemas de producción distribuidos, como un sitio multinacional de comercio electrónico.
Con soporte para métricas, registros y rastreos, OpenSearch proporciona una plataforma de observabilidad integrada. Trace Analytics permite visualizar las interacciones del servicio, mientras que el análisis de aplicaciones correlaciona los datos de telemetría para comprender el comportamiento del sistema e identificar la latencia o los fallos. Los paneles de control y las consultas de PPL permiten a los equipos investigar los problemas rápidamente y crear vistas operativas reutilizables.
La detección de anomalías de OpenSearch y los algoritmos de ML Commons permiten a las organizaciones aplicar técnicas de búsqueda y análisis en todas las operaciones de seguridad. Los equipos lo utilizan para detectar patrones inusuales en los registros de autenticación o en el comportamiento de las aplicaciones, así como para activar notificaciones cuando se cumplen determinadas condiciones o se alcanzan ciertos umbrales.
Las organizaciones utilizan OpenSearch como motor de búsqueda detrás de sitios web, catálogos de productos y sistemas de contenido empresarial. La búsqueda de texto completo, el autocompletado, la coincidencia de frases y la búsqueda vectorial permiten abordar una amplia variedad de casos de uso relacionados con la experiencia del usuario y las recomendaciones.
OpenSearch Dashboards ofrece visualizaciones interactivas, informes y cuadernos que ayudan a los equipos a explorar datos, monitorizar tendencias, realizar un seguimiento de los KPI y compartir perspectivas con los stakeholders.
Con ML Commons, los equipos pueden ejecutar operaciones basadas en modelos dentro de OpenSearch, como clustering, clasificación y previsión. Estas capacidades ayudan a casos de uso como la detección del fraude, la predicción de la demanda, la segmentación de los clientes y el enriquecimiento de los pipelines de datos posteriores.
Obtenga respuestas fiables con agentes de IA sensibles al contexto, impulsados por datos gobernados y conectados, sin necesidad de cambiar de plataforma ni de comprometerse con un proveedor.
Diseñe una estrategia de datos que elimine los silos, reduzca la complejidad y mejore la calidad de los datos para ofrecer experiencias excepcionales a clientes y empleados.
Escale con éxito la IA con la estrategia, los datos, la seguridad y el gobierno adecuados.