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