Elasticsearch: indeksointi ja haku
Oppikaa Elasticsearchin, hajautetun haku- ja analytiikkamoottorin, perusteet. Ymmärtäkää, miten dokumentteja indeksoidaan ja miten peruskyselyitä suoritetaan.
Elasticsearch: indeksointi ja haku on ilmainen Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-kurssilla on yhteensä 4 oppituntia.
Tervetuloa Elasticsearchiin!
Tervetuloa ensimmäiselle ELK Stack -oppitunnille! Aloitamme Elasticsearchista, joka on ELK:n E-kirjain.
Elasticsearch on tehokas, avoimen lähdekoodin hajautettu haku- ja analytiikkamoottori. Se on suunniteltu tallentamaan, hakemaan ja analysoimaan suuria tietomääriä nopeasti.
- Hajautettu: Toimii useilla palvelimilla.
- Reaaliaikainen: Tiedot ovat haettavissa lähes välittömästi.
- Skaalautuva: Käsittelee kasvavat tietotarpeet helposti.
Tiedot JSON-dokumentteina
Elasticsearch tallentaa tiedot JSON-dokumentteina. Ajatelkaa dokumenttia yksittäisenä tietueena, joka muistuttaa tietokannan riviä mutta on joustavampi.
Jokainen dokumentti koostuu kentistä (avain-arvo-pareista), ja se voi sisältää erilaisia tietotyyppejä, kuten tekstiä, lukuja ja päivämääriä sekä muita JSON-objekteja.
Tässä on yksinkertainen esimerkki dokumentista:
{"user": "alice", "message": "Hello CoddyKit!"}Indeksien ymmärtäminen
Elasticsearchissa dokumentit järjestetään indekseihin. Indeksi muistuttaa relaatiotietokantajärjestelmän tietokantaa tai NoSQL-tietokannan kokoelmaa.
Voitte luoda useita indeksejä, joista kukin voi tallentaa toisiinsa jossain määrin liittyviä dokumentteja. Voitte esimerkiksi käyttää yhtä indeksiä lokeille ja toista tuotteille.
- Indeksi on looginen nimiavaruus.
- Se ryhmittelee samankaltaiset dokumentit.
- Hakuja tehdään tietyistä indekseistä.
Ensimmäisen dokumentin indeksointi
Indeksointi tarkoittaa dokumenttien lisäämistä Elasticsearch-indeksiin tai niiden päivittämistä siellä. Kun indeksoitte dokumentin, Elasticsearch tallentaa sen ja tekee siitä haettavan.
Jokaisella dokumentilla täytyy olla indeksissään yksilöllinen tunnus. Jos ette anna tunnusta, Elasticsearch luo sen puolestanne.
Olemme yhteydessä Elasticsearchiin HTTP API -kutsuilla, joissa käytetään yleensä PUT- tai POST-pyyntöjä.
Dokumentin indeksointiesimerkki
Indeksoidaan yksinkertainen lokidokumentti indeksiin nimeltä my_logs. Määritämme sen tunnukseksi 1.
Suorittakaa tämä komento olettaen, että Elasticsearch on käynnissä osoitteessa localhost:9200:
curl -X PUT "localhost:9200/my_logs/_doc/1?pretty" -H 'Content-Type: application/json' -d'
{
"timestamp": "2023-10-27T10:00:00Z",
"level": "info",
"message": "Application started successfully"
}'Dokumenttien hakeminen tunnuksen perusteella
Kun dokumentti on indeksoitu, voitte hakea sen yksilöllisen tunnuksen avulla. Tämä on hyödyllistä, kun tiedätte tarkalleen, minkä dokumentin haluatte.
Dokumentin hakemiseksi lähetätte HTTP GET -pyynnön tietyn indeksin ja dokumentin tunnuksen päätepisteeseen.
Tämä toiminto on erittäin nopea, koska Elasticsearch voi hakea dokumentin suoraan.
Dokumentin hakemisesimerkki
Haetaan juuri indeksoimamme dokumentti, jonka tunnus on 1 ja joka sijaitsee indeksissä my_logs.
Suorittakaa tämä komento nähdäksenne tallennetun dokumentin:
curl -X GET "localhost:9200/my_logs/_doc/1?pretty"Johdatus hakuihin
Elasticsearchin todellinen teho perustuu sen hakuominaisuuksiin. Sen sijaan että tietäisitte tunnuksen, haluatte usein löytää dokumentteja niiden sisällön perusteella.
Voitte hakea kaikista indeksin dokumenteista (tai useista indekseistä) erilaisilla kyselytyypeillä. Elasticsearch käyttää JSON-pohjaista kyselykieltä.
- Etsikää dokumentteja avainsanojen perusteella.
- Suodattakaa päivämäärävälien tai tiettyjen arvojen perusteella.
- Yhdistäkää useita hakuehtoja.
Perushaku: Match All
Yksinkertaisin hakukysely on match_all-kysely. Se palauttaa kaikki määritetyn indeksin dokumentit.
Tätä käytetään usein sen tarkistamiseen, että dokumentit on indeksoitu oikein, tai lähtökohtana monimutkaisemmille kyselyille.
Lähetätte HTTP GET -pyynnön indeksinne _search-päätepisteeseen.
Match All -kyselyn esimerkki
Haetaan kaikki dokumentit indeksistämme my_logs. Näette aiemmin indeksoimamme dokumentin.
Suorittakaa tämä komento:
curl -X GET "localhost:9200/my_logs/_search?pretty" -H 'Content-Type: application/json' -d'
{
"query": {
"match_all": {}
}
}'Indeksoinnin pikatarkistus
Olette oppineet dokumenteista ja indekseistä sekä tietojen indeksoinnista ja hakemisesta. Testataan seuraavaksi, miten hyvin ymmärrätte indeksoinnin.
Kertaus: indeksointi ja perushaku
Hienoa työtä! Tässä oppitunnissa opitte Elasticsearchin perusteet:
- Elasticsearch on hajautettu haku- ja analytiikkamoottori.
- Tiedot tallennetaan JSON-dokumentteina.
- Dokumentit järjestetään indekseihin.
- Indeksointi lisää dokumentteja tai päivittää niitä
PUT/POST-pyyntöjen avulla. - Dokumentteja voidaan hakea tunnuksen perusteella
GET-pyynnöillä. - Perushakuja voidaan tehdä esimerkiksi
match_all-kyselyillä.
Seuraavaksi tutustumme tarkemmin Logstashiin, ELK:n L-kirjaimeen, jolla tietoja vastaanotetaan ja käsitellään!
Opi Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry) tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 12
- Oppitunnit
- 48
Usein kysytyt kysymykset
Onko oppitunti ”Elasticsearch: indeksointi ja haku” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-oppimispolun 3 oppituntia, myös oppitunnin “Elasticsearch: indeksointi ja haku”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Elasticsearch: indeksointi ja haku”?
Oppikaa Elasticsearchin, hajautetun haku- ja analytiikkamoottorin, perusteet. Ymmärtäkää, miten dokumentteja indeksoidaan ja miten peruskyselyitä suoritetaan. Harjoittelet Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”Elasticsearch: indeksointi ja haku”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-oppitunnilla?
Kyllä. Jokainen Järjestelmän observability: lokitus, metriikat ja jäljitys (ELK + OpenTelemetry)-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Elasticsearch: indeksointi ja haku
- Logstash: datan vastaanotto ja käsittely
- Kibana: visualisointi ja koontinäytöt
- Beats: kevyet datan siirtäjät