先要做的是先安裝elasticdump。elasticdump的包在Node包管理器中,是以安裝時将使用npm。
安裝成功後,elasticdump可以作為一個指令被調用,要通路elasticdump的功能可以添加幫助指令(-help)。
預設情況下,elasticdump可以通過轉換為json導出資料,也可以通過elasticsearch API直接在elasticsearch之間互相移動。
要将elasticsearch中的資料導出為json,你可以使用以下指令。
出口資料映射
要導出映射資料,你可以使用以下指令。
elasticdump --input="http://elastic:[email protected]:9200/*" --output=mapping.json --type=mapping
出口資料索引
要導出索引資料,你可以使用以下指令。
elasticdump --input="http://elastic:[email protected]:9200/*" --output=data.json --type=data
導入資料 Elasticsearch
預設情況下,elasticsearch有一個菜單,可以通過其網站界面導入資料,但它最多隻能導入100mb的資料,最多隻能導入1GB的資料(通過在堆棧管理菜單->Kibana->進階設定中改變大小)。
對于更大的資料,你可以通過颠倒指令中的輸入和輸出配置來使用elasticdump。
建議先建立一個索引,然後輸入導出的資料結構映射,以防止上傳原始資料時可能出現的錯誤。
建立索引和向elasticsearch添加映射可以使用kibana控制台完成。
然後要導入資料,可以用指令來完成。
elasticdump --input="data.json" --output="http://elastic:[email protected]:9200/nama-index" --type=data
接下來的方法也可以通過使用以下指令直接從elasticsearch導出資料到其他elasticsearch。
elasticdump --input="http://elastic:@10.10.0.39:9200/*" --output="http://elastic:[email protected]:9200/nama-index" --type=data