0

首先要说:我使用elasticsearch 2.0并安装了delete-by-query plugin.

使用此插件,我删除了部分文档。删除后,文档被标记为已删除,您再也找不到它们了。要从磁盘中删除文档,您必须使用optimizeforcemerge 查看此处

我不会从磁盘中删除文件。我的问题是,几天后我意识到我删除了一些导入文件。

所以我的问题是:我可以恢复标记的文件吗?

4

1 回答 1

0

不,您无法恢复标记的文档。

您不必调用forcemerge以确保从磁盘中删除文档(它基本上用于优化索引,即如果您有很多段,那么您调用forcemerge以减少段数并加快搜索速度。另一个用例是如果您删除大量文档并想快速回收磁盘空间,然后调用forcemerge

由于进程在后台进行,文档marked deleted将从磁盘中删除。segment merging

您还可以检查您有多少已删除的文档indices segments api

本篇博客对理解ES的删除过程有很大帮​​助

于 2015-12-11T15:03:47.680 回答