Solr 单列分页

Solr 单列分页,solr,pagination,Solr,Pagination,我是SOLR的新手,我使用SOLRQuery查询数据库并返回下载的数据。返回的行数以百万为单位 这种流动有点像 在GUI中,单击下载按钮>通过REST,java代码使用SOLRQuery获取数据并将其返回到GUI,在GUI中数据作为文件下载 由于行数太多,我不太担心获取数据和下载文件所需的时间。那么,是否需要在SOLR查询级别进行分页?我的意思是我应该使用SOLR查询的深度分页来提高性能吗? 我添加了如下代码: HttpSolrServer searcherServer = new HttpSo

我是SOLR的新手,我使用SOLRQuery查询数据库并返回下载的数据。返回的行数以百万为单位

这种流动有点像 在GUI中,单击下载按钮>通过REST,java代码使用SOLRQuery获取数据并将其返回到GUI,在GUI中数据作为文件下载

由于行数太多,我不太担心获取数据和下载文件所需的时间。那么,是否需要在SOLR查询级别进行分页?我的意思是我应该使用SOLR查询的深度分页来提高性能吗? 我添加了如下代码:

HttpSolrServer searcherServer = new HttpSolrServer(url);
SolrQuery solrQuery = new SolrQuery();
solrQuery.setRequestHandler("/export");
solrQuery.setQuery(query);
solrQuery.set("fl","field1");
solrQuery.setSort(SolrQuery.SortClause.asc("field1"));
QueryResponse resp = searcherServer.query(solrQuery);

在Schema.xml中,我向字段1添加了docValues=“true”,在solrconfig.xml中,我按照这里的给定添加了一个用于导出结果集的专用请求处理程序—
/export
请求处理程序。这是针对以下情况进行的调整:您将返回数百万行,并希望返回完整的点击集

export requestHandler有一些要求:

正在排序和导出的所有字段必须设置为true

所有查询必须包括sort和fl参数,否则查询将返回错误


wiki页面上详细介绍了请求处理程序。

您自己尝试过吗?您正在设计导出吗?分页是由一个人一页一页地完成的不同的事情。我不知道有多少用户手动浏览了数百万页。是的,我正在设计export Kinda,我会尝试一下,并更新它是否对我有帮助。非常感谢。我在客户端使用SOLR查询(这是一个java代码)。我试图使用导出,但我想我遗漏了一些东西。它给了我一个例外“客户端发送的请求在语法上不正确({msg=XMLWriter不支持版本:2,code=400})”有什么建议吗?我已经添加了代码。请让我知道我错过了什么。请先直接在您的浏览器中尝试请求(或从
curl
或类似的内容),查看发生了什么。它也不是
dataValues
,正确的设置是
docValues
,需要重新索引。您也不必在solrconfig中添加任何内容,只要您使用的是最新版本的Solr(其中,
/export
处理程序是必需的)。如果您强制将
xsort
作为输出格式,SolrJ可能不会理解这一点。让它使用自己的
wt
定义(可能是javabin)。是的,它是docValues。我在文件中正确地提到了它。
http://localhost:8983/solr/core_name/export?q=my-query&sort=severity+desc,timestamp+desc&fl=severity,timestamp,msg