首先说:我使用elasticsearch 2.0
并安装了delete-by-query plugin
。
使用此插件我删除了部分文档。删除后,文档被标记为已删除,您将无法再找到它们。要从磁盘中删除文档,您必须使用optimize
或forcemerge
see here。
我没有从磁盘中删除文档。我的问题是,几天后我才意识到我删除了一些importend文件。
所以我的问题是:我可以恢复已标记的文档吗?
答案 0 :(得分:0)
不,您无法恢复已标记的文档。
您不必致电forcemerge
以确保从磁盘中删除文档(它主要用于优化索引,即如果您有很多细分,则调用forcemerge
来减少分段数量和搜索速度更快。另一个用例是如果你删除了很多文件并希望快速回收磁盘空间,那么你可以调用forcemerge
)
文档marked deleted
将在后台进行segment merging
进程时从磁盘中删除。
您还可以使用indices segments api
This blog将帮助您理解ES的删除过程