O que é o OpenSearch?

OpenSearch, definido

O OpenSearch é um mecanismo de pesquisa e analytics engine de código aberto usado para indexar, consultar e analisar dados de uma ampla variedade de fontes de dados.

Construído com base no Apache Lucene e originalmente derivado do Elasticsearch(outro analytics engine), o OpenSearch fornece uma arquitetura escalável e distribuída para casos de uso de pesquisa em tempo real, observabilidade, análise de dados de log e análise de dados de segurança.

O OpenSearch inclui dashboards do OpenSearch para visualização de dados e monitoramento de aplicações. Também apresenta um amplo ecossistema de plug-ins, interfaces de programação de aplicativos (APIs) e clientes compatíveis com fluxos de trabalho de análise de dados em ambientes de dados modernos.

Por ser desenvolvido como um projeto de código aberto com um roteiro impulsionado pela comunidade, as organizações podem usar o OpenSearch sem restrições de licenciamento ou lock-in com fornecedor. Sua compatibilidade com versões anteriores do Elasticsearch, juntamente com seu framework de plug-ins extensível, permite que as equipes adotem o OpenSearch como um flexible analytics engine para cargas de trabalho operacionais, pipelines de aprendizado de máquina e aplicações de pesquisa.

Quais são as características principais do OpenSearch?

As organizações de hoje geram volumes consideráveis de dados que podem ser inestimáveis, mas somente se os dados forem indexados, pesquisáveis e disponíveis em tempo real. O OpenSearch oferece essa funcionalidade por meio de uma arquitetura de pesquisa de código aberto projetada para escala, eficiência de custos e interoperabilidade.

Na prática, o OpenSearch oferece:

Governança de código aberto

As empresas obtêm visibilidade total da base de código e do roteiro do OpenSearch, permitindo que personalizem a plataforma para atender aos requisitos internos.

Compatibilidade e flexibilidade de migração

O OpenSearch mantém a compatibilidade de APIs e da sintaxe de consulta com o Elasticsearch de código aberto, o que significa que as organizações podem adotar ou modernizar cargas de trabalho sem reescritas extensas.

Escalabilidade e distribuição

Sua arquitetura de clusters é compatível com alta disponibilidade por meio de nós, réplicas e fragmentos, permitindo pesquisa de baixalatência em grandes conjuntos de dados (para mais detalhes, consulte Como funciona o OpenSearch).

Compatibilidade com observabilidade em tempo real

O OpenSearch pode ingerir logs, métricas e rastreamentos em escala, impulsionando os dashboards operacionais usados para solução de problemas e análise.

Integração de segurança e análise de dados

Com autenticação e controle de acesso integrados, as equipes podem aplicar recursos de pesquisa em cargas de trabalho de segurança.

Implementação econômica

Como software de código aberto, o OpenSearch pode ser implementado no local, em provedores de nuvem ou por meio de ofertas de serviços gerenciados.

Uma breve história do OpenSearch

O OpenSearch começou como uma resposta da comunidade a mudanças de licenciamento do Elasticsearch e do Kibana, uma camada de visualização popular. As versões anteriores do Elasticsearch foram lançadas sob a licença Apache 2.0, mas as versões subsequentes adotaram a Server Side Public License (SSPL) e a Elastic License. Essas licenças restringiam a reutilização de código aberto, criando desafios para organizações que dependiam de software de pesquisa livremente implementável e redistribuível.

Para preservar um ecossistema de pesquisa aberto, a Amazon Web Services (AWS) criou fork (ou seja, criou uma cópia independente de) as últimas versões do Apache 2.0 do Elasticsearch e do Kibana, criando o OpenSearch Project. O projeto introduziu novas funcionalidades e melhorias em um modelo de governança aberto e expandiu a compatibilidade com APIs Elasticsearch e bibliotecas de clientes para simplificar a migração.

Desde então, o OpenSearch Project evoluiu de forma independente. Apresenta um roteiro orientado pela comunidade, contribuições de vários provedores e um ecossistema crescente de plug-ins hospedado no GitHub. Embora permaneça compatível com muitos padrões do Elasticsearch, o OpenSearch expandiu seu conjunto de funcionalidades com plug-ins para pesquisa vetorial, detecção de anomalias e ferramentas avançadas de observabilidade.

