5 - Elasticsearch - Mecanismo de Busca

5 - Elasticsearch - Mecanismo de Busca

Introdução

É uma ferramenta de busca altamente escalável, gratuita e Open Source, construída em linguagem Java sobre o Lucine, é uma API de indenização de documentos. Mais especificamente usado para armazenar, buscar, analisar grandes volumes de dados quase que em tempo real.

O Elasticsearch é o componente central do Elastic Stack, um conjunto de ferramentas gratuitas e abertas para ingestão, enriquecimento, armazenamento, análise e visualização de dados. Comumente chamado de ELK Stack (pelas iniciais de Elasticsearch, Logstash e Kibana), o Elastic Stack agora inclui uma rica coleção de agentes lightweight conhecidos como Beats para enviar dados ao Elasticsearch. 

Ele por padrão disponibiliza acesso pelas portas 9200 e 9300 e não há controle de acesso. Recomenda-se permitir os acessos às portas expostas pelo Elasticsearch apenas ao Lumis Portal.
É importante observar que ele cria um cluster com outras instâncias que tenham o mesmo valor na configuração clusterName. É recomendado sempre alterar o valor do clusterName ao invés de deixar o valor padrão para evitar que outro Elasticsearch executado na mesma rede possa formar um cluster indesejado. Para mais informações, clique aqui.

Conceitos básicos 

Cluster: grupo de nós (servidores) que guardam dados.

Node: servidor individual que armazena informações e faz parte de um cluster.

Index: agrupado de documentos e pode ser dividido em vários shards.

Shards: subgrupo de documentos de um index.

Type: É a definição de um schema de um documento dentro de um index.

Document: Um objeto JSON com dados. É a unidade de informação a ser indexada.


Para que o Elasticsearch é usado?

A velocidade e escalabilidade do Elasticsearch e sua capacidade de indexar muitos tipos de conteúdo significam que ele pode ser usado para inúmeros casos de uso:·   
  1. Busca em aplicação
  2. Busca em website
  3. Busca empresarial
  4. Logging e analítica de log
  5. Métricas de infraestrutura e monitoramento de container
  6. APM (Monitoramento de performance de aplicação)
  7. Análise e visualização de dados geoespaciais
  8. Analítica de segurança
  9. Análise de dados empresarial

Como Elasticsearch funciona?

Os dados brutos fluem para o Elasticsearch de uma variedade de fontes, incluindo logs, metrics de sistema e aplicações web. Ingestão de dados é o processo pelo qual os dados brutos são analisados, normalizados e enriquecidos antes de serem indexados nele. Depois que os dados são indexados, os usuários podem executar consultas complexas com base em seus dados e usar agregações para recuperar resumos complexos dos dados. Do Kibana, os usuários podem criar visualizações avançadas dos dados, compartilhar dashboards e gerenciar o Elastic Stack.

O Elasticsearch fornece pesquisa e análise quase em tempo real para todos os tipos de dados. Independentemente de você ter texto estruturado ou não estruturado, dados numéricos ou dados geoespaciais, o Elasticsearch pode armazená-los e indexá-los com eficiência de uma maneira que oferece suporte a pesquisas rápidas. Você pode ir muito além da simples recuperação de dados e agregar informações para descobrir tendências e padrões em seus dados. E à medida que seu volume de dados e consultas cresce, a natureza distribuída do Elasticsearch permite que sua implantação cresça perfeitamente junto com ele.

Embora nem todo problema seja um problema de pesquisa, o Elasticsearch oferece velocidade e flexibilidade para lidar com dados em uma ampla variedade de casos de uso:

  • Adicionar uma caixa de pesquisa a um aplicativo ou site
  • Armazene e analise logs, métricas e dados de eventos de segurança
  • Use o aprendizado de máquina para modelar automaticamente o comportamento de seus dados em tempo real
  • Automatize os fluxos de trabalho de negócios usando o Elasticsearch como mecanismo de armazenamento
  • Gerencie, integre e analise informações espaciais usando o Elasticsearch como um sistema de informações geográficas (GIS)
  • Armazene e processe dados genéticos usando o Elasticsearch como ferramenta de pesquisa em bioinformática

Ao instalar o Elastic Stack, é imprescindível que você use a mesma versão em toda a pilha. Neste artigo, vamos instalar as versões mais recentes de toda a stack, que são, no momento desta publicação, Elasticsearch 8.3.2, Kibana 8.3.2. Elastic Agent 8.3.2.

Para se ter um bom desempenho do Elasticsearch, recomendamos seguir passo a passo com as seguintes instalações:

1 - Faça dowload da pilha Elastic, segue link clique aqui. 
2 - Instale o Elasticsearch  que é o mecanismo distribuído de pesquisa e análise no coração do Elastic Stack clique aqui.
3 - Em seguida instale o Kibana, este permite que você explore, visualize e compartilhe interativamente informações sobre seus dados e gerencie e monitore a pilha
4 - Por último, adicione o Agent responsável pelo servidor Fleet Server e APM Server, faça as devidas configurações, clique aqui.


Para mais informações sobre esta aplicação, clique aqui.






    • Related Articles

    • 5.1 - Boas Práticas e Desempenho Elasticsearch

      Elasticsearch é um software open source, que provê uma interface RESTful de pesquisa e análise de dados capaz de solucionar um número crescente de casos de uso. Ele suporta um grande volume de dados sem perder performance, pode ser implementado em ...
    • 2 - MongoDB - Introdução

      Banco de dados de documentos - Visão Geral Um registro no MongoDB é um documento, que é uma estrutura de dados composta de pares de campo e valor. Os documentos do banco são semelhantes aos objetos JSON. Os valores dos campos podem incluir outros ...
    • 5.6 - Politicas de Retenção Elasticsearch

      Retenção de dados Ao configurar um sistema de análise de log e métricas, é extremamente importante definir sua política de retenção de dados, pois o Elasticsearch não pode armazenar todos os dados que você possui, o que pode resultar em perda de ...
    • 5.8 - Antivírus Elasticsearch

      O Elastic Stack fornece recursos de análise de segurança que são amplamente usados para detecção de ameaças, visibilidade e resposta a incidentes. A velocidade e escala com que o Elasticsearch pode indexar e pesquisar informações relativas à ...
    • 7.27 - Ponto de Controle - Paletização

      A principal função da paletização consiste em agrupar a mercadoria em cima de um palete com a finalidade de identificar uma carga através de etiquetas no produto e no palete, facilitando a rastreabilidade, tornando o processo de manuseio, ...