Joustava haku

Elasticsearch-indeksien luominen

Elasticsearch-indeksien luominen
Elasticsearch on yksi suosituista ELK-pinoista, jota käytetään lokianalytiikkaan ja hakuun. Sovellukset ja järjestelmät kirjaavat jatkuvasti tietoja, joista voi olla hyötyä vianmäärityksessä ja ongelmien seurannassa. ELK-pinon avulla sinulla on parhaat työkalut näiden tehtävien suorittamiseen nopeasti ja helposti.

Tässä pikaoppaassa tarkastelemme Elasticsearchia ja erityisesti sitä, miten luodaan indeksejä Elasticsearch-moottoriin. Vaikka et tarvitse kattavaa tietoa ELK-pinoista tämän opetusohjelman seuraamiseksi, seuraavien aiheiden perustiedot voivat olla hyödyllisiä:

MERKINTÄ: Tässä opetusohjelmassa oletetaan myös, että Elasticsearch on asennettu ja käynnissä järjestelmässäsi.

Mitä ovat elasticsearch-indeksit?

Elasticsearch-hakemisto on kokoelma asiaan liittyviä JSON-asiakirjoja yksinkertaistamatta tai yksinkertaistamatta asioita.

Kuten edellisessä viestissä mainittiin, Elasticsearch-indeksit ovat JSON-objekteja, joita pidetään Elasticsearchin tallennustilan perusyksikkönä. Nämä liittyvät JSON-asiakirjat tallennetaan yhteen yksikköön, joka muodostaa hakemiston. Ajattele Elasticsearch-dokumentteja taulukoina relaatiotietokannassa.

Liitetään Elasticsearch-hakemisto tietokantaan SQL-maailmassa.

Kuinka luoda Elasticsearch-hakemisto

Elasticsearch käyttää tehokkaan ja intuitiivisen REST-sovellusliittymän paljastamaan palvelunsa. Tämän toiminnon avulla voit käyttää HTTP-pyyntöjä toimintojen suorittamiseen Elasticsearch-klusterille. Siksi käytämme Create index API: ta uuden indeksin luomiseen.

Tässä oppaassa käytämme cURL: ää pyyntöjen lähettämiseen ja eheyden ja käytettävyyden säilyttämiseen kaikille käyttäjille. Jos kuitenkin kohtaat virheitä cURL: n kanssa, harkitse Kibana Consolen käyttöä.

Syntaksi uuden hakemiston luomiseen Elasticsearch-klusteriin on:

PUT /

Hakemiston luominen edellyttää, että siirrät indeksin nimen ilman muita parametreja, mikä luo hakemiston oletusasetuksilla.

Voit määrittää myös indeksin eri ominaisuuksia, kuten hakemiston rungossa:

  • Hakemiston asetukset
  • Hakemiston aliakset
  • Hakemistokenttien yhdistämiset

Indeksin nimi on pakollinen parametri; muuten saat virheilmoituksen URIL (/)

curl -X PUT “paikallinen isäntä: 9200”
"error": "Virheellinen HTTP-menetelmä urille [/] ja menetelmä [PUT], sallittu: [POISTA, HEAD, GET]", "status": 405

Jos haluat luoda uuden hakemiston nimellä single_index, välitämme pyynnön:

PUT / single_index

Käytä cURL-komentoa komennolla:

curl -X PUT "paikallinen isäntä: 9200 / single_index?nätti"

Tämän komennon tulisi antaa HTTP Status 200 OK ja viesti kuitatulla: true as:


"Tunnustettu": totta,
"shards_acknowledged": totta,
"index": "single_index"

Yllä oleva pyyntö luo hakemiston single_index oletusasetuksilla, koska emme määrittäneet kokoonpanoja.

Hakemiston nimeämissäännöt

Kun luot nimiä Elasticsearch-indekseille, sinun on noudatettava seuraavia nimistandardeja:

  1. Hakemiston nimen on oltava vain pieniä kirjaimia.
  2. Indeksinimet eivät voi alkaa viivalla (-), alaviivalla (_) tai lisäysmerkillä (+)
  3. Nimet eivät voi olla . tai…
  4. Hakemistonimissä ei saa olla erikoismerkkejä, kuten: \, /, *, ?, ", <, >, |, "(välilyönti), ,, #
  5. Hakemistonimien pituuden on oltava alle 255 tavua. Monitavuiset merkit lasketaan hakemiston nimen kokonaispituudeksi. Esimerkiksi, jos yksittäisen merkin pituus on 8 tavua, nimen jäljellä oleva kokonaispituus on 255-8
  6. Elasticsearchin uusimmassa versiossa nimet, jotka alkavat a: lla . varataan piilotetuille ja sisäisille indekseille, joita Elasticsearch-laajennukset käyttävät.

