Na srečo pri Elasticsearchu, ko podatki postanejo odvečni, vse, kar morate storiti, je dostop do orodja za izvajanje zahtev in prenos podatkov po omrežju.
Ta hitri vodnik vam bo pokazal, kako uporabljati mogočen API Elasticsearch za brisanje dokumentov in indeksov.
OPOMBA: Predvidevamo, da v vašem sistemu deluje Elasticsearch in da imate orodje za pošiljanje zahtev, kot je cURL. Če uporabljate konzolo Kibana, priporočamo tudi surove zahteve za Kibana (priporočeno).
Kako uvrstiti na seznam?
Če želite izbrisati in indeksirati v programu Elasticsearch, morate najprej poslati zahtevo DELETE, da preverite, ali obstaja.
Če poskusite izbrisati neobstoječi indeks, se prikaže napaka, podobna tisti, prikazani spodaj:
DELETE / this_index_does_not_existZa ukaz cURL:
curl -XDELETE “http: // localhost: 9200 / this_index_does_not_exist”Če izbrišete indeks, se prikaže napaka:
"napaka":
"glavni vzrok" : [
"type": "index_not_found_exception",
"reason": "tak indeks ne obstaja [this_index_does_not_exist]",
"index_uuid": "_na_",
"vir.vnesite ":" index_or_alias ",
"vir.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
],
"type": "index_not_found_exception",
"reason": "tak indeks ne obstaja [this_index_does_not_exist]",
"index_uuid": "_na_",
"vir.vnesite ":" index_or_alias ",
"vir.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
,
"status": 404
Obstajajo različni načini, kako preveriti, ali indeks obstaja; najbolje je navesti njegovo ime. Na primer, nadomestne znake lahko uporabite za ujemanje z določenim imenom.
Spodnji primer zahteve navaja indekse z imeni te *
GET / te *Ukaz cURL je:
curl -XGET “http: // localhost: 9200 / te *”Ta ukaz mora vrniti vse indekse, ki se ujemajo s tem določenim vzorcem, kar vam omogoča, da si zapomnite le delno ime indeksa, ki ga želite odstraniti.
"temp":
"vzdevki": ,
"preslikave": ,
"nastavitve":
"indeks":
"usmerjanje":
"dodelitev":
"vključi":
"_tier_preference": "vsebina_podatkov"
,
"number_of_shards": "1",
"provided_name": "temp",
"creation_date": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"različica":
"created": "7100299"
,
"temp_1":
"vzdevki": ,
"preslikave": ,
"nastavitve":
"indeks":
"usmerjanje":
"dodelitev":
"vključi":
"_tier_preference": "vsebina_podatkov"
,
"number_of_shards": "1",
"provided_name": "temp_1",
"creation_date": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"različica":
"created": "7100299"
,
"temp_2":
"vzdevki": ,
"preslikave": ,
"nastavitve":
"indeks":
"usmerjanje":
"dodelitev":
"vključi":
"_tier_preference": "vsebina_podatkov"
,
"number_of_shards": "1",
"provided_name": "temp_2",
"creation_date": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"različica":
"created": "7100299"
Drug način je, da zahtevi dodate parameter ignore_unavailable. Na primer:
IZBRIŠI / prezri_me?ignore_unavailable = trueZa uporabnike cURL:
[cc lang = "text" width = "100%" height = "100%" escape = "true" theme = "blackboard" nowrap = "0"]
curl -XDELETE “http: // localhost: 9200 / ignore_me?ignore_unavailable = true ”
Kako izbrisati Kazalo?
Ko imate indeks, ki ga želite odstraniti iz Elasticsearch, uporabite zahtevo DELETE, ki ji sledi ime indeksa.
Splošna sintaksa je:
IZBRIŠI /Ime indeksa je lahko določen indeks ali nadomestni znak, ki izbere skupino indeksov. Poskrbite za pravilno uporabo nadomestnih znakov; v nasprotnem primeru lahko odstranite napačne indekse.
OPOMBA: Brisanje indeksov Elasticsearch z uporabo vzdevkov ni dovoljeno.
Upoštevajte spodnji primer zahteve, ki odstranjuje indeks temp_1:
IZBRIŠI / temp_1Za ukaz cURL:
curl -XDELETE “http: // localhost: 9200 / temp_1”Izvajanje tega ukaza se mora odzvati z objektom JSON, kar kaže na uspešno odstranitev indeksa.
"Priznano": res
Elasticsearch je dovolj pameten, da ve, da lahko indekse nenamerno odstranite. Zato lahko nastavite, katere vrste izrazov nadomestnih znakov so dovoljene.
Ti izrazi nadomestnih znakov vključujejo:
- Vse: Vključuje vse indekse, vključno z odprtimi, zaprtimi in skritimi (začenši z)
- Odprto: Vključuje samo odprte indekse
- Zaprto: Vključuje samo zaprte indekse
- Nobenega: Izrazi z nadomestnimi znaki niso dovoljeni.
Zaključek
V tem hitrem in preprostem priročniku smo razpravljali o postopku uporabe Elasticsearch za brisanje indeksov iz grozda. Razpravljali smo tudi o preprostih načinih, s katerimi se lahko izognete napakam pri indeksih, ki ne obstajajo.
Hvala za branje.