Elastično iskanje

Elasticsearch Reindex na mestu

Elasticsearch Reindex na mestu
Indeksiranje Elasticsearch je pomembna lastnost, ki omogoča hitro in natančno delovanje motorja.

Kot pa veste, ko se podatki preslikajo v indeks, jih ni več mogoče spremeniti. Če želite to narediti, boste morali podatke znova indeksirati s potrebnimi spremembami. Ta postopek lahko povzroči izpad, kar ni zelo dobra praksa, zlasti za storitve, ki so že v obtoku.

Da bi se temu izognili, lahko uporabimo vzdevke indeksa, ki nam omogočajo nemoteno preklapljanje med indeksi.

Kako ustvariti indeks?

Prvi korak je zagotoviti, da imate obstoječi indeks, ki ga želite posodobiti.

Za to vadnico bomo imeli stari in novi indeks, ki bo deloval kot njihova imena.

PUT / old_index /

"nastavitve":
"number_of_shards": 1
,
"vzdevki":
"use_me":
,
"Preslikave":
"lastnosti":
"ime":
"type": "text"
,
"id":
"type": "celo število"
,
"plačano":
"type": "boolean"



Za uporabnike cURL uporabite priloženi ukaz:

curl -XPUT "http: // localhost: 9200 / old_index /" -H 'Content-Type: application / json' -d '"settings": "number_of_shards": 1, "aliases": "use_me" : , "Preslikave": "lastnosti": "ime": "vrsta": "besedilo", "id": "tip": "celo število", "plačano": "vrsta ":" boolean " '

Nato ustvarite nov indeks, ki ga bomo uporabili. Kopirajte vse nastavitve in preslikave iz starega indeksa kot:

PUT / new_index

"nastavitve":
"number_of_shards": 1
,
"vzdevki":
"use_me":
,
"Preslikave":
"lastnosti":
"ime":
"type": "text"
,
"id":
"type": "celo število"
,
"plačano":
"type": "objekt"



Tu je ukaz cURL:

curl -XPUT "http: // localhost: 9200 / new_index" -H 'Content-Type: application / json' -d '"settings": "number_of_shards": 1, "aliases": "use_me": , "Preslikave": "lastnosti": "ime": "vrsta": "besedilo", "id": "tip": "celo število", "plačano": "tip" : "objekt" '

Če imate nastavitve in preslikave v novem indeksu, uporabite API ponovnega indeksa za kopiranje podatkov iz starega indeksa v novega:

OBJAVI _reindex

“Vir”:
"index": "old_index"
,
"dest":
"index": "new_index"

Tu je ukaz cURL:

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

Zdaj kopirajte vzdevek starega indeksa v novega z uporabo _alias api kot:

POST / _vzdevki

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

Tu je ukaz cURL:

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

Ko končate, lahko zdaj odstranite stari indeks in aplikacije bodo uporabljale novi indeks (zaradi vzdevka) brez izpadov.

Zaključek

Ko obvladate koncepte, obravnavane v tej vadnici, boste lahko ponovno indeksirali podatke iz starega indeksa v novega.

Kako namestiti in igrati Doom v Linuxu
Uvod v Doom Serija Doom je nastala v devetdesetih letih po izidu prvotnega Dooma. Bil je takojšen hit in od takrat naprej je serija iger prejela števi...
Vulkan za uporabnike Linuxa
Z vsako novo generacijo grafičnih kart vidimo, da razvijalci iger premikajo meje grafične zvestobe in se približujejo fotorealizmu. A kljub vsem kredi...
OpenTTD vs Simutrans
Ustvarjanje lastne simulacije prevoza je lahko zabavno, sproščujoče in izjemno vabljivo. Zato morate preizkusiti čim več iger, da boste našli tisto, k...