Srećom, s Elasticsearchom, kada podaci postanu suvišni, sve što trebate je pristupiti alatu za izvršavanje zahtjeva i prijenos podataka putem mreže.
Ovaj će vam brzi vodič pokazati kako koristiti moćni Elasticsearch API za brisanje dokumenata i indeksa.
BILJEŠKA: Pretpostavljamo da na vašem sustavu radi Elasticsearch i da imate alat za izradu zahtjeva poput cURL-a. Također pružamo neobrađene zahtjeve za Kibana ako koristite Kibana Console (preporučeno).
Kako navesti indeks?
Ako želite izbrisati i indeksirati u Elasticsearchu, prvo morate potvrditi da postoji prije slanja zahtjeva za IZBRIŠI.
Ako pokušate izbrisati nepostojeći indeks, dobit ćete pogrešku, sličnu onoj prikazanoj u nastavku:
IZBRIŠI / this_index_does_not_existZa naredbu cURL:
curl -XDELETE “http: // localhost: 9200 / this_index_does_not_exist”Brisanjem indeksa pojavit će se pogreška kao:
"pogreška":
"korijenski_uzrok": [
"type": "index_not_found_exception",
"razlog": "takav indeks ne postoji [ovaj_indeks_ne_postoji]",
"index_uuid": "_na_",
"resurs.upišite ":" index_or_alias ",
"resurs.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
],
"type": "index_not_found_exception",
"razlog": "takav indeks ne postoji [ovaj_indeks_ne_postoji]",
"index_uuid": "_na_",
"resurs.upišite ":" index_or_alias ",
"resurs.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
,
"status": 404
Postoje različiti načini kako provjeriti postoji li indeks; najbolje je navesti njegovo ime. Na primjer, možete koristiti zamjenske znakove kako biste se podudarali s određenim imenom.
Primjer zahtjeva u nastavku navodi indekse s imenima te *
DOBITI / te *Naredba cURL je:
curl -XGET “http: // localhost: 9200 / te *”Ova bi naredba trebala vratiti sve indekse koji se podudaraju s tim određenim uzorkom, omogućujući vam pamćenje samo djelomičnog imena indeksa koji želite ukloniti.
"temp":
"aliasi": ,
"preslikavanja": ,
"postavke":
"indeks":
"usmjeravanje":
"dodjela":
"uključi":
"_tier_preference": "sadržaj_ podataka"
,
"number_of_shards": "1",
"provided_name": "temp",
"creation_date": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"inačica":
"stvoreno": "7100299"
,
"temp_1":
"aliasi": ,
"preslikavanja": ,
"postavke":
"indeks":
"usmjeravanje":
"dodjela":
"uključi":
"_tier_preference": "content_content"
,
"number_of_shards": "1",
"provided_name": "temp_1",
"create_date": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"inačica":
"stvoreno": "7100299"
,
"temp_2":
"aliasi": ,
"preslikavanja": ,
"postavke":
"indeks":
"usmjeravanje":
"dodjela":
"uključi":
"_tier_preference": "content_content"
,
"number_of_shards": "1",
"provided_name": "temp_2",
"create_date": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"inačica":
"stvoreno": "7100299"
Drugi način je dodavanje parametra ignore_unavailable zahtjevu. Na primjer:
IZBRIŠI / zanemari_me?ignore_unavailable = trueZa korisnike curl-a:
[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 Indeks?
Nakon što dobijete indeks koji želite ukloniti iz Elasticsearch-a, upotrijebite zahtjev DELETE nakon kojeg slijedi naziv indeksa.
Općenita sintaksa je:
IZBRIŠI /Naziv indeksa može biti određeni indeks ili zamjenski znak koji odabire skupinu indeksa. Osigurajte ispravnu upotrebu zamjenskih znakova; u suprotnom možete ukloniti pogrešne indekse.
BILJEŠKA: Brisanje indeksa Elasticsearch pomoću aliasa nije dopušteno.
Razmotrite primjer primjera zahtjeva koji uklanja indeks temp_1:
IZBRIŠI / temp_1Za naredbu cURL:
curl -XDELETE “http: // localhost: 9200 / temp_1”Izvršenje ove naredbe trebalo bi odgovoriti JSON objektom, što ukazuje na uspješno uklanjanje indeksa.
"Priznato": istina
Elasticsearch je dovoljno pametan da zna da indekse možete slučajno ukloniti. Stoga možete postaviti vrste dozvoljenih izraza zamjenskih znakova.
Ove vrste izraza zamjenskih znakova uključuju:
- svi: Uključuje sve indekse, uključujući otvorene, zatvorene i skrivene (počevši sa)
- Otvorena: Uključuje samo otvorene indekse
- Zatvoreno: Uključuje samo zatvorene indekse
- Nijedna: Nisu dopušteni zamjenski izrazi.
Zaključak
Za ovaj brzi i jednostavni vodič razgovarali smo o postupku korištenja Elasticsearch za brisanje indeksa iz klastera. Također smo razgovarali o jednostavnim načinima koje možete primijeniti kako biste izbjegli pogreške za indekse koji ne postoje.
Hvala na čitanju.