O OpenSearch é o mesmo que o Elasticsearch?

Embora ambos os projetos compartilhem uma origem comum, seus caminhos divergiram. O Elasticsearch continua sob SSPL e Elastic License com uma estratégia de desenvolvimento de funcionalidade proprietária. O OpenSearch, por outro lado, permanece licenciado no Apache 2.0, priorizando a abertura, a extensibilidade e a visibilidade operacional. Como resultado, as organizações que escolhem entre os dois agora avaliam não apenas funcionalidades, mas também modelos de governança, termos de licenciamento e direção de longo prazo do ecossistema.

A compatibilidade continua sendo uma ponte importante entre os projetos: o OpenSearch ainda é compatível com muitas APIs Elasticsearch, padrões de consulta e bibliotecas de clientes de versões anteriores, ajudando as equipes a migrar com o mínimo de refatoração. Ele também preserva estruturas de repositórios e formatos de índices semelhantes, mantendo a familiaridade para usuários que estão em transição do Elasticsearch.

Como o OpenSearch funciona?

O OpenSearch é construído em uma arquitetura distribuída projetada para escala e desempenho em tempo real. Seus principais componentes incluem clusters, nós, índices, fragmentos e documentos, todos trabalhando juntos para armazenar e recuperar dados de forma eficiente.

Nós

Nós são servidores ou instâncias conteinerizadas que realizam operações de indexação, consulta e armazenamento. Os tipos comuns de nós incluem:

  • Nós mestres: gerenciam o estado do cluster, coordenam o posicionamento de fragmentos e mantêm metadados.

  • Nós de dados: armazenam documentos e fragmentos, além de executarem operações de indexação e pesquisa.

  • Nós clientes (coordenadores): encaminham consultas de pesquisa, agregam resultados e são compatíveis com o balanceamento de cargas sem armazenar dados.

Clusters

 

Um cluster é uma coleção de um ou mais nós que trabalham juntos para gerenciar dados e executar consultas. Os clusters fornecem redundância e balanceamento de cargas para que as falhas de um nó não afetem o desempenho geral. Cada cluster mantém metadados sobre índices, fragmentos e informações de roteamento.

Índices

Um índice é um espaço de nomes lógico semelhante a uma tabela de banco de dados relacional. Ele contém mapeamentos que definem a estrutura de documentos JSON e referências aos fragmentos que armazenam esses documentos. O termo "indexar" também é usado como verbo para descrever o ato de preencher um índice com dados.

Documentos

Documentos são objetos JSON que representam registros individuais. Simplificando, são os dados que estão sendo armazenados e pesquisados. Quando indexados, os campos dentro de cada documento são analisados, tokenizados e armazenados em índices invertidos.

Fragmentos

Fragmentos são as unidades de armazenamento fundamentais no OpenSearch onde os documentos residem. Cada índice consiste em fragmentos primários e fragmentos de réplica opcionais.

  • Os fragmentos primários armazenam a cópia inicial dos dados.

  • Os fragmentos de réplica fornecem redundância e aumentam a taxa de transferência de leitura.

Como cada fragmento é uma instância de Lucene (uma biblioteca de mecanismo de pesquisa autocontida) autônoma, o OpenSearch distribui fragmentos entre nós para paralelizar as operações de pesquisa e escalar o desempenho.

Então, como tudo isso se conecta? Quando um documento é indexado, o OpenSearch analisa o conteúdo e aplica analisadores de texto e tokenizadores. Após o processamento, escreve os termos no fragmento apropriado.

A indexação é tratada por nós de dados e pode ser distribuída em todo o cluster para velocidade e confiabilidade. As consultas são, então, enviadas a um nó de coordenação, que identifica os fragmentos que contêm dados relevantes, envia a consulta para esses fragmentos e agrega os resultados.

Pense nisso como uma cozinha de restaurante com estações diferentes. Indexar é como preparar ingredientes e enviá-los para a estação certa, de modo que estejam prontos quando o pedido chegar. Quando uma consulta chega, o nó de coordenação atua como o despachante — fornecendo o que é necessário, reunindo a contribuição de cada estação e entregando um prato pronto.

