Junior — Middle
Czy możesz wyjaśnić, czym jest Elasticsearch i jak jest używany do wyszukiwania i analizy danych?
sobes.tech AI
Odpowiedź od AI
Elasticsearch to rozproszony system wyszukiwania i analizy typu open source, oparty na silniku Apache Lucene. Umożliwia efektywne indeksowanie i szybkie wyszukiwanie w dużych ilościach danych ustrukturyzowanych i nieustrukturyzowanych.
Główne cechy Elasticsearch:
- Wyszukiwanie pełnotekstowe z wysoką prędkością i trafnością.
- Skalowalność: łatwo rozbudowuje się na wiele węzłów.
- Analiza w czasie rzeczywistym: obsługa agregacji i złożonych zapytań.
- Elastyczny schemat: obsługa dynamicznego indeksowania dokumentów JSON.
Zastosowania:
- Wyszukiwanie na stronach internetowych i w aplikacjach.
- Logowanie i monitorowanie (np. w połączeniu z Kibana).
- Analiza dużych danych.
Przykład użycia w C# z biblioteką 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);
}
Tutaj szukamy dokumentów z polem Name zawierającym "laptop".