Elastisk søk

Elasticsearch Slett indeksveiledning

Elasticsearch Slett indeksveiledning
Elasticsearch elsker data; ingen av oss kan bestride det. Imidlertid kan data bli overflødige og ubrukelige på et eller annet tidspunkt, noe som nødvendiggjør fjerning.

Heldigvis, med Elasticsearch, når data blir overflødige, er alt du trenger å gjøre å få tilgang til et verktøy for å utføre forespørsler og overføre data over nettverket.

Denne hurtigveiledningen viser deg hvordan du bruker det mektige Elasticsearch API til å slette dokumenter og indekser.

MERK: Vi antar at du har Elasticsearch på systemet ditt og at du har et verktøy for å komme med forespørsler som cURL. Vi leverer også rå Kibana-forespørsler hvis du bruker Kibana-konsollen (anbefalt).

Hvordan liste indeks?

Hvis du vil slette og indeksere i Elasticsearch, må du først bekrefte at den eksisterer før du sender DELETE-forespørselen.

Hvis du prøver å slette en ikke-eksisterende indeks, får du en feil som ligner på den som er vist nedenfor:

SLETT / denne_indeksen_eksisterer ikke

For CURL-kommando:

krøll -XDELETE “http: // localhost: 9200 / this_index_does_not_exist”

Slette en indeks vil gi en feil som:


"feil":
"Opprinnelig årsak" : [

"type": "index_not_found_exception",
"reason": "ingen slik indeks [this_index_does_not_exist]",
"index_uuid": "_na_",
"ressurs.type ":" index_or_alias ",
"ressurs.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"

],
"type": "index_not_found_exception",
"reason": "ingen slik indeks [this_index_does_not_exist]",
"index_uuid": "_na_",
"ressurs.type ":" index_or_alias ",
"ressurs.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
,
"status": 404

Det er forskjellige måter å sjekke om det finnes en indeks på; det beste er å liste opp navnet. For eksempel kan du bruke jokertegn for å matche et bestemt navn.

Eksempelforespørselen nedenfor viser indekser med navn te *

FÅ / te *

CURL-kommandoen er:

krøll -XGET “http: // localhost: 9200 / te *”

Denne kommandoen skal returnere alle indeksene som samsvarer med det spesifikke mønsteret, slik at du bare kan huske det delvise navnet på indeksen du vil fjerne.


"temp":
"aliaser": ,
"mappings": ,
"innstillinger":
"indeks":
"ruting":
"tildeling" :
"inkluderer":
"_tier_preference": "data_innhold"


,
"number_of_shards": "1",
"provided_name": "temp",
"creation_date": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"versjon":
"opprettet": "7100299"



,
"temp_1":
"aliaser": ,
"mappings": ,
"innstillinger":
"indeks":
"ruting":
"tildeling" :
"inkluderer":
"_tier_preference": "data_innhold"


,
"number_of_shards": "1",
"provided_name": "temp_1",
"creation_date": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"versjon":
"opprettet": "7100299"



,
"temp_2":
"aliaser": ,
"mappings": ,
"innstillinger":
"indeks":
"ruting":
"tildeling" :
"inkluderer":
"_tier_preference": "data_innhold"


,
"number_of_shards": "1",
"provided_name": "temp_2",
"creation_date": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"versjon":
"opprettet": "7100299"




En annen måte er å legge til parameteren ignore_unavailable i forespørselen. For eksempel:

SLETT / ignorere meg?ignore_unavailable = true
For CURL-brukere:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
krøll -XDELETE “http: // localhost: 9200 / ignore_me?ignore_unavailable = true ”

Hvordan slette en  Indeks?

Når du har indeksen du vil fjerne fra Elasticsearch, bruker du DELETE-forespørselen etterfulgt av indeksnavnet.

Den generelle syntaksen er:

SLETT /

Indeksnavnet kan være en bestemt indeks eller et jokertegn som velger en gruppe indekser. Sørg for å bruke jokertegn riktig; Ellers kan du fjerne feil indekser.

MERK: Slette Elasticsearch-indekser med aliaser er ikke tillatt.

Tenk på eksempelforespørselen nedenfor som fjerner temp_1-indeksen:

SLETT / temp_1

For cURL-kommando:

krølle -XDELETE “http: // localhost: 9200 / temp_1”

Å utføre denne kommandoen skal svare med et JSON-objekt, noe som indikerer vellykket fjerning av indeksen.


“Erkjent”: sant

Elasticsearch er smart nok til å vite at du kan fjerne indekser ved et uhell. Derfor kan du angi hvilke typer wildcard-uttrykk som er tillatt.

Disse typene jokertegnuttrykk inkluderer:

  • Alle: Inkluderer alle indekser, inkludert åpne, lukkede og skjulte (starter med)
  • Åpen: Inkluderer bare åpne indekser
  • Lukket: Inkluderer bare lukkede indekser
  • Ingen: Ingen wildcard-uttrykk er tillatt.

Konklusjon

For denne raske og enkle veiledningen diskuterte vi prosessen med å bruke Elasticsearch for å slette indekser fra en klynge. Vi diskuterte også enkle måter du kan implementere for å unngå feil for indekser som ikke eksisterer.

Takk for at du leser.

Installer det siste OpenRA-strategispillet på Ubuntu Linux
OpenRA er en Libre / Free Real Time Strategy-spillmotor som gjenskaper de tidlige Westwood-spillene som den klassiske Command & Conquer: Red Alert. Di...
Installer nyeste Dolphin Emulator for Gamecube & Wii på Linux
Dolphin Emulator lar deg spille de valgte Gamecube- og Wii-spillene dine på Linux Personal Computers (PC). Som en fritt tilgjengelig og åpen kildekod...
Hvordan bruke GameConqueror Cheat Engine i Linux
Artikkelen dekker en guide om bruk av GameConqueror-juksemotoren i Linux. Mange brukere som spiller spill på Windows bruker ofte "Cheat Engine" -appli...