我使用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));
如何(越快越好)迭代索引中的所有文档,引用文件系统上缺失的文件?
除非关于文件是否丢失的信息以某种方式直接存储在索引中,否则我看不到比简单地迭代每个文档(使用< code > matchaldocsquery )并使用< code>File.exists()检查每个文档是否存在更快的方法。