0

我正在尝试将 Solr 索引导出到 JSON 文件。但是,在我关心的 2 个字段中,其中一个 (field A) 是multivalued,另一个 (field B) neither indexed nor has doc values(该字段可能缺少架构)。两者都导致错误说can not use FieldCache on a field which is ...

这些字段的模式位于远程服务器上,不应更改。那么是否可以使用这些字段导出索引?谢谢!

ps 如果可能的话,我也想fl在这两个字段上,因为它们是我所需要的。

4

1 回答 1

0

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

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

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;
}

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

于 2018-07-24T20:12:36.313 回答