Apache 将索引从Solr导出到文件,字段对于FieldCache是非法的

Apache 将索引从Solr导出到文件,字段对于FieldCache是非法的,apache,solr,solr-schema,Apache,Solr,Solr Schema,我正在尝试将Solr索引导出到JSON文件。但是,在我关心的两个字段中,其中一个(字段A)是多值的,另一个(字段B)既没有索引,也没有文档值(此字段可能缺少架构)。这两种情况都会导致错误,即不能在… 这些字段的架构位于远程服务器上,不应更改。那么,是否可以导出包含这些字段的索引?谢谢大家! p、 如果可能的话,我也希望fl,因为这两个字段都是我需要的。在这种情况下,您可能希望自己编写一个导出脚本,以加快检索速度(要使用/export功能,字段必须启用docValues) 有几种语言的示例用于获取

我正在尝试将Solr索引导出到JSON文件。但是,在我关心的两个字段中,其中一个(字段
A
)是
多值的
,另一个(字段
B
既没有索引,也没有文档值
(此字段可能缺少架构)。这两种情况都会导致错误,即
不能在…

这些字段的架构位于远程服务器上,不应更改。那么,是否可以导出包含这些字段的索引?谢谢大家!


p、 如果可能的话,我也希望
fl
,因为这两个字段都是我需要的。

在这种情况下,您可能希望自己编写一个导出脚本,以加快检索速度(要使用/export功能,字段必须启用docValues)

有几种语言的示例用于获取光标标记页面上的所有文档,它们几乎可以直接应用到结果集中(您必须自己添加JSON编写)


确保使用相当大的
r
值,以减少往返次数。

#
在URL中具有特殊意义。您确定包含该值之后的内容吗?为什么你的问题看起来不正确?哪些内容不应该(或相反)?@MatsLindh感谢您指出这一点。我也更新了问题。谢谢。我的结果不需要排序。考虑到这一点,这会更快/更容易吗?不,游标标记需要对结果集进行排序,因为它不知道从结果集中的何处开始。
SolrQuery q = (new SolrQuery(some_query)).setRows(r).setSort(SortClause.asc("id"));
String cursorMark = CursorMarkParams.CURSOR_MARK_START;
boolean done = false;
while (! done) {
  q.set(CursorMarkParams.CURSOR_MARK_PARAM, cursorMark);
  QueryResponse rsp = solrServer.query(q);
  String nextCursorMark = rsp.getNextCursorMark();
  doCustomProcessingOfResults(rsp);
  if (cursorMark.equals(nextCursorMark)) {
    done = true;
  }
  cursorMark = nextCursorMark;
}