有个人长的像洋葱,走着走着就哭了…….

elasticsearch 数据导入导出问题

Elasticsearch | 作者 这个冬天不太Cool | 发布于2017年12月07日 | 阅读数:7660

想请教各位大神,elasticsearch 如何导入导出数据。比如:
1、elasticsearch 导出到文件,然后再文件到elasticsearch
2、或者elasticsearch 到elasticsearch (不同索引)
我这里有个方法,不知道为什么不可以,哪里错了吗,帮忙看看:
 
我用这种方法不知道为什么不好使:
方法步骤:
1、给现有的索引(test)定义一个 别名(test_alias),并且把现有的索引指向这个别名
2、新建一个索引,定义好新的映射(test2)
3、将别名指向新的索引,并且删除之前索引的执行


代码:
1、POST /test/_alias/test_alias
2、PUT http://localhost:9200/test2
{
"setting":{
"number_of_shards":5,
"number_of_replicas":1
},
"mappings":{
"man":{
"properties":{
"name":{
"type":"string",
"index":"not_analyzed"
},
"age":{
"type":"integer"
},
"sex":{
"type":"string"
},
"money":{
"type":"double"
}
}
}
}
}

3、POST /_aliases
{
"actions": [
{
"remove": {
"index": "test",
"alias": "test_alias"
}
},
{
"add": {
"index": "test2",
"alias": "test_alias"
}
}
]
}
已邀请:

kennywu76 - Wood

赞同来自:

这个过程只是做了别名的切换,并没有做“倒数据”的操作,中间缺少一步reindex的过程。

这个冬天不太Cool - 90后

赞同来自:

我整理了网上的一些导入导出的代码。链接如下:http://www.lrshuai.top/atc/show/91
不对之处,望提出。

puyunjiafly

赞同来自:

具体操作差不多
或者可以直接在kibana上调用es的reindex api操作 使用起来更简单方便 不用写代码。

要回复问题请先登录注册