Laimei, naudojant „Elasticsearch“, kai duomenys tampa nereikalingi, jums tereikia pasiekti įrankį, kad būtų galima atlikti užklausas ir perduoti duomenis tinklu.
Šis trumpasis vadovas parodys, kaip naudoti galingą „Elasticsearch“ API, norint ištrinti dokumentus ir indeksus.
PASTABA: Manome, kad jūsų sistemoje veikia „Elasticsearch“ ir kad turite įrankį užklausoms pateikti, pvz., CURL. Mes taip pat teikiame neapdorotas „Kibana“ užklausas, jei naudojate „Kibana Console“ (rekomenduojama).
Kaip išvardyti indeksą?
Jei norite ištrinti ir indeksuoti „Elasticsearch“, prieš siųsdami „DELETE“ užklausą pirmiausia turite patikrinti, ar ji egzistuoja.
Jei bandysite ištrinti neegzistuojantį indeksą, gausite klaidą, panašią į žemiau pateiktą:
DELETE / this_index_does_not_ egzistuojaCURL komandai:
susisukti -XDELETE „http: // localhost: 9200 / this_index_does_not_exist“Ištrynus indeksą bus klaida kaip:
„klaida“:
"Pagrindinė priežastis" : [
"type": "index_not_found_exception",
"priežastis": "tokio indekso nėra [this_index_does_not_exist]",
"index_uuid": "_na_",
"šaltinis.type ":" index_or_alias ",
"šaltinis.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
],
"type": "index_not_found_exception",
"priežastis": "tokio indekso nėra [this_index_does_not_exist]",
"index_uuid": "_na_",
"šaltinis.type ":" index_or_alias ",
"šaltinis.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
,
„statusas“: 404
Yra įvairių būdų patikrinti, ar egzistuoja indeksas; geriausia yra išvardyti jo pavadinimą. Pavyzdžiui, galite naudoti pakaitos simbolius, kad atitiktų konkretų vardą.
Toliau pateiktoje užklausos pavyzdyje pateikiami indeksai, kurių pavadinimai te *
GET / te *CURL komanda yra:
garbanos -XGET „http: // localhost: 9200 / te *“Ši komanda turėtų grąžinti visus indeksus, atitinkančius tą konkretų šabloną, leidžiantį prisiminti tik dalinį indekso, kurį norite pašalinti, pavadinimą.
„temp“:
„slapyvardžiai“: ,
„susiejimai“: ,
„nustatymai“:
"indeksas" :
„maršrutas“:
„paskirstymas“:
„įtraukti“:
"_tier_preference": "data_content"
,
"sh_s__skaičius": "1",
"numatytas_pavadinimas": "temp",
"creation_date": "1611180802266",
"replikų skaičius": "1",
„uuid“: „c7dOH6MQQUmHM2MKJ73ekw“,
„versija“:
„sukurtas“: „7100299“
,
„temp_1“:
„slapyvardžiai“: ,
„susiejimai“: ,
„nustatymai“:
"indeksas" :
„maršrutas“:
„paskirstymas“:
„įtraukti“:
"_tier_preference": "data_content"
,
"number_of_shards": "1",
"numatyta_pavadinimas": "temp_1",
"creation_date": "1611180811874",
"replikų skaičius": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
„versija“:
„sukurtas“: „7100299“
,
„temp_2“:
„slapyvardžiai“: ,
„susiejimai“: ,
„nustatymai“:
"indeksas" :
„maršrutas“:
„paskirstymas“:
„įtraukti“:
"_tier_preference": "data_content"
,
"sh_s__skaičius": "1",
"numatyta_pavadinimas": "temp_2",
"creation_date": "1611180815041",
"replikų skaičius": "1",
„uuid“: „8NdXWPuBTLe6r4eZ407W9Q“,
„versija“:
„sukurtas“: „7100299“
Kitas būdas yra pridėti užklausą parametrą ignore_unavailable. Pavyzdžiui:
DELETE / ignore_me?ignore_unavailable = trueCURL vartotojams:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
garbanos -XDELETE “http: // localhost: 9200 / ignore_me?ignore_unavailable = true “
Kaip ištrinti Indeksas?
Kai turėsite indeksą, kurį norite pašalinti iš „Elasticsearch“, naudokite užklausą DELETE ir indekso pavadinimą.
Bendroji sintaksė yra:
IŠTRINTI /Indekso pavadinimas gali būti konkretus indeksas arba pakaitos simbolis, kuris pasirenka indeksų grupę. Įsitikinkite, kad pakaitos simboliai naudojami teisingai; priešingu atveju galite pašalinti neteisingus indeksus.
PASTABA: Elasticsearch indeksų ištrynimas naudojant slapyvardžius neleidžiamas.
Apsvarstykite toliau pateiktą užklausos pavyzdį, kuris pašalina temp_1 indeksą:
DELETE / temp_1CURL komandai:
garbanos -XDELETE „http: // localhost: 9200 / temp_1“Vykdant šią komandą, reikia atsakyti JSON objektu, nurodant sėkmingą indekso pašalinimą.
„Pripažino“: tiesa
„Elasticsearch“ yra pakankamai protingas, kad žinotų, jog galite netyčia pašalinti indeksus. Todėl galite nustatyti, kokie pakaitos simbolių tipai yra leidžiami.
Šios rūšies pakaitos išraiškos apima:
- Viskas: Apima visus indeksus, įskaitant atvirus, uždarus ir paslėptus (pradedant)
- Atviras: Įtraukiami tik atviri indeksai
- Uždaryta: Apima tik uždarus indeksus
- Nė vienas: Jokios pakaitos išraiškos neleidžiamos.
Išvada
Šiame greitame ir paprastame vadove aptarėme „Elasticsearch“ naudojimo procesą norint ištrinti indeksus iš klasterio. Mes taip pat aptarėme paprastus būdus, kuriuos galite įdiegti, kad išvengtumėte neegzistuojančių indeksų klaidų.
Ačiū, kad skaitėte.