Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Solr 按id搜索文档非常慢_Solr_Cassandra_Solandra - Fatal编程技术网

Solr 按id搜索文档非常慢

Solr 按id搜索文档非常慢,solr,cassandra,solandra,Solr,Cassandra,Solandra,我的文档有一个名为“doc_id”的id字段,该字段用以下属性声明: <field name="doc_id" type="long" indexed="true" stored="true" required="true" /> 此id用标记标记为唯一密钥 我试图一次加载多个文档,在请求f.e.doc_id:(235163256,…,10473)中给出它们的id 查询中的标识符计数从不大于100。但是,存储中的文档越多,执行此查询所需的时间就越长。我认为这类似于SQL查询f.

我的文档有一个名为“doc_id”的id字段,该字段用以下属性声明:

<field name="doc_id" type="long" indexed="true" stored="true" required="true" />

此id用标记标记为唯一密钥

我试图一次加载多个文档,在请求f.e.doc_id:(235163256,…,10473)中给出它们的id

查询中的标识符计数从不大于100。但是,存储中的文档越多,执行此查询所需的时间就越长。我认为这类似于SQL查询f.e.“select doc where doc_id in(…)”但如果索引位于“doc_id”上,那么执行时间应该是恒定的,不是吗?那么,为什么在我添加了越来越多的文档后,solandra的速度会变慢呢

我与索兰德拉合作(Solr3.4+Cassandra1.0.3)


注意,T

由于ID是唯一的,所以不要在其上搜索。搜索性能将始终较慢。
尝试使用筛选查询,例如
fq=doc\u id:235

这将允许Solr使用,并为您提供更高的性能

使用(Solr>=4.0)


我尝试了两种选择:1<代码>q=文档id:(“…”,“…”)2
q=*:*&fq=doc_id:(“…”、“…”、“…”)
-这要慢50%。关于如何通过idSolr 4.10和Heliosearch.07改进搜索性能的任何想法,都添加了一个术语查询(或术语过滤器),以更有效地匹配单个字段中的多个术语。
http://localhost:8983/solr/get?ids=1,2