Elastična pretraga

Kako stvoriti indekse elastičnog pretraživanja

Kako stvoriti indekse elastičnog pretraživanja
Elasticsearch dio je popularnog ELK stoga koji se koristi za analitiku dnevnika i pretraživanje. Aplikacije i sustavi neprestano bilježe podatke koji mogu biti vrlo korisni za rješavanje problema i praćenje problema. Korištenjem ELK stoga imate najbolje alate za brzo i vrlo jednostavno obavljanje ovih zadataka.

U ovom ćemo brzom vodiču pogledati Elasticsearch, konkretno kako stvoriti indekse u Elasticsearch mehanizmu. Iako vam nije potrebno sveobuhvatno znanje o ELK stogu da biste slijedili ovaj vodič, dobro bi bilo imati osnovno razumijevanje sljedećih tema:

BILJEŠKA: Ovaj vodič također pretpostavlja da imate Elasticsearch instaliran i pokrenut na vašem sustavu.

Što su indeksi elastičnog pretraživanja?

Bez pretjeranog pojednostavljivanja ili prekompliciranja stvari, indeks Elasticsearch zbirka je povezanih JSON dokumenata.

Kao što je spomenuto u prethodnom postu, indeksi Elasticsearch JSON su objekti koji se smatraju osnovnom jedinicom pohrane u Elasticsearchu. Ovi povezani JSON dokumenti pohranjeni su u jednoj jedinici koja čini indeks. Zamislite dokumente Elasticsearch kao tablice u relacijskoj bazi podataka.

Povežimo indeks Elasticsearch kao bazu podataka u SQL svijetu.

Kako stvoriti indeks elastičnog pretraživanja

Elasticsearch koristi snažni i intuitivni REST API za izlaganje svojih usluga. Ova vam funkcija omogućuje upotrebu HTTP zahtjeva za obavljanje operacija na Elasticsearch klasteru. Stoga ćemo koristiti API izrade indeksa za izradu novog indeksa.

Za ovaj vodič koristit ćemo cURL za slanje zahtjeva i očuvanje integriteta i upotrebljivosti za sve korisnike. Međutim, ako naiđete na pogreške s curlom, razmislite o upotrebi Kibana Console.

Sintaksa za stvaranje novog indeksa u Elasticsearch klasteru je:

STAVITI /

Da biste stvorili indeks, potrebno je samo proslijediti ime indeksa bez drugih parametara, što stvara indeks pomoću zadanih postavki.

Također možete odrediti razne značajke indeksa, na primjer u tijelu indeksa:

  • Postavke za indeks
  • Indeksni aliasi
  • Mapiranja za indeksna polja

Ime indeksa je obavezni parametar; u suprotnom, dobit ćete pogrešku za URIL (/)

curl -X STAVITE “localhost: 9200”
"error": "Pogrešna HTTP metoda za uri [/] i metoda [PUT], dopušteno: [DELETE, HEAD, GET]", "status": 405

Da bismo stvorili novi indeks s imenom single_index, prosljeđujemo zahtjev:

PUT / pojedinačni_indeks

Za curL upotrijebite naredbu:

curl -X STAVITE "localhost: 9200 / single_index?prilično"

Ova bi naredba trebala rezultirati HTTP statusom 200 OK i porukom s potvrđenim: true kao:


"Priznato": istina,
"krhotine_priznato": točno,
"index": "single_index"

Gornji zahtjev stvara indeks single_index sa zadanim postavkama jer nismo naveli nijednu konfiguraciju.

Pravila imenovanja indeksa

Prilikom izrade imena za indekse Elasticsearch, morate se pridržavati sljedećih standarda imenovanja:

  1. Naziv indeksa mora biti samo malim slovima.
  2. Imena indeksa ne mogu počinjati crticom (-), podvlakom (_) ili znakom sabiranja (+)
  3. Imena ne mogu biti . ili…
  4. Imena indeksa ne mogu sadržavati posebne znakove kao što su: \, /, *, ?, “, <, >, |, "(razmaknica), ,, #
  5. Duljina naziva indeksa mora biti manja od 255 bajtova. Višebajtni znakovi računat će se u ukupnu duljinu imena indeksa. Na primjer, ako je jedan znak duljine 8 bajtova, ukupna preostala duljina imena je 255 - 8
  6. U najnovijoj verziji Elasticsearch, imena koja počinju s . rezervirani su za skrivene indekse i interne indekse koje koriste dodaci Elasticsearch.

