Sobes.tech
Junior — Middle

Pode explicar o que é Elasticsearch e como é utilizado para pesquisa e análise de dados?

sobes.tech IA

Resposta da IA

Elasticsearch é um sistema de pesquisa e análise distribuído de código aberto, baseado no motor Apache Lucene. Permite indexar de forma eficiente e procurar rapidamente em grandes volumes de dados estruturados e não estruturados.

Principais características do Elasticsearch:

  • Pesquisa de texto completo com alta velocidade e relevância.
  • Escalabilidade: expande-se facilmente para múltiplos nós.
  • Análise em tempo real: suporte para agregações e consultas complexas.
  • Esquema flexível: suporte para indexação dinâmica de documentos JSON.

Aplicações:

  • Pesquisa em sites e aplicações.
  • Registo e monitorização (por exemplo, com Kibana).
  • Análise de grandes dados.

Exemplo de uso em C# com a biblioteca NEST:

var settings = new ConnectionSettings(new Uri("http://localhost:9200")).DefaultIndex("products");
var client = new ElasticClient(settings);

var searchResponse = client.Search<Product>(s => s
    .Query(q => q.Match(m => m.Field(f => f.Name).Query("laptop")))
);

foreach (var hit in searchResponse.Hits)
{
    Console.WriteLine(hit.Source.Name);
}

Aqui procuramos documentos com o campo Name que contém "laptop".