0

我正在使用 Lucene 索引具有相对大量(数十万)动态创建/更新/删除文件的目录。我每个文件有一个 Lucene 文档,文件名是文档中的字段之一。

    Document doc = new Document();
    doc.add(new StringField("id", file.getName(), Store.YES));
    doc.add(new LongField("stamp", file.lastModified(), Store.YES));
    doc.add(new StringField("path", file.getAbsolutePath(), Store.YES));

我如何(越快越好)迭代索引中引用文件系统上丢失的文件的所有文档?

4

1 回答 1

1

除非有关文件是否丢失的信息以某种方式直接存储在索引中,否则我没有看到比简单地迭代每个文档(使用 a MatchAllDocsQuery)并检查每个文档是否存在使用File.exists().

于 2013-09-23T16:32:34.040 回答