Kako stvoriti indeksno tijelo

Kada koristite PUT zahtjev za stvaranje indeksa, možete proslijediti razne argumente koji definiraju postavke za indeks koji želite stvoriti. Vrijednosti koje možete odrediti u tijelu uključuju:

  • Pseudonimi: Određuje imena zamjenskih imena za indeks koji želite stvoriti; ovaj parametar nije obavezan.
  • Postavke: Ovo definira opcije konfiguracije za indeks koji želite stvoriti. Ako ne uspijete odrediti nijedan parametar, indeks se kreira pomoću zadanih konfiguracija.
  • Mapiranja: Ovo definira preslikavanje polja u indeksu. Specifikacije koje možete uključiti u mapiranja uključuju:
    • Naziv polja
    • Vrsta podataka
    • Parametar mapiranja

Za primjer izrade indeksa s tjelesnim konfiguracijama razmotrite zahtjev u nastavku:

PUT / single_index_with_body

"postavke":
"number_of_shards": 2,
"broj_replika": 2
,
“Preslikavanja”:
"Svojstva":
"field1": "type": "object"


Za cURL ekvivalentni zahtjev:

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" : "svojstva": "polje1": "tip": "objekt" '

Gornji zahtjev stvara novi indeks s imenom single_index_with_body s 2 broja krhotina i 2 replike. Također kreira mapiranje s poljem imena polja1 i ukucajte kao JSON objekt.

Nakon što pošaljete zahtjev, dobit ćete odgovor sa statusom zahtjeva kao:


"Priznato": istina,
"krhotine_priznato": točno,
"index": "single_index_with_body"

“Potvrđeno” pokazuje je li indeks uspješno kreiran u klasteru, dok “oštrice_priznato” pokazuje je li potreban potreban broj kopija krhotina pokrenut za svaku krhotinu u navedenom indeksu prije isteka vremena.

Kako pregledati indeks Elasticsearch

Da biste pregledali informacije o indeksu koji ste stvorili, upotrijebite zahtjev sličan onom za stvaranje indeksa, ali upotrijebite HTTP metodu umjesto PUT kao:

GET / single_index_with_body

Za curL,

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

Ova naredba dat će vam detaljne informacije o traženom indeksu kao:


"single_index_with_body":
"aliasi": ,
"preslikavanja":
"Svojstva" :
"polje1":
"type": "objekt"


,
"postavke":
"indeks":
"usmjeravanje":
"dodjela":
"uključi":
"_tier_preference": "sadržaj_ podataka"


,
"number_of_shards": "2",
"provided_name": "single_index_with_body",
"create_date": "1611045687208",
"number_of_replicas": "2",
"uuid": "3TRkO7xmQcSUOOGtb6pXVA",
"inačica":
"stvoreno": "7100299"




Zaključak

Ovaj je vodič raspravljao o tome kako raditi s Elasticsearchom za stvaranje API-ja indeksa za stvaranje novih indeksa. Također smo razgovarali o tome kako stvoriti prikladna imena za indekse i postavke konfiguracije.

Korištenjem ovog vodiča sada možete stvarati i pregledavati indekse pomoću API-ja Elasticsearch.

Emulirajte klikove mišem lebdeći mišem bez klika u sustavu Windows 10
Korištenje miša ili tipkovnice u pogrešnom držanju pretjerane upotrebe može rezultirati mnogim zdravstvenim problemima, uključujući naprezanje, sindro...
Dodajte geste miša u sustav Windows 10 pomoću ovih besplatnih alata
Posljednjih godina računala i operativni sustavi uvelike su se razvili. Bilo je vrijeme kada su korisnici morali koristiti naredbe za navigaciju kroz ...
Kontrolirajte i upravljajte kretanjem miša između više monitora u sustavu Windows 10
Dvostruki zaslon upravitelja miša omogućuje vam kontrolu i konfiguriranje kretanja miša između više monitora, usporavajući njegovo kretanje blizu gran...