write down,forget

mongodb-river重新同步数据

<Category: Diving Into ElasticSearch> 查看评论

elasticsearch的mongodb-river没有提供对一个库重新同步数据的方法,在很多情况下我们需要这么做,比如修改了elasticsearch的mapping,这个时候,就只能重建数据,所以需要重新从mongodb里面pull数据,然后重建索引,怎么办?

其实我们只需要清除mongodb-river记录的同步信息就行了,然后mongodb就能自动重新初始化,就跟新安装的一样。

1.第一步,查看那些信息需要删除,所有的信息都在_river索引里面

返回结果,类似这样的,就是记录数据同步的位置信息了

怎么处理呢?干掉就行,这个记录其实也就是一条elasticsearch的索引文档数据,找到index,type,id删除就行了。
我这里全部删除了,你可别照着来

第二步,目标索引如果需要修改mapping,删除数据,等等
第三步,重新创建river配置信息,啥,没有备份,慢慢哭去吧

到这里,数据应该就可以马上看到了,速度非常快。

本文来自: mongodb-river重新同步数据