我有一个提供程序,通过SOLR Query使用XML向我提供信息。为了提取数据,我使用SOLR使用不同的url查询。关键是我想在我们的数据库中存储超过30.000.000行。
为了获取我使用此SOLR查询的所有数据
http://provider.com/query?q=colour%3A%20(red)&group.field=manufacturer&format=xml&group.limit=1 此查询为我提供了1.311.707结果。
<products>
<grouped>
<matches>1311707</matches>
<groups>
<item>
<doclist>
<start>0</start>
<numFound>36242</numFound>
<docs>
如果我想提取所有数据(匹配)http://provider.com/query?q=colour%3A%20(red)&group.field=manufacturer&format=xml&group.limit=1311707
我收到此错误:
<status_code>500</status_code>
<message/>
<error>Internal Server Error</error>
我确信这是因为group.limit太大了。
我如何收到所有比赛?如何用SOLR查询大量结果?
非常感谢
MIkpa
使用此请求:
查询q =彩色%3A%20(红色)及FQ =制造商:[%27%27%20TO%20 *]&安培;基团=真安培;行= 1&安培;起始= 1&安培; group.field =制造商的安培; group.offset = 800安培; group.limit = 8&安培;格式= XML
值&amp; start增加groupValue,&amp; rows是显示的groupValue的数量,&amp; group.limit是每个查询中显示的数量。如果我尝试使用&amp; group.limit = 160142我收到内部服务器错误。 所以重点是,我怎么能拥有所有的160.142?
如果我增加“group.offset = 800”或900等,则值始终相同。如何移动?
内的偏移量<products>
<grouped>
<matches>1311707</matches>
<groups>
<item>
<doclist>
<start>0</start>
<numFound>160142</numFound>
<docs>
<item>...</item>
<item>...</item>
<item>...</item>
<item>...</item>
<item>...</item>
<item>...</item>
<item>...</item>
<item>...</item>
</docs>
</doclist>
<groupValue>Fiat</groupValue>
</item>
</groups>
谢谢
答案 0 :(得分:0)
尝试使用start
和limit
参数对结果行进行分页。
尝试使用group.offset
和group.limit
对组中的结果进行分页。