Search solr api访问文档字段需要花费大量时间

Search solr api访问文档字段需要花费大量时间,search,solr,solr4,requesthandler,Search,Solr,Solr4,Requesthandler,我正在尝试访问自定义请求处理程序中的字段。对于每个文档,我都是这样访问它的: Document doc; doc = reader.document(id); DocFields = doc.getValues("state"); solr中大约有60万份文档。对于在所有文档上运行的查询,需要65秒以上的时间 我也尝试了solrindexearcher.doc方法,但也需要大约60秒 删除上述代码行会将qtime缩短到毫秒。但是,我需要为我的算法访问该字段 有没有更优化的方法来实现这一点?一次

我正在尝试访问自定义请求处理程序中的字段。对于每个文档,我都是这样访问它的:

Document doc;
doc = reader.document(id);
DocFields = doc.getValues("state");
solr中大约有60万份文档。对于在所有文档上运行的查询,需要65秒以上的时间

我也尝试了
solrindexearcher.doc
方法,但也需要大约60秒

删除上述代码行会将qtime缩短到毫秒。但是,我需要为我的算法访问该字段


有没有更优化的方法来实现这一点?

一次查询一个文档的速度似乎很慢。
如果需要查询所有文档,请尝试查询
*:*
(而不是询问特定id),然后迭代结果。

我已经在查询中使用了
*:*
。在“自定义请求处理程序”中,我需要为每个文档指定一个特定的字段值来实现我的算法。如上所述,为每个文档获取该字段值的函数调用花费了太多时间。您正在代码中查询特定id。您不能在Java代码中迭代Solr返回给您的内容吗?不,我不能。正如我已经提到的,我需要在自定义处理程序中使用它来在文档上运行我的algo。在自定义处理程序中,solr仅返回文档的Id和分数。我正在尝试访问另一个字段(每个文档可能有不同的值),这是algo工作所必需的。请发布您的自定义处理程序和周围的Java代码。