OpenSearch es una búsqueda de código abierto y analytics engine que se utiliza para indexar, consultar y analizar datos procedentes de una amplia variedad de fuentes.
OpenSearch, basado en Apache Lucene y derivado originalmente de Elasticsearch, que es otra búsqueda y analytics engine, proporciona una arquitectura escalable y distribuida para casos de uso de búsqueda en tiempo real, observabilidad, analytics de registros y analytics de seguridad.
OpenSearch incluye paneles de OpenSearch para la visualización de datos y el monitoreo de aplicaciones. Además, cuenta con un amplio ecosistema de complementos, interfaces de programación de aplicaciones (API) y clientes que admiten flujos de trabajo de analytics en entornos de datos modernos.
Debido a que se desarrolla como un proyecto de código abierto con una hoja de ruta impulsada por la comunidad, las organizaciones pueden usar OpenSearch sin restricciones de licencia ni vendor lock-in (dependencia de proveedores). Su compatibilidad con versiones anteriores de Elasticsearch, junto con su marco de complementos extensible, permite a los equipos adoptar OpenSearch como un flexible analytics engine 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 de la industria sobre IA, automatización, datos y más con el boletín Think. Consulte la Declaración de privacidad de IBM.
Las organizaciones actuales generan volúmenes significativos de datos que pueden ser invaluables, pero solo si los datos están indexados, se pueden buscar 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 escala, la rentabilidad y la interoperabilidad.
En la práctica, OpenSearch ofrece:
Las empresas obtienen una visibilidad completa del código base y la hoja de ruta de OpenSearch, lo que les permite personalizar la plataforma para cumplir con los requisitos internos.
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 exhaustivas.
Su arquitectura de clúster admite alta disponibilidad a través de nodos, réplicas y fragmentos, lo cual permite búsquedas de bajalatencia en grandes conjuntos de datos (para más información, consulte Cómo funciona OpenSearch).
OpenSearch puede realizar la ingesta de registros, métricas y rastreos a escala, a fin de habilitar los paneles operativos utilizados para la resolución de problemas y el análisis.
Con autenticación y control de acceso integrados, los equipos pueden aplicar capacidades de búsqueda en todas las cargas de trabajo de seguridad.
Como software de código abierto, OpenSearch puede desplegarse on premises, entre proveedores de la nube o a través de ofertas de servicios gestionados.
OpenSearch comenzó como una respuesta de la comunidad a los cambios de licencia para 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 restringían la reutilización de código abierto, creando desafíos para las organizaciones que dependían del software de búsqueda redistribuible y de implementación libre.
Para mantener un ecosistema de búsqueda abierto, Amazon Web Services (AWS) bifurcó (es decir, creó una copia independiente de) las últimas versiones Apache 2.0 de Elasticsearch y Kibana, creando el Proyecto OpenSearch. El proyecto introdujo nuevas características y mejoras bajo un modelo de gobernanza abierto, además, amplió la compatibilidad con las API de Elasticsearch y las bibliotecas cliente 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 patrones de Elasticsearch, OpenSearch amplió su conjunto de características con plugins para la búsqueda vectorial, 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 SSLL y Elastic License con una estrategia de desarrollo de características patentada. OpenSearch, por el contrario, sigue teniendo la licencia Apache 2.0, priorizando la apertura, la extensibilidad y la visibilidad operativa. Como resultado, las organizaciones que eligen entre los dos ahora evalúan no solo las características, sino también los modelos de gobernanza, los términos de licencia y la dirección del ecosistema a largo plazo.
La compatibilidad continúa siendo un elemento clave que une a ambos proyectos: OpenSearch sigue admitiendo muchas de las API, los patrones de consulta y las bibliotecas de cliente de Elasticsearch de versiones anteriores, lo que ayuda a los equipos a migrar con un mínimo de refactorización. Además, conserva estructuras de repositorios y formatos de índice similares, lo que permite mantener la familiaridad para los usuarios que realizan la transición de Elasticsearch.
OpenSearch se basa en una arquitectura distribuida diseñada para escalar y el rendimiento en tiempo real. Sus componentes principales incluyen clústeres, nodos, índices, fragmentos y documentos, que trabajan de manera conjunta para almacenar y recuperar datos de manera eficiente.
Los nodos son servidores o instancias contenedorizadas que realizan operaciones de indexación, consulta y almacenamiento. Los tipos de nodos más comunes incluyen:
Un clúster es una colección de uno o más nodos que trabajan juntos para gestionar datos y ejecutar consultas. Los clústeres proporcionan redundancia y equilibrio de carga para que las fallas de los nodos no afecten el 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 base de datos relacional. Contiene mapeos 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 llenar un índice con datos.
Los documentos son objetos JSON que representan registros individuales. En pocas palabras, son los datos que se almacenan y buscan. Al indexar, 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 residen los documentos. Cada índice consta de fragmentos primarios y fragmentos réplica opcionales.
Dado que cada fragmento es una instancia independiente de Lucene (una biblioteca de motor de búsqueda autónoma), OpenSearch distribuye los fragmentos entre los nodos para paralelizar las operaciones de búsqueda y escalar el rendimiento.
Entonces, ¿cómo funciona todo en conjunto? Cuando se indexa un documento, OpenSearch analiza el contenido y aplica analizadores de texto y tokenizadores. Tras procesarlo, escribe los términos en el fragmento correspondiente.
Los nodos de datos gestionan la indexación y puede distribuirse por todo el clúster para garantizar la velocidad y la confiabilidad. A continuación, las consultas se envían a un nodo coordinador, que identifica los fragmentos que contienen los datos relevantes, reenvía la consulta a dichos fragmentos y agrega los resultados.
Imagine que eso es la cocina de un restaurante con diferentes estaciones. La indexación es como preparar ingredientes y enviarlos a la estación correcta para que estén listos cuando llegue el pedido. Cuando llega una consulta, el nodo coordinador actúa como el coordinador de cocina: anuncia lo que se necesita, recoge la contribución de cada estación y entrega un plato terminado.
OpenSearch incluye características integradas para búsqueda, analytics 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.
Si bien no son exhaustivas, estas extensiones populares permiten escenarios avanzados de analytics, machine learning (ML) y observabilidad:
Las organizaciones que prefieren una experiencia administrada también pueden usar Amazon OpenSearch Service, que automatiza escalar, las copias de seguridad, el reemplazo de nodos y el mantenimiento de los clústeres de OpenSearch en AWS.
OpenSearch Dashboards es la interfaz de visualización y análisis para OpenSearch. Proporciona un entorno interactivo para explorar datos indexados, construir visualizaciones y crear paneles operativos empleados en flujos de trabajo de observabilidad, análisis de seguridad y monitoreo 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 admite la creación de gráficos, tablas, mapas, cuadernos y paneles personalizados. También incluye características diseñadas para agilizar el análisis. Los notebooks permiten a los usuarios combinar visualizaciones y texto en una sola narrativa, mientras que los paneles operativos organizan las visualizaciones de observabilidad creadas con Piped Processing Language en una pantalla unificada.
Debido a que OpenSearch panel comparte una herencia de interfaz de usuario (IU) con Kibana, a muchos equipos de datos les resulta familiar el flujo de trabajo. 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 todas las industrias, que incluyen:
Los equipos indexan registros de aplicaciones, infraestructura y servicios en la nube para analizar problemas de rendimiento y solucionar interrupciones. OpenSearch admite la ingesta de grandes volúmenes de datos y el análisis en tiempo real, lo que lo hace ideal para sistemas de producción distribuidos, como un sitio web de comercio electrónico multinacional.
Al admitir métricas, registros y rastreos, OpenSearch proporciona una plataforma de observabilidad integrada. Trace Analytics visualiza las interacciones de los servicios, mientras que analytics de aplicaciones correlaciona la telemetría para comprender el comportamiento del sistema e identificar la latencia o las fallas. Los paneles y las consultas PPL permiten a los equipos investigar problemas rápidamente y crear vistas operacionales reutilizables.
La detección de anomalías de OpenSearch y los algoritmos de machine learning (ML) Commons permiten a las organizaciones aplicar técnicas de búsqueda y analytics 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 admiten una variedad de casos de uso de experiencia del usuario y recomendaciones.
OpenSearch Dashboards proporciona visualizaciones interactivas, informes y cuadernos que ayudan a los equipos a explorar datos, monitorear tendencias, rastrear KPI y compartir insights con los stakeholders.
Con ML Commons, los equipos pueden ejecutar operaciones basadas en modelos dentro de OpenSearch, como agrupación en clústeres, clasificación y pronosticar. Estas capacidades admiten casos de uso como la detección de fraude, la predicción de la demanda, la segmentación de clientes y el enriquecimiento de pipelines de datos descendentes.
Obtenga respuestas confiables con agentes de IA sensibles al contexto que funcionan con 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 de datos, 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 la gobernanza adecuados.