AI Academy

O gerenciamento de dados é o segredo para a IA generativa?

Explore por que é essencial ter dados de alta qualidade para utilizar a IA generativa com qualidade.

Recursos do OpenSearch

O OpenSearch inclui funcionalidades integradas para pesquisa, análise de dados e observabilidade. Plug-ins e extensões expandem a funcionalidade, permitindo que as equipes adaptem a plataforma para cargas de trabalho especializadas.

Principais recursos da plataforma

  • Pesquisa de texto completo e pontuação de relevância: compatível com consultas de frases, ajuste de relevância e filtros usando o Apache Lucene.

  • Indexação e recuperação distribuídas: armazena dados em fragmentos primários e de réplicas, permitindo indexação paralela e consultas de baixa latência.

  • Agregações e consultas analíticas: resuma e analise dados em tempo real para detecção de tendências e monitoramento operacional.

  • Sintaxe de SQL Query: consulta dados indexados usando construções familiares de Structured Query Language (SQL) e retorna resultados em JSON ou formatos tabulares.

  • Piped Processing Language (PPL): uma sintaxe no estilo de pipeline para explorar logs, métricas e outros conjuntos de dados operacionais.

  • Gerenciamento do estado do índice (ISM):automatiza operações do ciclo de vida do índice, como substituição e retenção.

  • Data Prepper (pipelines de ingestão): filtra, enriquece e transforma dados antes de indexar para observabilidade e segurança.

  • Dashboards e visualizações: cria visualizações, painéis operacionais e relatórios a partir de logs, métricas e rastreamentos.

  • Autenticação e controle de acesso: fornece controles de acesso detalhados sobre índices, documentos e campos com compatibilidade com o Lightweight Directory Access Protocol (LDAP), Security Assertion Markup Language (SAML) e Active Directory.

  • Primitivos de observabilidade: proporciona compatibilidade integrada para os principais dados de observabilidade usados para monitorar sistemas distribuídos.

Recursos baseados em plug-ins

Embora não sejam todas, essas extensões populares permitem cenários de análisede dados avançada, aprendizado de máquina (ML) e observabilidade:

  • Detecção de anomalias: detecta padrões incomuns em logs e métricas usando o algoritmo Random Cut Forest.

  • K-NN e pesquisa vetorial: é compatível com pesquisa semântica e pesquisa por similaridade, juntamente com cargas de trabalho de recomendação usando técnicas de vizinho mais próximo aproximado (k-NN).

  • ML Commons: executa modelos de aprendizado de máquina diretamente no OpenSearch, sendo compatível com treinamento e inferência.

  • Analisador de desempenho: fornece métricas detalhadas de recursos e desempenho em todos os clusters, ajudando as equipes a otimizar a taxa de transferência da CPU e das consultas.

  • Replicação entre clusters: replica índices em clusters para compatibilidade com a recuperação de desastres, redundância e isolamento de cargas de trabalho.

  • Análise de dados de rastreamento: visualiza rastreamentos de sistemas distribuídos e ajuda as equipes a entender as dependências de serviço e os caminhos de latência.

As organizações que preferem uma experiência gerenciada também podem usar o Amazon OpenSearch Service, que automatiza o escalonamento, os backups, a substituição de nós e a manutenção para clusters do OpenSearch na AWS.

O que é o OpenSearch Dashboards?

O OpenSearch Dashboards é a interface de dashboard e análise de dados para o OpenSearch. Ele fornece um ambiente interativo para explorar dados indexados, construir visualizações e criar dashboards operacionais usados em fluxos de trabalho de observabilidade, análise de dados de segurança e monitoramento de aplicações. Por exemplo, as equipes podem aproveitar os dashboards para visualizar tendências nas métricas e investigar anomalias quase em tempo real.

O OpenSearch Dashboards é compatível com a criação de gráficos, tabelas, mapas, notebooks e painéis personalizados. Também inclui funcionalidades projetadas para agilizar a análise. Os notebooks permitem que os usuários combinem visualizações e textos em uma única narrativa, enquanto os painéis operacionais organizam visualizações de observabilidade criadas com a Piped Processing Language em uma exibição unificada.

