Čo je agregácia Elasticsearch?

Co Je Agregacia Elasticsearch



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