Elastické vyhledávání

Jak vytvořit indexy Elasticsearch

Jak vytvořit indexy Elasticsearch
Elasticsearch je jednou částí populárního zásobníku ELK používaného pro analytiku a vyhledávání protokolů. Aplikace a systémy neustále zaznamenávají data, která mohou být velmi užitečná pro řešení problémů a sledování problémů. Díky zásobníku ELK máte ty nejlepší nástroje pro rychlé a velmi snadné provádění těchto úkolů.

V tomto rychlém kurzu se podíváme na Elasticsearch, konkrétně jak vytvářet indexy v Elasticsearch enginu. Přestože k provedení tohoto kurzu nepotřebujete žádné komplexní znalosti o zásobníku ELK, může být výhodné mít základní znalosti následujících témat:

POZNÁMKA: Tento kurz také předpokládá, že máte ve svém systému nainstalovaný a spuštěný Elasticsearch.

Co jsou indexy elastického vyhledávání?

Bez přílišného zjednodušení nebo nadměrné komplikace je index Elasticsearch sbírkou souvisejících dokumentů JSON.

Jak bylo uvedeno v předchozím příspěvku, indexy Elasticsearch jsou objekty JSON považované za základní jednotku úložiště v Elasticsearch. Tyto související dokumenty JSON jsou uloženy v jedné jednotce, která tvoří index. Představte si dokumenty Elasticsearch jako tabulky v relační databázi.

Pojďme spojit index Elasticsearch jako databázi ve světě SQL.

Jak vytvořit index Elasticsearch

Elasticsearch používá k odhalení svých služeb výkonné a intuitivní rozhraní REST API. Tato funkce umožňuje používat požadavky HTTP k provádění operací v klastru Elasticsearch. Proto k vytvoření nového indexu použijeme API pro vytvoření indexu.

V této příručce použijeme cURL k odesílání požadavků a zachování integrity a použitelnosti pro všechny uživatele. Pokud však u cURL narazíte na chyby, zvažte použití konzoly Kibana.

Syntaxe pro vytvoření nového indexu v klastru Elasticsearch je:

DÁT /

Chcete-li vytvořit index, musíte pouze předat název indexu bez dalších parametrů, což vytvoří index pomocí výchozího nastavení.

Můžete také určit různé funkce indexu, například v těle indexu:

  • Nastavení indexu
  • Indexové aliasy
  • Mapování pro indexová pole

Název indexu je povinný parametr; v opačném případě se zobrazí chyba pro URIL (/)

curl -X PUT „localhost: 9200“
"error": "Nesprávná metoda HTTP pro uri [/] a metodu [PUT], povolena: [DELETE, HEAD, GET]", "status": 405

Chcete-li vytvořit nový index s názvem single_index, předáme požadavek:

PUT / single_index

Pro cURL použijte příkaz:

curl -X PUT "localhost: 9200 / single_index?dosti"

Výsledkem tohoto příkazu by měl být stav HTTP 200 OK a zpráva s potvrzeným: true jako:


„Potvrzeno“: pravda,
"shards_acknowledged": pravda,
"index": "single_index"

Výše uvedený požadavek vytvoří index single_index s výchozím nastavením, protože jsme nezadali žádné konfigurace.

Pravidla pojmenování rejstříku

Při vytváření názvů indexů Elasticsearch musíte dodržovat následující standardy pojmenování:

  1. Název rejstříku musí být pouze malými písmeny.
  2. Názvy indexu nemohou začínat pomlčkou (-), podtržítkem (_) nebo znaménkem přidání (+)
  3. Jména nemohou být . nebo…
  4. Názvy rejstříku nesmí obsahovat speciální znaky, například: \, /, *, ?, ", <, >, |, "(mezera), ,, #
  5. Délka názvů indexů musí být menší než 255 bajtů. Vícebajtové znaky se započítají do celkové délky názvu rejstříku. Například pokud má jeden znak délku 8 bajtů, celková zbývající délka jména je 255 - 8
  6. V nejnovější verzi Elasticsearch jsou jména, která začínají písmenem a . jsou vyhrazeny pro skryté indexy a interní indexy používané pluginy Elasticsearch.

Jak vytvořit tělo indexu

