Elastično iskanje

Kako ustvariti indekse elastičnega iskanja

Kako ustvariti indekse elastičnega iskanja
Elasticsearch je del priljubljenega sklada ELK, ki se uporablja za analizo dnevnikov in iskanje. Aplikacije in sistemi nenehno beležijo podatke, ki so lahko zelo koristni za odpravljanje težav in sledenje težavam. Z uporabo sklada ELK imate najboljša orodja za hitro in enostavno izvajanje teh nalog.

V tej hitri vadnici si bomo ogledali Elasticsearch, natančneje, kako ustvariti indekse v mehanizmu Elasticsearch. Čeprav za sledenje tej vadnici ne potrebujete celovitega znanja o ELK stacku, bi bilo koristno osnovno razumevanje naslednjih tem:

OPOMBA: Ta vadnica tudi predvideva, da imate Elasticsearch nameščen in zagnan v vašem sistemu.

Kaj so indeksi elastičnega iskanja?

Brez preveč poenostavljanja ali prekompliciranja stvari je indeks Elasticsearch zbirka povezanih dokumentov JSON.

Kot smo že omenili v prejšnjem prispevku, so indeksi Elasticsearch predmeti JSON in se štejejo za osnovno enoto shranjevanja v Elasticsearch. Ti povezani dokumenti JSON so shranjeni v eni enoti, ki tvori indeks. Dokumente Elasticsearch si predstavljajte kot tabele v relacijski bazi podatkov.

Povežimo indeks Elasticsearch kot bazo podatkov v svetu SQL.

Kako ustvariti indeks elastičnega iskanja

Elasticsearch za predstavitev svojih storitev uporablja zmogljiv in intuitiven REST API. Ta funkcionalnost vam omogoča uporabo zahtev HTTP za izvajanje operacij v gruči Elasticsearch. Zato bomo za ustvarjanje novega indeksa uporabili API za ustvarjanje indeksa.

V tem priročniku bomo uporabili cURL za pošiljanje zahtev ter ohranitev integritete in uporabnosti za vse uporabnike. Če pa naletite na napake pri curlu, razmislite o uporabi konzole Kibana.

Sintaksa za ustvarjanje novega indeksa v gruči Elasticsearch je:

PUT /

Če želite ustvariti indeks, morate samo predati ime indeksa brez drugih parametrov, kar ustvari indeks s privzetimi nastavitvami.

Določite lahko tudi različne funkcije indeksa, na primer v telesu indeksa:

  • Nastavitve za kazalo
  • Indeksni vzdevki
  • Preslikave za polja indeksa

Ime indeksa je obvezen parameter; v nasprotnem primeru boste dobili napako za URIL (/)

curl -X PUT “localhost: 9200”
"error": "Napačna metoda HTTP za uri [/] in metoda [PUT], dovoljeno: [DELETE, HEAD, GET]", "status": 405

Če želite ustvariti nov indeks z imenom single_index, posredujemo zahtevo:

PUT / single_index

Za curl uporabite ukaz:

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

Ta ukaz bi moral imeti za posledico status HTTP 200 OK in sporočilo s potrjenim: true kot:


"Priznano": res,
"odlomki_priznani": res,
"index": "single_index"

Zgornja zahteva ustvari indeks single_index s privzetimi nastavitvami, saj nismo podali nobene konfiguracije.

Pravila poimenovanja indeksa

Pri ustvarjanju imen za indekse Elasticsearch se morate držati naslednjih standardov poimenovanja:

  1. Ime indeksa mora biti samo z malimi črkami.
  2. Imena indeksov se ne morejo začeti s pomišljajem (-), podčrtajem (_) ali znakom seštevanja (+)
  3. Imena ne morejo biti . ali ..
  4. Imena indeksov ne smejo vsebovati posebnih znakov, kot so: \, /, *, ?, “, <, >, |, "(preslednica), ,, #
  5. Dolžina imen indeksov mora biti manjša od 255 bajtov. Večbajtni znaki bodo upoštevani v celotni dolžini imena indeksa. Če je na primer en znak dolg 8 bajtov, je skupna preostala dolžina imena 255 - 8
  6. V najnovejši različici Elasticsearch imena, ki se začnejo z . so rezervirani za skrite indekse in notranje indekse, ki jih uporabljajo vtičniki Elasticsearch.

