lucene搜索功能在大尺寸文档中工作吗?

时间:2010-04-27 13:28:51

标签: search lucene

使用lucene进行搜索时遇到问题。

首先,在lucene索引函数中,它适用于大尺寸文档。例如.pst文件,outlook邮件存储。它可以构建索引文件,包括.pst的所有信息。唯一的问题是有时很大,包括很多单词。

所以当我使用lucene进行搜索时,它只能处理这个索引文件的前面部分,如果一个单词出现在索引文件的后面部分,它就找不到这个单词,结果没有命中。但是当我在调试和搜索每个部分时以愚蠢的方式将这个索引文件分成几个部分时,它可以很好地工作。

所以我想知道如何分离索引文件,搜索的大小应该是多少?

欢呼并等待4回复。

+++++++++++++++++++++++++++++++++++++++++++++++ +++

嗨,在那里,按照Coady siad,我将长度设置为最大2 ^ 31-1。但搜索结果仍然不能包含我想要的内容。 简单地说,我将doc word转换为string array []进行分析, 一个doc word有79680个单词,包括空格和任何符号。 当我搜索某个单词时,它只返回300个计数,实际上它有超过300个结果。同样的原因,当我在文档的后面部分搜索一个单词时,它也找不到。 //////////////设定长度

idexwriter.SetMaxFieldLength(2147483647);

////////////////////搜索

IndexSearcher searcher = new ndexSearcher(Program.Parameters [“INDEX_LOCATION”]。ToString()); Hits hits = searcher.Search(query);

这是我的代码,和其他人一样。当我需要计算文档中的每个单词命中数时,我发现了问题。所以我也发现它无法在doc的后面搜索单词。

请帮我找一下,在某处找到搜索者的长度吗?你是如何遇到这个问题的。

1 个答案:

答案 0 :(得分:5)

如果您可以从文档的正面获取搜索结果,则文档可能比IndexWriter's maxFieldLength长。尝试将其设置为更高的数字(默认值为10000)。