solr query-获取结果而不扫描文件

Daf*_*edy 5 indexing performance solr

我想执行一个solr查询,只获得我定义的uniquKey.
文档非常大,因此定义fl ='my_key'的速度不够快 - 所有匹配的文档仍然被扫描,查询可能需要数小时(即使搜索本身很快 - numFound需要几秒钟才能返回).
我应该提到存储所有数据,并且不能创建新索引.

我的一个想法是获取结果的docIds并将它们映射到代码中的my_key.
我使用fl = [docid],认为它不需要扫描来获取此信息,但它仍然需要很长时间才能返回.

有更好的方法来获取docIds吗?
或者一种在不重新索引的情况下取消存储某些字段的方法?
或者在不扫描所有领域的情况下以完全不同的方式获得结果?

谢谢,

Dafna先生

Ale*_*dim 0

抱歉,唯一的方法是将您的庞大文档分成多个文档。我不明白如何只匹配您指定的字段而不管文档。这不是 Lucene 的工作方式。

人们可以制作一份仅使用查询所需的索引字段的文档,以使工作变得更容易,或者根据所需的查询来破坏文档。或者只是添加具有这些新查询所需结构的另一个文档。由你决定。