Como o OpenSearch Dashboards compartilha uma herança de interface de usuário (IU) com o Kibana, muitas equipes de dados acham o fluxo de trabalho familiar. No entanto, ele é desenvolvido sob seu próprio roteiro e inclui recursos que refletem o conjunto mais amplo de funcionalidades do OpenSearch.

Casos de uso do OpenSearch

O OpenSearch é compatível com uma ampla gama de casos de uso em vários setores, incluindo:

  • Análise de dados de logs e inteligência operacional
  • Fluxos de trabalho de observabilidade
  • Análise de dados de segurança e detecção de ameaças
  • Aplicações de mecanismos de pesquisa
  • Visualização de dados e geração de relatórios
  • Análise de dados aprimorada por aprendizado de máquina

Análise de dados de logs e inteligência operacional

As equipes indexam logs de aplicações, infraestrutura e serviços de nuvem para analisar problemas de desempenho e solucionar interrupções. O OpenSearch é compatível com a ingestão de alto volume e análise em tempo real, o que o torna adequado para sistemas de produção distribuídos, como um site de comércio eletrônico multinacional.

Fluxos de trabalho de observabilidade

Com compatibilidade com métricas, logs e rastreamentos, o OpenSearch oferece uma plataforma de observabilidade integrada. O Trace Analytics visualiza as interações de serviço, enquanto o Application Analytics correlaciona a telemetria para entender o comportamento do sistema e identificar latência ou falhas. Dashboards e consultas de PPL permitem que as equipes investiguem os problemas rapidamente e criem visualizações operacionais reutilizáveis.

Análise de dados de segurança e detecção de ameaças

A detecção de anomalias e os algoritmos ML Commons do OpenSearch permitem que as organizações apliquem técnicas de pesquisa e análise de dados em operações de segurança. As equipes o utilizam para detectar padrões incomuns nos logs de autenticação ou no comportamento das aplicações, além de acionar notificações quando condições ou limites são atendidos.

Aplicações de mecanismos de pesquisa

As organizações usam o OpenSearch como mecanismo de pesquisa por trás de sites, catálogos de produtos e sistemas de conteúdo empresarial. A pesquisa de texto completo, o preenchimento automático, a correspondência de frases e a pesquisa vetorial são compatíveis com uma variedade de casos de uso de experiência do usuário e recomendações.

Visualização de dados e geração de relatórios

Os dashboards do OpenSearch fornecem visualizações interativas, relatórios e notebooks que ajudam as equipes a explorar dados, monitorar tendências, rastrear KPIs e compartilhar insights com os stakeholders.

Análise de dados aprimorada por aprendizado de máquina

Com o ML Commons, as equipes podem executar operações orientadas por modelos dentro do OpenSearch, como agrupamento, classificação e forecasting. Esses recursos são compatíveis com casos de uso como detecção de fraude, previsão de demanda, segmentação de clientes e enriquecimento de pipelines de dados posteriores.

Autores

Tom Krantz

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

Renderização 3D de uma espiral de vários ícones alinhados, como uma câmera, um botão de volume e uma prancheta
Soluções relacionadas
IBM watsonx.data Enterprise Search com IA

Obtenha respostas confiáveis com agentes de IA sensíveis ao contexto impulsionados por dados governados e conectados, sem reformular a plataforma ou lock-in

Descubra o watsonx.data AI Enterprise Search
Software e soluções de gerenciamento de dados

Crie uma estratégia de dados que elimine silos de dados, reduza a complexidade e melhore a qualidade de dados para proporcionar experiências excepcionais para clientes e funcionários.

Descubra soluções de gerenciamento de dados
Serviços de consultoria em dados e IA

Escale a IA com sucesso aplicando a estratégia, os dados, a segurança e a governança certos.

Explore os serviços de consultoria em dados e IA
Dê o próximo passo

Forneça respostas confiáveis sensíveis ao contexto de toda a sua organização com a IA agêntica impulsionada por dados de negócios governados e conectados.

  1. Descubra o watsonx.data AI Enterprise Search
  2. Explore soluções de gerenciamento de dados