Sobes.tech
Junior — Middle

Môžete vysvetliť, čo je Elasticsearch a ako sa používa na vyhľadávanie a analýzu dát?

sobes.tech AI

Odpoveď od AI

Elasticsearch je distribuovaný systém pre vyhľadávanie a analýzu s otvoreným zdrojovým kódom, založený na jadre Apache Lucene. Umožňuje efektívne indexovanie a rýchle vyhľadávanie vo veľkých objemoch štruktúrovaných aj nestruktúrovaných dát.

Hlavné vlastnosti Elasticsearch:

  • Fulltextové vyhľadávanie s vysokou rýchlosťou a relevantnosťou.
  • Škálovateľnosť: ľahko rozšíriteľný na mnoho uzlov.
  • Analýza v reálnom čase: podpora agregácií a zložitých dopytov.
  • Flexibilné schéma: podpora dynamického indexovania JSON dokumentov.

Použitie:

  • Vyhľadávanie na webových stránkach a v aplikáciách.
  • Logovanie a monitorovanie (napríklad v spojení s Kibana).
  • Analýza veľkých dát.

Príklad použitia v C# s knižnicou 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);
}

Tu hľadáme dokumenty s poľom Name, ktoré obsahujú "laptop".