Elasticsearch中复制一个索引数据到新的索引中

这篇具有很好参考价值的文章主要介绍了Elasticsearch中复制一个索引数据到新的索引中。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题

我有时候,需要调试一个已经存在的ES索引,需要从已有的索引复制数据到新的索引中去。

解决

这里我借助一个GUI工具,来解决这个问题,底层它是使用Reindex的API实现索引数据复制的。利用Reindex API搞不定这个事情,原索引mapping结构不会被复制。
# 步骤
选中已存在的redix菜单,准备开始负责索引数据,如下图:
es 抽取部分数据到另一个索引,elasticsearch,大数据,搜索引擎,index
输入将要新建的索引名,开始索引复制,如下图:
es 抽取部分数据到另一个索引,elasticsearch,大数据,搜索引擎,index
开始索引数据复制,如下图:
es 抽取部分数据到另一个索引,elasticsearch,大数据,搜索引擎,index
等待一段时间,就可以完成索引复制了。
# 检查
利用count的api检查一下文档的数量,看看是否都复制完了。如下图:
es 抽取部分数据到另一个索引,elasticsearch,大数据,搜索引擎,index
通过检查新旧两个索引的文档总数,可以知道我们复制基本成功了。

总结

有个Elasticsearch的GUI程序还是挺方便的。虽然,利用Elasticvue工具看似是把数据复制过来了,但是,新生的索引,与旧的索引的mapping结构并不一致,后面利用clone API进行索引复制。

Clone API进行索引复制

PUT old_index/_settings
{
  "settings": {
    "index.blocks.write": false
  }
}

阻塞旧索引写,准备开始克隆旧索引:

POST old_index/_clone/new_index

这样利用clone api,不仅把文档数据复制了一份,而且,还把旧索引mapping结构复制一份给新索引。文章来源地址https://www.toymoban.com/news/detail-834828.html

参考:

  • elasticvue
  • Reindex API
  • Count API
  • Clone index API

到了这里,关于Elasticsearch中复制一个索引数据到新的索引中的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包