Elastisk sökning

Elasticsearch Reindex på plats

Elasticsearch Reindex på plats
Elasticsearch-indexering är en viktig funktion som gör att motorn kan prestera snabbt och exakt.

Men som du vet är data omöjligt att ändra när data har kartlagts till ett index. För att göra detta måste du indexera om data med de ändringar du behöver. Denna process kan leda till stillestånd, vilket inte är särskilt bra, särskilt för en tjänst som redan är i omlopp.

För att kringgå detta kan vi använda indexalias, som gör att vi kan växla mellan index sömlöst.

Hur man skapar ett index?

Det första steget är att se till att du har ett befintligt index som du vill uppdatera data.

För denna handledning kommer vi att ha ett gammalt och nytt index som fungerar som deras namn.

PUT / old_index /

"inställningar":
"number_of_shards": 1
,
"alias":
"Använd mig":
,
“Mappings”:
"egenskaper":
"namn":
"typ": "text"
,
"id":
"type": "heltal"
,
"betald":
"type": "boolean"



För cURL-användare, använd det bifogade kommandot:

curl -XPUT "http: // localhost: 9200 / old_index /" -H 'Content-Type: application / json' -d '"settings": "number_of_shards": 1, "aliases::" "use_me" : , "Mappings": "properties": "name": "type": "text", "id": "type": "integer", "paid": "type ":" boolean " '

Skapa sedan ett nytt index som vi ska använda. Kopiera alla inställningar och mappningar från det gamla indexet som:

PUT / new_index

"inställningar":
"number_of_shards": 1
,
"alias":
"Använd mig":
,
“Mappings”:
"egenskaper":
"namn":
"typ": "text"
,
"id":
"type": "heltal"
,
"betald":
"type": "object"



Här är cURL-kommandot:

curl -XPUT "http: // localhost: 9200 / new_index" -H 'Content-Type: application / json' -d '"settings": "number_of_shards": 1, "aliases:: " use_me ": , "Mappings": "properties": "name": "type": "text", "id": "type": "integer", "paid": "type" : "objekt" '

Med inställningen och mappningarna i det nya indexet använder du reindex-api för att kopiera data från det gamla indexet till det nya:

POST _reindex

“Källa”:
"index": "old_index"
,
"dest":
"index": "new_index"

Här är cURL-kommandot:

curl -XPOST "http: / localhost: 9200 / _reindex" -H 'Content-Type: application / json' -d '"source": "index": "old_index", "dest": "index" : "new_index" '

Kopiera nu aliaset för det gamla indexet till det nya med _alias api som:

POST / _alias

"insatser" : [
"add": "index": "new_index", "alias": "use_me"
]

Här är cURL-kommandot:

curl -XPOST "http: // localhost: 9200 / _aliases" -H 'Content-Type: application / json' -d '"actions": ["add": "index": "new_index", "alias " : "Använd mig" ]'

När du är klar kan du nu ta bort det gamla indexet och applikationerna kommer att använda det nya indexet (på grund av aliaset) utan stillestånd.

Slutsats

När du väl behärskar de begrepp som diskuteras i den här självstudien kommer du att kunna indexera om data från ett gammalt index till ett nytt på plats.

Mus Markören hoppar eller rör sig slumpmässigt när du skriver in Windows 10
Markören hoppar eller rör sig slumpmässigt när du skriver in Windows 10
Om du upptäcker att muspekaren hoppar eller rör sig på egen hand, automatiskt, slumpmässigt när du skriver in Windows-bärbar dator eller dator, kan nå...
Mus Så här vänder du mus- och styrplattans rullningsriktning i Windows 10
Så här vänder du mus- och styrplattans rullningsriktning i Windows 10
Mus och Pekplattas gör inte bara datoranvändning lättare men effektivare och mindre tidskrävande. Vi kan inte föreställa oss ett liv utan dessa enhete...
Mus Så här ändrar du muspekare och markörstorlek, färg och schema på Windows 10
Så här ändrar du muspekare och markörstorlek, färg och schema på Windows 10
Muspekaren och markören i Windows 10 är mycket viktiga aspekter av operativsystemet. Detta kan också sägas för andra operativsystem, så i sanning är d...