Údaje sa denne zhromažďujú vo veľkých množstvách a správa veľkých údajov je najdôležitejším prípadom použitia nástroja Elasticsearch. Údaje sa ukladajú do analytickej databázy v reálnom čase a používateľovi je umožnené extrahovať údaje, aby z nich pomocou dotazov našiel užitočné poznatky. Používateľ môže použiť dotazy na nájdenie údajov z viacerých indexov a ich zobrazenie v jednom segmente z relačnej databázy.
Táto príručka vysvetlí agregácie Elasticsearch s príkladmi s použitím rôznych agregácií.
Čo je agregácia Elasticsearch?
V Elasticsearch je agregácia proces kombinovania alebo zoskupovania polí na extrahovanie informácií z relačnej databázy. Agregáciu v Elasticsearch možno považovať za SKUPINA PODĽA klauzuly alebo AGREGÁCIA() funkciu v jazyku SQL.
Ako používať agregáciu Elasticsearch?
Ak chcete použiť agregáciu v Elasticsearch, používateľ musí mať základné znalosti o svojej databáze. Pozrime sa na syntax a jej praktickú implementáciu:
Syntax
Ak chcete nájsť údaje z databázy, syntax agregácie v nástroji Elasticsearch, ako je uvedené nižšie:
'aggs' : {'názov_agregácie' : {
'type_of_agregation' : {
'lúka' : 'názov_poľa_dokumentu'
}
Vyššie uvedené úryvky:
-
- Používa sa „ aggs ” kľúčové slovo, ktoré vysvetľuje použitie agregácie v dotaze.
- The názov_agregácie je nastavená užívateľom podľa požadovaných informácií.
- Po tom, typ_agregácie sa používa na získanie údajov.
- Posledný riadok používa lúka kľúčové slovo, za ktorým nasleduje názov atribútu z dokumentu.
Príklad 1: Agregácia v údajoch vzorky Kibana
Táto časť vysvetľuje agregáciu pomocou príkladu s použitím vzorových údajov z Kibana tak, že sa k nemu najskôr pripojíte. Potom jednoducho zamierte dovnútra „ Nástroje pre vývojárov “ tak, že ho vyhľadáte vo vyhľadávacom paneli a kliknete naň:
Načítanie údajov zo vzorových údajov
Jednoducho použite nasledujúci príkaz na načítanie údajov z „ kibana_sample_data_logs ” index na konzole Dev Tools:
GET / kibana_sample_data_logs / _Vyhľadávanie
Výstup ukazuje, že údaje boli načítané z „ kibana_sample_data_logs index.
Nasledujúci kód používa a GET žiadosť na „ kibana_sample_data_log “ na vyhľadávanie pomocou agregácie value_count na „ klientip ' lúka:
GET / kibana_sample_data_logs / _Vyhľadávanie{ 'veľkosť' : 0 ,
'aggs' : {
'ip_count' : {
'value_count' : {
'lúka' : 'klientsky tip'
}
}
}
}
Vyššie uvedená snímka obrazovky zobrazuje agregáciu na klientip pole s hodnotou 14074 .
Dôležité agregácie
Niektoré z dôležitých agregácií, ktoré sa používajú na efektívne vyhľadávanie údajov z databázy, sú uvedené nižšie:
Nasledujúce príklady vysvetľujú vyššie uvedené agregácie pomocou GET žiadosť od „ kibana_sample_data_ecommerce index:
Agregácia mohutnosti
Nasledujúci kód používa „ kardinalita „agregácia na „ sku z údajov elektronického obchodu. Spustením tohto kódu získate agregáciu s jednou hodnotou na získanie jedinečných SKU z databázy Elasticsearch:
GET / kibana_sample_data_ecommerce / _Vyhľadávanie{
'veľkosť' : 0 ,
'aggs' : {
'unique_skus' : {
'kardinalita' : {
'lúka' : 'sku'
}
}
}
}
Zobrazuje kardinalita agregácia nájsť 7186 hodnôt z indexu.
Agregácia štatistík
Ďalšou dôležitou agregáciou je „ štatistiky „agregácia, ktorá sa používa na získanie „ počítať “, “ min “, “ max “, “ priem “ a „ súčet ” štatistiky z “ celkové množstvo ' lúka:
GET / kibana_sample_data_ecommerce / _Vyhľadávanie{
'veľkosť' : 0 ,
'aggs' : {
'quantity_stats' : {
'štatistiky' : {
'lúka' : 'celkové množstvo'
}
}
}
}
Vyššie uvedená snímka obrazovky zobrazuje štatistiky vo výstupe z „ celkové množstvo ' lúka.
Agregácia filtrov
Agregácia filtrov sa používa na filtrovanie údajov na základe výrazu alebo frázy z databázy, pretože ich obsahuje nasledujúci kód:
GET / kibana_sample_data_ecommerce / _Vyhľadávanie{ 'veľkosť' : 0 ,
'aggs' : {
'filter_agregation' : {
'filter' : {
'termín' : {
'užívateľ' : 'eddie' } } ,
'aggs' : {
'price_priem' : {
'priemer' : {
'lúka' : 'produkty.cena' } }
} } } }
Spustenie kódu vyfiltruje údaje na základe „ Eddie “ a zobrazuje priemernú cenu zakúpených položiek. Vyššie uvedená snímka obrazovky ukazuje, že užívateľ našiel 100 časy z údajov a hodnotu z priem _ cena agregácia.
Agregácia termínov
Pojem agregácia vytvorí vedro a uloží údaje z poľa do vedra a nasledujúci kód používa „ užívateľ ” na uloženie údajov do segmentu:
GET / kibana_sample_data_ecommerce / _Vyhľadávanie{
'veľkosť' : 0 ,
'aggs' : {
'Term_Aggregation' : {
'podmienky' : {
'lúka' : 'užívateľ'
}
}
}
}
Nasledujúca snímka obrazovky ukazuje, že agregácia výrazov vytvorila segmenty pre každého používateľa a počet jeho dokumentov.
To je všetko o agregácii Elasticsearch a rôznych dôležitých agregáciách.
Záver
V Elasticsearch sa agregácia používa na získanie údajov z agregovaných dokumentov a tieto dokumenty sú extrahované zo špecifického poľa. Vysvetlené sú niektoré dôležité agregácie, ktoré sa používajú na získanie užitočných prehľadov z indexov. Táto príručka vysvetľuje agregáciu Elasticsearch a demonštruje proces používania agregácie Elasticsearch.