¿Qué es OpenSearch?

Definición de OpenSearch

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.

¿Cuáles son las características clave de OpenSearch?

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:

Gobernanza de código abierto

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.

Compatibilidad y flexibilidad de migración

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.

Escalabilidad y distribución

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).

Admite la observabilidad en tiempo real

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.

Integración de seguridad y analytics

Con autenticación y control de acceso integrados, los equipos pueden aplicar capacidades de búsqueda en todas las cargas de trabajo de seguridad.

Despliegue rentable

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.

Una breve historia de OpenSearch

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.

¿OpenSearch es lo mismo que Elasticsearch?

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.

¿Cómo funciona OpenSearch?

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.

Nodos

Los nodos son servidores o instancias contenedorizadas que realizan operaciones de indexación, consulta y almacenamiento. Los tipos de nodos más comunes incluyen:

  • Nodos maestros: gestionan el estado del clúster, coordinan la ubicación de los fragmentos y mantienen los metadatos.

  • Nodos de datos: almacenan documentos y fragmentos, además ejecutan operaciones de indexación y búsqueda.

  • Nodos de cliente (coordinadores): enrutan consultas de búsqueda, agregan resultados y admiten el equilibrio de carga sin almacenar datos.

Clústeres

 

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.

Índices

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.

Documentos

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.

Fragmentos

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.

  • Los fragmentos primarios almacenan la copia inicial de los datos.

  • Los fragmentos de réplica proporcionan redundancia y aumentan el rendimiento de lectura.

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.

Academia de IA

¿Es la gestión de datos el secreto de la IA generativa?

Explore por qué los datos de alta calidad son esenciales para el uso exitoso de la IA generativa.

Capacidades de OpenSearch

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.

Capacidades básicas de la plataforma

  • Búsqueda de texto completo y puntuación de relevancia: admite consultas por frases, ajuste de la relevancia y filtros mediante Apache Lucene.

  • Indexación y recuperación distribuidas: almacena los datos en fragmentos primarios y réplicas, lo que permite la indexación en paralelo y consultas de baja latencia.

  • Agregaciones y consultas analíticas: resume y analiza datos en tiempo real para la detección de tendencias y el monitoreo de las operaciones.

  • Sintaxis de SQL Query: consulta datos indexados utilizando constructos de SQL (Structured Query Language, Structured Query Language) conocidos y devuelve resultados en formato JSON o tabular.

  • Lenguaje de procesamiento en pipeline (PPL): una sintaxis de tipo pipeline para explorar registros, métricas y otros conjuntos de datos operativos.

  • Gestión del estado de los índices (ISM): Automatiza las operaciones del ciclo de vida de los índices, como la renovación y la retención.

  • Data Prepper (pipelines de ingesta): filtran, enriquecen y transforman los datos antes de indexarlos para mayor observabilidad y seguridad.

  • Paneles de control y visualización: crean visualizaciones, paneles operativos e informes a partir de registros, métricas y pistas.

  • Autenticación y control de acceso: ofrece controles de acceso granulares sobre índices, documentos y campos, con compatibilidad con el Lightweight Directory Access Protocol (LDAP), Security Assertion Markup Language (SAML) y el Active Directory.

  • Primitivas de observabilidad: proporciona soporte integrado para datos clave de observabilidad utilizados para monitorear sistemas distribuidos.

Capacidades basadas en plugins

Si bien no son exhaustivas, estas extensiones populares permiten escenarios avanzados de analytics, machine learning (ML) y observabilidad:

  • Detección de anomalías: detecta patrones inusuales en los registros y las métricas mediante el algoritmo Random Cut Forest.

  • k-NN y búsqueda vectorial: admite búsqueda semántica y búsqueda por similitud, junto con cargas de trabajo de recomendación usando técnicas del vecino más cercanos (k-NN).

  • ML Commons: ejecuta modelos de machine learning directamente en OpenSearch, lo que permite tanto el entrenamiento como la inferencia.

  • Analizador de rendimiento: ofrece métricas detalladas sobre recursos y rendimiento en todos los clústeres, lo que ayuda a los equipos a optimizar el rendimiento de CPU y el rendimiento de consultas.

  • Replicación entre clústeres: replica los índices entre clústeres para facilitar la recuperación ante desastres, la redundancia y el aislamiento de cargas de trabajo.

  • Analytics: visualiza los seguimientos de los sistemas distribuidos y ayuda a los equipos a comprender las dependencias del servicio y las rutas de latencia.

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.

¿Qué es panel de OpenSearch?

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.

Casos de uso de OpenSearch

OpenSearch admite una amplia gama de casos de uso en todas las industrias, que incluyen:

  • Analytics de registros e inteligencia operativa
  • Flujos de trabajo de observabilidad
  • Análisis de seguridad y detección de amenazas
  • Aplicaciones de motores de búsqueda
  • Visualización de datos y elaboración de informes
  • Analytics mejorados con machine learning

Analytics de registros e inteligencia operativa

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.

Flujos de trabajo de observabilidad

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.

Analytics de seguridad y detección de amenazas

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.

Aplicaciones de motores de búsqueda

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.

Visualización de datos e informes

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.

Analytics mejorados con machine learning

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.

Autores

Tom Krantz

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

Representación 3D de una espiral de varios iconos alineados, como una cámara, una perilla de volumen y un portapapeles
Soluciones relacionadas
IBM watsonx.data AI Enterprise Search

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.

Descubra watsonx.data AI Enterprise Search
Software y soluciones de gestión de datos

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.

Descubra las soluciones de gestión de datos
Servicios de consultoría de datos e IA

Escale con éxito la IA con la estrategia, los datos, la seguridad y la gobernanza adecuados.

Explore servicios de consultoría de datos e IA
Dé el siguiente paso

Ofrezca respuestas confiables y conscientes del contexto de toda su organización con IA agéntica impulsada por datos del negocio gobernados y conectados.

  1. Descubra watsonx.data AI Enterprise Search
  2. Explore las soluciones de gestión de datos