Hakemiston rungon luominen

Kun PUT-pyyntöä käytetään indeksin luomiseen, voit välittää useita argumentteja, jotka määrittävät luodun hakemiston asetukset. Rungossa määritettäviä arvoja ovat:

  • Aliakset: Määrittää aliaksien nimet luotavalle hakemistolle; tämä parametri on valinnainen.
  • Asetukset: Tämä määrittelee luomasi hakemiston kokoonpanovaihtoehdot. Jos et määritä mitään parametreja, hakemisto luodaan oletusasetuksilla.
  • Kartoitukset: Tämä määrittelee hakemiston kenttien kartoituksen. Määrityksiin voit sisällyttää kartoituksia:
    • Kentän nimi
    • Tietotyyppi
    • Kartoitusparametri

Harkitse alla olevaa pyyntöä esimerkkinä kehon määrityksillä indeksin luomisesta:

PUT / single_index_with_body

"asetukset":
"sirpaleiden lukumäärä": 2,
"Kopioiden lukumäärä": 2
,
"Kartoitukset":
"ominaisuudet":
"field1": "type": "object"


CURL-vastaavaa pyyntöä varten:

curl -XPUT "http: // localhost: 9200 / single_index_with_body" -H 'Sisältötyyppi: application / json' -d '"settings": "number_of_shards": 2, "number_of_replicas": 2, "mappings" : "properties": "field1": "type": "object" '

Yllä oleva pyyntö luo uuden hakemiston nimellä single_index_with_body, jossa on 2 kpl sirpaleita ja 2 kopiota. Se luo myös kartoituksen nimikentän1 kentällä ja kirjoita JSON-objektiksi.

Kun lähetät pyynnön, saat vastauksen, jonka tila on:


"Tunnustettu": totta,
"shards_acknowledged": totta,
"index": "single_index_with_body"

"Hyväksytty" osoittaa, luodaanko hakemisto onnistuneesti klusterissa, kun taas "shards_acknowledged" osoittaa, aloitettiinko vaadittu määrä sirukopioita kullekin määritetyn indeksin sirulle ennen aikakatkaisua.

Kuinka tarkastella Elasticsearch-hakemistoa

Jos haluat tarkastella luomasi indeksin tietoja, käytä samanlaista pyyntöä kuin hakemiston luomisessa, mutta käytä HTTP-menetelmää PUT: n sijaan seuraavasti:

GET / single_index_with_body

CURL: lle,

käpristyminen -XGET “http: // localhost: 9200 / single_index_with_body”

Tämä komento antaa sinulle yksityiskohtaisia ​​tietoja pyydetystä hakemistosta seuraavasti:


"single_index_with_body":
"aliakset": ,
"kartoitukset":
"ominaisuudet":
"field1":
"type": "object"


,
"asetukset" :
"indeksi" :
"reititys":
"allokointi":
"sisältää" :
"_tier_preference": "data_content"


,
"number_of_shards": "2",
"edellyttäen_nimi": "single_index_with_body",
"creation_date": "1611045687208",
"replikoiden numero": "2",
"uuid": "3TRkO7xmQcSUOOGtb6pXVA",
"version":
"luotu": "7100299"




Johtopäätös

Tässä oppaassa keskusteltiin siitä, miten Elasticsearchin kanssa luodaan indeksisovellusliittymä uusien indeksien luomiseksi. Keskustelimme myös siitä, kuinka luoda sopivat nimet indekseille ja kokoonpanoasetuksille.

Tämän oppaan avulla voit nyt luoda ja tarkastella indeksejä Elasticsearch-sovellusliittymän avulla.

How to Develop a Game on Linux
A decade ago, not many Linux users would predict that their favorite operating system would one day be a popular gaming platform for commercial video ...
Open Source Ports of Commercial Game Engines
Free, open source and cross-platform game engine recreations can be used to play old as well as some of the fairly recent game titles. This article wi...
Parhaat komentorivipelit Linuxille
Komentorivi ei ole vain suurin liittolainen Linuxia käytettäessä - se voi olla myös viihteen lähde, koska voit käyttää sitä pelaamaan monia hauskoja p...