Kako ustvariti indeksno telo

Ko za izdelavo indeksa uporabite zahtevo PUT, lahko posredujete različne argumente, ki določajo nastavitve indeksa, ki ga želite ustvariti. Vrednosti, ki jih lahko določite v telesu, vključujejo:

  • Vzdevki: Določa imena vzdevkov za indeks, ki ga želite ustvariti; ta parameter ni obvezen.
  • Nastavitve: To določa možnosti konfiguracije za indeks, ki ga želite ustvariti. Če ne navedete nobenih parametrov, se indeks ustvari s privzetimi konfiguracijami.
  • Preslikave: To definira preslikavo polj v indeksu. Specifikacije, ki jih lahko vključite v preslikave, vključujejo:
    • Ime polja
    • Vrsta podatkov
    • Parameter preslikave

Za primer ustvarjanja indeksa s konfiguracijami telesa upoštevajte spodnjo zahtevo:

PUT / single_index_with_body

"nastavitve":
"number_of_shards": 2,
"number_of_replicas": 2
,
"Preslikave":
"lastnosti":
"field1": "type": "object"


Za zahtevo, enakovredno kurlu:

curl -XPUT "http: // localhost: 9200 / single_index_with_body" -H 'Content-Type: application / json' -d '"settings": "number_of_shards": 2, "number_of_replicas": 2, "mappings" : "properties": "field1": "type": "object" '

Zgornja zahteva ustvari nov indeks z imenom single_index_with_body z dvema številkama drobcev in dvema replikama. Ustvari tudi preslikavo s poljem imena field1 in vnesite kot objekt JSON.

Ko pošljete zahtevo, boste prejeli odgovor s statusom zahteve:


"Priznano": res,
"odlomki_priznani": res,
"index": "single_index_with_body"

»Potrjeno« prikazuje, ali je bil indeks uspešno ustvarjen v gruči, medtem ko »shards_acknowledged« prikazuje, ali je bilo potrebno potrebno število kopij delcev zagnano za vsak del v določenem indeksu pred potekom časa.

Kako si ogledati indeks Elasticsearch

Če si želite ogledati podatke o indeksu, ki ste ga ustvarili, uporabite podobno zahtevo kot za ustvarjanje indeksa, vendar uporabite metodo HTTP namesto PUT kot:

GET / single_index_with_body

Za curL,

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

Ta ukaz vam bo dal podrobne informacije o zahtevanem indeksu kot:


"single_index_with_body":
"vzdevki": ,
"preslikave":
"lastnosti":
"field1":
"type": "objekt"


,
"nastavitve":
"indeks":
"usmerjanje":
"dodelitev":
"vključi":
"_tier_preference": "vsebina_podatkov"


,
"number_of_shards": "2",
"provided_name": "single_index_with_body",
"creation_date": "1611045687208",
"number_of_replicas": "2",
"uuid": "3TRkO7xmQcSUOOGtb6pXVA",
"različica":
"created": "7100299"




Zaključek

Ta priročnik je razpravljal o tem, kako z Elasticsearch ustvariti indeksni API za ustvarjanje novih indeksov. Razpravljali smo tudi o tem, kako ustvariti ustrezna imena za indekse in nastavitve konfiguracije.

Z uporabo tega vodnika lahko zdaj z API-jem Elasticsearch ustvarjate in si ogledujete indekse.

S pomočjo gumba X-Mouse Button Control različno prilagodite gumbe miške za različno programsko opremo
Mogoče potrebujete orodje, ki bi lahko spremenilo nadzor miške z vsako aplikacijo, ki jo uporabljate. V tem primeru lahko preizkusite aplikacijo z ime...
Microsoft Sculpt Touch Wireless Mouse Review
Pred kratkim sem prebral o Microsoftov kiparski dotik brezžično miško in se odločil za nakup. Potem ko sem ga nekaj časa uporabljal, sem se odločil, d...
Zaslonska sledilna ploščica in kazalec miške AppyMouse za tablične računalnike Windows
Uporabniki tabličnih računalnikov pogosto zgrešijo miškin kazalec, še posebej kadar običajno uporabljajo prenosne računalnike. Pametni telefoni in tab...