Při použití požadavku PUT k vytvoření indexu můžete předat různé argumenty, které definují nastavení indexu, který chcete vytvořit. Mezi hodnoty, které můžete v těle zadat, patří:

  • Aliasy: Určuje aliasy pro index, který chcete vytvořit; tento parametr je volitelný.
  • Nastavení: To definuje možnosti konfigurace pro index, který chcete vytvořit. Pokud nezadáte žádné parametry, index se vytvoří pomocí výchozích konfigurací.
  • Mapování: To definuje mapování pro pole v indexu. Mezi specifikace, které můžete zahrnout do mapování, patří:
    • Název pole
    • Datový typ
    • Parametr mapování

Příklad vytvoření indexu s konfiguracemi těla zvažte níže uvedený požadavek:

PUT / single_index_with_body

"settings":
"number_of_shards": 2,
"number_of_replicas": 2
,
„Mapování“:
"vlastnosti":
"field1": "type": "objekt"


Pro ekvivalentní požadavek cURL:

curl -XPUT "http: // localhost: 9200 / single_index_with_body" -H 'Content-Type: application / json' -d '"nastavení": "number_of_shards": 2, "number_of_replicas": 2, "mapování" : "properties": "field1": "type": "object" '

Výše uvedený požadavek vytvoří nový index s názvem single_index_with_body se 2 počty střepů a 2 replikami. Vytvoří také mapování s polem názvu field1 a zadejte jako objekt JSON.

Jakmile odešlete požadavek, dostanete odpověď se stavem požadavku jako:


„Potvrzeno“: pravda,
"shards_acknowledged": pravda,
"index": "single_index_with_body"

„Potvrzeno“ ukazuje, zda byl index úspěšně vytvořen v klastru, zatímco „shards_acknowledged“ ukazuje, zda byl pro každý horizontální oddíl v určeném indexu spuštěn požadovaný počet horizontálních oddílů před vypršením.

Jak zobrazit rejstřík Elasticsearch

Chcete-li zobrazit informace o indexu, který jste vytvořili, použijte podobný požadavek jako při vytváření indexu, ale místo PUT použijte metodu HTTP jako:

ZÍSKAT / single_index_with_body

Pro CURL,

curl -XGET „http: // localhost: 9200 / single_index_with_body“

Tento příkaz vám poskytne podrobné informace o požadovaném indexu jako:


"single_index_with_body":
"aliasy": ,
"mapování":
"vlastnosti":
"field1":
"type": "objekt"


,
"settings":
"index":
"routing":
"alokace":
"zahrnout" :
"_tier_preference": "data_content"


,
"number_of_shards": "2",
"provided_name": "single_index_with_body",
"creation_date": "1611045687208",
"number_of_replicas": "2",
"uuid": "3TRkO7xmQcSUOOGtb6pXVA",
"verze":
"created": "7100299"




Závěr

Tato příručka pojednávala o tom, jak pracovat s Elasticsearch na vytváření indexového API pro vytváření nových indexů. Také jsme diskutovali o tom, jak vytvořit vhodné názvy pro indexy a nastavení konfigurace.

Pomocí této příručky nyní můžete vytvářet a zobrazovat indexy pomocí rozhraní Elasticsearch API.

Hry HD remasterované hry pro Linux, které nikdy dříve neměly vydání Linuxu
HD remasterované hry pro Linux, které nikdy dříve neměly vydání Linuxu
Mnoho vývojářů a vydavatelů her přichází s HD remasterem starých her, aby prodloužili životnost franšízy, prosím fanoušky, kteří požadují kompatibilit...
Hry Jak používat AutoKey k automatizaci linuxových her
Jak používat AutoKey k automatizaci linuxových her
AutoKey je nástroj pro automatizaci stolních počítačů pro systémy Linux a X11, programovaný v programech Python 3, GTK a Qt. Pomocí jeho funkcí skript...
Hry Jak zobrazit počítadlo FPS v linuxových hrách
Jak zobrazit počítadlo FPS v linuxových hrách
Hraní na Linuxu získalo velký tlak, když společnost Valve v roce 2012 oznámila podporu systému Linux pro klienta Steam a jejich hry. Od té doby se mno...