天天看點

使用Elasticdump導出和導入Elasticsearch資料

作者:吉祥莊鋼鐵俠

先要做的是先安裝elasticdump。elasticdump的包在Node包管理器中,是以安裝時将使用npm。

使用Elasticdump導出和導入Elasticsearch資料

安裝成功後,elasticdump可以作為一個指令被調用,要通路elasticdump的功能可以添加幫助指令(-help)。

使用Elasticdump導出和導入Elasticsearch資料

預設情況下,elasticdump可以通過轉換為json導出資料,也可以通過elasticsearch API直接在elasticsearch之間互相移動。

要将elasticsearch中的資料導出為json,你可以使用以下指令。

出口資料映射

要導出映射資料,你可以使用以下指令。

elasticdump --input="http://elastic:[email protected]:9200/*" --output=mapping.json --type=mapping
           
使用Elasticdump導出和導入Elasticsearch資料

出口資料索引

要導出索引資料,你可以使用以下指令。

elasticdump --input="http://elastic:[email protected]:9200/*" --output=data.json --type=data
           
使用Elasticdump導出和導入Elasticsearch資料

導入資料 Elasticsearch

預設情況下,elasticsearch有一個菜單,可以通過其網站界面導入資料,但它最多隻能導入100mb的資料,最多隻能導入1GB的資料(通過在堆棧管理菜單->Kibana->進階設定中改變大小)。

使用Elasticdump導出和導入Elasticsearch資料
使用Elasticdump導出和導入Elasticsearch資料

對于更大的資料,你可以通過颠倒指令中的輸入和輸出配置來使用elasticdump。

建議先建立一個索引,然後輸入導出的資料結構映射,以防止上傳原始資料時可能出現的錯誤。

建立索引和向elasticsearch添加映射可以使用kibana控制台完成。

使用Elasticdump導出和導入Elasticsearch資料

然後要導入資料,可以用指令來完成。

elasticdump --input="data.json" --output="http://elastic:[email protected]:9200/nama-index" --type=data
           
使用Elasticdump導出和導入Elasticsearch資料

接下來的方法也可以通過使用以下指令直接從elasticsearch導出資料到其他elasticsearch。

elasticdump --input="http://elastic:@10.10.0.39:9200/*" --output="http://elastic:[email protected]:9200/nama-index" --type=data
           
使用Elasticdump導出和導入Elasticsearch資料

繼續閱讀