Elastisk søgning

Elasticsearch Slet indeks Vejledning

Elasticsearch Slet indeks Vejledning
Elasticsearch elsker data; ingen af ​​os kan bestride det. Data kan dog blive overflødige og ubrugelige på et eller andet tidspunkt, hvilket nødvendiggør fjernelse af dem.

Heldigvis, med Elasticsearch, når data bliver overflødige, er alt hvad du skal gøre, adgang til et værktøj til at udføre anmodninger og overføre data over netværket.

Denne hurtige guide viser dig, hvordan du bruger den mægtige Elasticsearch API til at slette dokumenter og indekser.

BEMÆRK: Vi antager, at du har Elasticsearch kørende på dit system, og at du har et værktøj til at stille anmodninger såsom cURL. Vi leverer også rå Kibana-anmodninger, hvis du bruger Kibana-konsollen (anbefales).

Sådan liste indeks?

Hvis du vil slette og indeksere i Elasticsearch, skal du først kontrollere, at den findes, inden du sender DELETE-anmodningen.

Hvis du forsøger at slette et ikke-eksisterende indeks, får du en fejl svarende til den nedenfor vist:

SLET / dette_index_gør_ ikke_eksistere

For cURL-kommando:

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

Sletning af et indeks giver en fejl som:


"fejl":
"hovedårsagen" : [

"type": "index_not_found_exception",
"årsag": "intet sådant indeks [denne_index_for_eksisterer ikke]",
"index_uuid": "_na_",
"ressource.type ":" index_or_alias ",
"ressource.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"

],
"type": "index_not_found_exception",
"årsag": "intet sådant indeks [denne_index_for_eksisterer ikke]",
"index_uuid": "_na_",
"ressource.type ":" index_or_alias ",
"ressource.id ":" this_index_does_not_exist ",
"index": "this_index_does_not_exist"
,
"status": 404

Der er forskellige måder at kontrollere, om der findes et indeks; det bedste er at angive sit navn. For eksempel kan du bruge jokertegn til at matche et bestemt navn.

Eksemplet på nedenstående anmodning viser indekser med navnene te *

GET / te *

CURL-kommandoen er:

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

Denne kommando skal returnere alle indekser, der matcher det specifikke mønster, så du kun kan huske det delvise navn på det indeks, du vil fjerne.


"Midlertidig" :
"aliaser": ,
"kortlægninger": ,
"indstillinger":
"indeks":
"routing":
"tildeling":
"inkluderer":
"_tier_preference": "data_indhold"


,
"number_of_shards": "1",
"provided_name": "temp",
"creation_date": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"version":
"oprettet": "7100299"



,
"temp_1":
"aliaser": ,
"kortlægninger": ,
"indstillinger":
"indeks":
"routing":
"tildeling":
"inkluderer":
"_tier_preference": "data_indhold"


,
"number_of_shards": "1",
"forudsat_navn": "temp_1",
"creation_date": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"version":
"oprettet": "7100299"



,
"temp_2":
"aliaser": ,
"kortlægninger": ,
"indstillinger":
"indeks":
"routing":
"tildeling":
"inkluderer":
"_tier_preference": "data_indhold"


,
"number_of_shards": "1",
"forudsat_navn": "temp_2",
"creation_date": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"version":
"oprettet": "7100299"




En anden måde er at tilføje parameteren ignore_unavailable til anmodningen. For eksempel:

SLET / ignorer_me?ignorere_unavailable = sand
For cURL-brugere:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
krølle -XDELETE “http: // localhost: 9200 / ignore_me?ignorere_unavailable = sand ”

Sådan slettes en  Indeks?

Når du har det indeks, du vil fjerne fra Elasticsearch, skal du bruge DELETE-anmodningen efterfulgt af indeksnavnet.

Den generelle syntaks er:

SLET /

Indeksnavnet kan være et specifikt indeks eller et jokertegn, der vælger en gruppe indekser. Sørg for at bruge jokertegn korrekt; Ellers kan du fjerne de forkerte indekser.

BEMÆRK: Sletning af Elasticsearch-indekser ved hjælp af aliaser er ikke tilladt.

Overvej nedenstående eksempelanmodning, der fjerner temp_1-indekset:

SLET / temp_1

For cURL-kommando:

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

Udførelse af denne kommando skal svare med et JSON-objekt, hvilket indikerer, at indekset er fjernet.


“Anerkendt”: sandt

Elasticsearch er smart nok til at vide, at du ved et uheld kan fjerne indekser. Derfor kan du indstille, hvilke typer wildcard-udtryk der er tilladt.

Disse typer wildcards-udtryk inkluderer:

  • Alle: Inkluderer alle indekser, inklusive åbne, lukkede og skjulte (startende med)
  • Åben: Inkluderer kun åbne indekser
  • Lukket: Inkluderer kun lukkede indekser
  • Ingen: Ingen wildcard-udtryk er tilladt.

Konklusion

Til denne hurtige og enkle vejledning diskuterede vi processen med at bruge Elasticsearch til at slette indekser fra en klynge. Vi diskuterede også enkle måder, du kan implementere for at undgå fejl for indekser, der ikke findes.

Tak fordi du læste.

Sådan registreres og streames din gaming-session på Linux
Tidligere blev spil kun betragtet som en hobby, men med tiden oplevede spilindustrien en enorm vækst med hensyn til teknologi og antallet af spillere....
Bedste spil at spille med håndsporing
Oculus Quest introducerede for nylig den gode idé om håndsporing uden controllere. Med et stadigt stigende antal spil og aktiviteter, der udfører supp...
Sådan vises OSD-overlay i fuldskærms Linux-apps og -spil
Afspilning af fuldskærmsspil eller brug af apps i distraktionsfri fuldskærmstilstand kan afskære dig fra relevante systemoplysninger, der er synlige i...