Căutare elastică

Elasticsearch Reindex la locul său

Elasticsearch Reindex la locul său
Indexarea Elasticsearch este o caracteristică importantă care permite motorului să funcționeze rapid și precis.

Cu toate acestea, după cum știți, odată ce datele sunt mapate într-un index, acestea sunt nemodificabile. Pentru a face acest lucru, va trebui să reindexați datele cu modificările de care aveți nevoie. Acest proces poate duce la perioade de nefuncționare, ceea ce nu este o practică foarte bună, în special pentru un serviciu care este deja în circulație.

Pentru a ocoli acest lucru, putem folosi aliasuri de index, care ne permit să trecem între indici fără probleme.

Cum se creează un index?

Primul pas este să vă asigurați că aveți un index existent pe care doriți să îl actualizați.

Pentru acest tutorial, vom avea un index vechi și nou, care va funcționa ca numele lor.

PUT / old_index /

„setări”:
„number_of_shards”: 1
,
„pseudonime”:
"Foloseste-ma":
,
„Mapări”:
„proprietăți”:
"Nume":
„tip”: „text”
,
„id”:
„tip”: „întreg”
,
„plătit”:
„tip”: „boolean”



Pentru utilizatorii CURL, utilizați comanda anexată:

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 " '

Apoi, creați un nou index pe care îl vom folosi. Copiați toate setările și mapările din vechiul index ca:

PUT / new_index

„setări”:
„number_of_shards”: 1
,
„pseudonime”:
"Foloseste-ma":
,
„Mapări”:
„proprietăți”:
"Nume":
„tip”: „text”
,
„id”:
„tip”: „întreg”
,
„plătit”:
„tip”: „obiect”



Iată comanda cURL:

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": "întreg", "paid": "type" : "obiect" '

Având setarea și mapările în noul index, utilizați reindex API pentru a copia datele din vechiul index în cel nou:

POST _reindex

"sursă":
„index”: „index_vechi”
,
"dest":
"index": "new_index"

Iată comanda cURL:

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

Acum, copiați aliasul vechiului index în cel nou folosind _alias api ca:

POST / _aliases

„acțiuni”: [
"add": "index": "new_index", "alias": "use_me"
]

Iată comanda cURL:

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

Odată finalizat, puteți elimina acum vechiul index, iar aplicațiile vor folosi noul index (datorită aliasului) fără perioade de nefuncționare.

Concluzie

Odată ce stăpâniți conceptele discutate în acest tutorial, veți fi în măsură să reindexați datele dintr-un index vechi în unul nou.

Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...
0 A.D. Tutorial
Out of the many strategy games out there, 0 A.D. manages to stand out as a comprehensive title and a very deep, tactical game despite being open sourc...
Unity3D Tutorial
Introduction to Unity 3D Unity 3D is a powerful game development engine. It is cross platform that is it allows you to create games for mobile, web, d...