聆听--风雨
2017-12-22 13:27
采纳率: 100%
浏览 7.3k

elasticsearch 如何批量删除重复数据?

elasticsearch中录入了许多重复数据,比如说我有username和password两个字段,elasticsearch中拥有许多username和password两个字段都一样但是id不一样的记录,该如何删除重复的数据只保留一条呢?在线等,挺急的。如下图
图片说明
目前共有一亿八千多万document,重复的估计得有个几千万
图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • Cry_King 2017-12-22 17:18
    已采纳

    可以自己写个工具,遍历所有数据,之后把当前数据的过滤条件拿出来,再进行组合查询,如果count>1,则删除留下一个。当然机器性能好可能会过滤快点

    已采纳该答案
    打赏 评论
  • threenewbee 2017-12-22 13:32

    应该把username作为主键,而不是另外搞id

    打赏 评论
  • Cry_King 2017-12-22 17:19

    当然在,组合查询那可以使用deleteByquery的插件,会提升很大的性能

    打赏 评论
  • ccjjtt20 2017-12-23 02:10
    打赏 评论

相关推荐 更多相似问题