1,删索引时如果解锁,会不会有问题?
IndexReader reader = IndexReader.open(directory);
if (IndexReader.isLocked(directory)) {
IndexReader.unlock(directory);
}
reader.deleteDocuments(term);
reader.close();
2,到底是reader.deleteDocuments(term)还是writer.deleteDocuments(term)
3,writer.setUseCompoundFile(true)
创建索引库时,会合并多个 Segments 文件到一个 .cfs 中。此方式有助于减少索引文件数量,减少同时打开的文件数量。
可以使用 CompoundFileReader 查看 .cfs 文件内容。
IndexReader reader = IndexReader.open(directory);
if (IndexReader.isLocked(directory)) {
IndexReader.unlock(directory);
}
reader.deleteDocuments(term);
reader.close();
2,到底是reader.deleteDocuments(term)还是writer.deleteDocuments(term)
3,writer.setUseCompoundFile(true)
创建索引库时,会合并多个 Segments 文件到一个 .cfs 中。此方式有助于减少索引文件数量,减少同时打开的文件数量。
可以使用 CompoundFileReader 查看 .cfs 文件内容。
CompoundFileReader reader = new CompoundFileReader(FSDirectory.GetDirectory("y:\\index", false), "_1oa.cfs");
foreach (string filename in reader.List())
{
Console.WriteLine(filename);
}
foreach (string filename in reader.List())
{
Console.WriteLine(filename);
}
本文探讨了Lucene中索引操作的过程,包括删除文档的方法及索引解锁的问题。此外,还介绍了如何通过设置复合文件来优化索引结构,减少文件数量,并提供了查看复合文件内容的具体方法。
2174

被折叠的 条评论
为什么被折叠?



