Lyckligtvis, med Elasticsearch, när data blir överflödiga, behöver du bara komma åt ett verktyg för att utföra förfrågningar och överföra data över nätverket.
Den här snabbguiden visar hur du använder det mäktiga Elasticsearch API för att radera dokument och index.
NOTERA: Vi antar att du har Elasticsearch på ditt system och att du har ett verktyg för att göra förfrågningar som cURL. Vi tillhandahåller också råa Kibana-förfrågningar om du använder Kibana Console (rekommenderas).
Hur man listar index?
Om du vill ta bort och indexera i Elasticsearch måste du först verifiera att det finns innan du skickar DELETE-begäran.
Om du försöker ta bort ett icke-existerande index får du ett fel som liknar det som visas nedan:
RADERA / det här_index_et_existerar inteFör cURL-kommando:
curl -XDELETE “http: // localhost: 9200 / this_index_does_not_exist”Att radera ett index ger ett fel som:
"fel":
"Grundorsak" : [
"typ": "index_not_found_exception",
"reason": "inget sådant index [detta_index_dockar_existerar]",
"index_uuid": "_na_",
"resurs.typ ":" index_or_alias ",
"resurs.id ":" denna_index_definerar inte ",
"index": "detta_index_det_not_existerar"
],
"typ": "index_not_found_exception",
"reason": "inget sådant index [detta_index_dockar_existerar]",
"index_uuid": "_na_",
"resurs.typ ":" index_or_alias ",
"resurs.id ":" detta_index_det_not_existerar ",
"index": "detta_index_det_not_existerar"
,
"status": 404
Det finns olika sätt att kontrollera om ett index finns; det bästa är att lista sitt namn. Du kan till exempel använda jokertecken för att matcha ett specifikt namn.
Exempelförfrågan nedan listar index med namn te *
FÅ / te *Kommandot cURL är:
curl -XGET “http: // localhost: 9200 / te *”Detta kommando ska returnera alla index som matchar det specifika mönstret, så att du bara kommer ihåg det partiella namnet på det index du vill ta bort.
"temp":
"alias": ,
"mappningar": ,
"inställningar" :
"index":
"routing":
"allokering":
"inkludera":
"_tier_preference": "data_innehåll"
,
"number_of_shards": "1",
"provided_name": "temp",
"creation_date": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"version":
"skapade": "7100299"
,
"temp_1":
"alias": ,
"mappningar": ,
"inställningar" :
"index":
"routing":
"allokering":
"inkludera":
"_tier_preference": "data_innehåll"
,
"number_of_shards": "1",
"provided_name": "temp_1",
"creation_date": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"version":
"skapade": "7100299"
,
"temp_2":
"alias": ,
"mappningar": ,
"inställningar" :
"index":
"routing":
"allokering":
"inkludera":
"_tier_preference": "data_innehåll"
,
"number_of_shards": "1",
"given_name": "temp_2",
"creation_date": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"version":
"skapade": "7100299"
Ett annat sätt är att lägga till parametern ignore_unavailable i begäran. Till exempel:
RADERA / ignorera mig?ignorera_unavailable = trueFör cURL-användare:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
curl -XDELETE “http: // localhost: 9200 / ignore_me?ignorera_unavailable = true ”
Hur man tar bort en Index?
När du väl har det index du vill ta bort från Elasticsearch, använd DELETE-begäran följt av indexnamnet.
Den allmänna syntaxen är:
RADERA /Indexnamnet kan vara ett specifikt index eller ett jokertecken som väljer en grupp med index. Se till att använda jokertecken korrekt; annars kan du ta bort fel index.
NOTERA: Radering av Elasticsearch-index med alias är inte tillåtet.
Tänk på exempelförfrågan nedan som tar bort temp_1-indexet:
RADERA / temp_1För cURL-kommando:
curl -XDELETE “http: // localhost: 9200 / temp_1”Att utföra detta kommando ska svara med ett JSON-objekt, vilket indikerar att indexet har tagits bort.
”Erkänt”: sant
Elasticsearch är tillräckligt smart för att veta att du kan ta bort index av misstag. Därför kan du ställa in vilka typer av jokerteckenuttryck som är tillåtna.
Dessa typ av jokerteckenuttryck inkluderar:
- Allt: Inkluderar alla index, inklusive öppna, stängda och dolda (börjar med)
- Öppna: Inkluderar endast öppna index
- Stängd: Inkluderar endast slutna index
- Ingen: Inga jokerteckenuttryck tillåtna.
Slutsats
För den här snabba och enkla guiden diskuterade vi processen med att använda Elasticsearch för att ta bort index från ett kluster. Vi diskuterade också enkla sätt att implementera för att undvika fel för index som inte finns.
Tack för att du läste.