¿Qué es OpenSearch?

OpenSearch, definido

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.

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

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:

Gobierno de código abierto

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.

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

Escalabilidad y distribución

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.

Soporte para la observabilidad en tiempo real

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.

Integración de seguridad y 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.

Implementación rentable

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.

Breve historia de OpenSearch

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.

¿Es OpenSearch lo mismo que Elasticsearch?

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.

¿Cómo funciona OpenSearch?

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.

Nodos

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:

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

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

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

Clústeres

 

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.

Índices

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.

Documentos

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.

Fragmentos

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.

  • 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 (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.

AI Academy

¿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 satisfactorio de la IA generativa.

Capacidades de OpenSearch

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.

Capacidades básicas de la plataforma

  • Búsqueda de texto completo y puntuación por 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 una indexación paralela y consultas de baja latencia.

  • Agregaciones y consultas analíticas: resumen y analizan los datos en tiempo real para la detección de tendencias y la monitorización operativa.

  • Sintaxis de las consultas SQL: consulta datos indexados utilizando construcciones familiares de lenguaje de consulta estructurado (SQL) y devuelve resultados en formatos JSON o tabulares.

  • Piped Processing Language (PPL): una sintaxis de estilo pipeline para explorar registros, métricas y otros conjuntos de datos operativos.

  • Index State Management (ISM): automatiza las operaciones relacionadas con el ciclo de vida de los índices, como la renovación y la retención.

  • Data Prepper (pipelines de ingesta): filtra, enriquece y transforma los datos antes de indexarlos para mayor observabilidad y seguridad.

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

  • Autenticación y control de acceso: Ofrece controles de acceso granular sobre índices, documentos y campos, y es compatible con el Protocolo ligero de acceso a directorios (LDAP), el Lenguaje de marcado de aserciones de seguridad (SAML) y Active Directory.

  • Elementos básicos de observabilidad: ofrece compatibilidad integrada con los datos clave de observabilidad que se utilizan para monitorizar sistemas distribuidos.

Capacidades basadas en complementos

Aunque no es una lista exhaustiva, estas populares extensiones permiten realizar análisis avanzados, machine learning (ML) y escenarios de observabilidad.

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

  • k-NN y búsqueda vectorial: admite la búsqueda semántica y la búsqueda por similitud, así como tareas de recomendación mediante técnicas de vecino más cercano aproximado (k-NN).

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

  • Analizador de rendimiento: proporciona métricas detalladas de recursos y rendimiento en todos los clústeres, ayudando a los equipos a optimizar la CPU y el rendimiento de las consultas.

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

  • Análisis de trazas: visualiza las trazas de los sistemas distribuidos y ayuda a los equipos a comprender las dependencias de los servicios y las rutas de latencia.

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.

¿Qué es OpenSearch Dashboards?

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.

Casos de uso de OpenSearch

OpenSearch admite una amplia gama de casos de uso en todos los sectores, que incluyen:

  • Análisis 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
  • Análisis mejorado mediante machine learning

Análisis de registros e inteligencia operativa

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.

Flujos de trabajo de observabilidad

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.

Análisis de seguridad y detección de amenazas

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.

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 permiten abordar una amplia variedad de casos de uso relacionados con la experiencia del usuario y las recomendaciones.

Visualización de datos y elaboración de informes

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.

Análisis mejorado con machine learning

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.

Autores

Tom Krantz

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

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

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.

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

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.

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

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

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

Ofrezca respuestas fiables y adaptadas al contexto de toda su organización con IA agéntica impulsada por datos empresariales gobernados y conectados.

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