Par laimi, izmantojot Elasticsearch, kad dati kļūst lieki, viss, kas jums jādara, ir piekļūt rīkam, lai veiktu pieprasījumus un pārsūtītu datus tīklā.
Šajā ātrajā ceļvedī tiks parādīts, kā izmantot vareno Elasticsearch API, lai izdzēstu dokumentus un indeksus.
PIEZĪME: Mēs pieņemam, ka jūsu sistēmā darbojas Elasticsearch un ka jums ir rīks tādu pieprasījumu veikšanai kā cURL. Mēs arī nodrošinām neapstrādātus Kibana pieprasījumus, ja izmantojat Kibana konsoli (ieteicams).
Kā uzskaitīt indeksu?
Ja vēlaties izdzēst un indeksēt vietnē Elasticsearch, vispirms pirms DELETE pieprasījuma nosūtīšanas jums jāpārbauda, vai tā pastāv.
Mēģinot izdzēst neesošu indeksu, tiks parādīta kļūda, līdzīga zemāk parādītajai:
DELETE / this_index_does_not_existCURL komandai:
čokurošanās -XDELETE “http: // localhost: 9200 / this_index_does_not_exist”Indeksa dzēšana radīs kļūdu kā:
"kļūda":
"galvenais cēlonis" : [
"type": "index_not_found_exception",
"iemesls": "nav šāda indeksa [this_index_does_not_exist]",
"index_uuid": "_na_",
"resurss.type ":" index_or_alias ",
"resurss.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
],
"type": "index_not_found_exception",
"iemesls": "nav šāda indeksa [this_index_does_not_exist]",
"index_uuid": "_na_",
"resurss.type ":" index_or_alias ",
"resurss.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
,
"statuss": 404
Ir dažādi veidi, kā pārbaudīt, vai pastāv indekss; labākais ir uzskaitīt tā nosaukumu. Piemēram, varat izmantot aizstājējzīmes, lai atbilstu noteiktam nosaukumam.
Zemāk esošajā pieprasījuma piemērā ir norādīti indeksi ar nosaukumiem te *
GET / te *CURL komanda ir:
čokurošanās -XGET “http: // localhost: 9200 / te *”Šai komandai jāatgriež visi indeksi, kas atbilst šim konkrētajam modelim, ļaujot atcerēties tikai daļēju indeksa nosaukumu, kuru vēlaties noņemt.
"temp":
"aizstājvārdi": ,
"kartējumi": ,
"iestatījumi" :
"rādītājs":
"maršrutēšana":
"sadalīšana" :
"iekļaut":
"_tier_preference": "data_content"
,
"skaita_skaidras": "1",
"nosacījums_nosaukums": "temp",
"creation_date": "1611180802266",
"Repliku skaits": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"versija":
"izveidots": "7100299"
,
"temp_1":
"aizstājvārdi": ,
"kartējumi": ,
"iestatījumi" :
"rādītājs":
"maršrutēšana":
"sadalīšana" :
"iekļaut":
"_tier_preference": "data_content"
,
"number_of_shards": "1",
"nosacījums_nosaukums": "temp_1",
"creation_date": "1611180811874",
"Repliku skaits": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"versija":
"izveidots": "7100299"
,
"temp_2":
"aizstājvārdi": ,
"kartējumi": ,
"iestatījumi" :
"rādītājs":
"maršrutēšana":
"sadalīšana" :
"iekļaut":
"_tier_preference": "data_content"
,
"number_of_shards": "1",
"nosacījums_nosaukums": "temp_2",
"creation_date": "1611180815041",
"Repliku skaits": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"versija":
"izveidots": "7100299"
Vēl viens veids ir pievienot pieprasījumam parametru ignore_unavailable. Piemēram:
DELETE / ignore_me?ignore_unavailable = trueCURL lietotājiem:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
čokurošanās -XDELETE “http: // localhost: 9200 / ignore_me?ignore_unavailable = true ”
Kā izdzēst Indekss?
Kad esat ieguvis indeksu, kuru vēlaties noņemt no Elasticsearch, izmantojiet DELETE pieprasījumu, kam seko indeksa nosaukums.
Vispārējā sintakse ir šāda:
Dzēst /Indeksa nosaukums var būt noteikts indekss vai aizstājējzīme, kas atlasa indeksu grupu. Pārliecinieties, ka aizstājējzīmes tiek lietotas pareizi; pretējā gadījumā jūs varat noņemt nepareizos indeksus.
PIEZĪME: Elasticsearch indeksu dzēšana, izmantojot aizstājvārdus, nav atļauta.
Apsveriet zemāk redzamo pieprasījuma piemēru, kas noņem indeksu temp_1:
DELETE / temp_1CURL komandai:
čokurošanās -XDELETE “http: // localhost: 9200 / temp_1”Izpildot šo komandu, jāatbild ar JSON objektu, norādot veiksmīgu indeksa noņemšanu.
“Atzīts”: taisnība
Elasticsearch ir pietiekami gudrs, lai zinātu, ka jūs varat nejauši noņemt indeksus. Tādēļ jūs varat iestatīt, kāda veida aizstājējzīmes ir atļautas.
Šāda veida aizstājējzīmes ietver:
- Viss: Iekļauj visus indeksus, ieskaitot atvērtos, slēgtos un slēptos (sākot ar)
- Atvērt: Ietver tikai atvērtos indeksus
- Slēgts: Ietver tikai slēgtos indeksus
- Nav: Nav atļauts aizstāt aizstājējzīmes.
Secinājums
Šajā ātrajā un vienkāršajā rokasgrāmatā mēs apspriedām Elasticsearch izmantošanas procesu, lai dzēstu indeksus no kopas. Mēs arī apspriedām vienkāršus veidus, kā jūs varat ieviest, lai izvairītos no kļūdām indeksos, kas neeksistē.
Paldies par lasīšanu.