【问题标题】:Indexing data from CSV file in Apache Solr在 Apache Solr 中从 CSV 文件索引数据
【发布时间】:2017-03-07 10:37:19
【问题描述】:

我已按照以下链接中给出的教程进行操作

Indexing csv file in solr

我已经在本地配置了 solr 服务器,并且

但是当我尝试使用以下命令发布 csv 文件时

java -Dtype=text/csv -Durl=http://localhost:8983/solr/jcg/update -jar post.jar  books.csv

我在命令提示符下得到以下错误响应

任何人帮助我得到错误响应

错误:

<response>
<lst name="responseHeader"><int name="status">400</int><int name="QTime">111</int></lst><lst name="error"><lst name="metadata"><str name="error-class">org.apache.solr.common.SolrException</str><str name="root-error-class">org.apache.solr.common.SolrException</str></lst><str name=
"msg">ERROR: [doc=0553573403] unknown field 'cat'</str><int name="code">400</int></lst>
</response>

【问题讨论】:

  • csv文件的数据是什么?你有没有名为 cat 的字段的 schema.xml?像

标签: java php solr solrj solrcloud


【解决方案1】:

您学习的教程已经很老了,所以如果您想学习该教程,有两种选择:

  1. 您正在学习的教程错过了在 jcg 集合中创建模式配置。在这种情况下,您应该将 managed-schema 文件修复为 jcg 配置,注意按照教程中的建议添加以下字段,然后重新加载配置(或重新启动 Solr)。此时,“索引数据”步骤应该可以正常工作了。
 <uniqueKey>id</uniqueKey>
 <!-- Fields added for books.csv load-->
 <field name="cat" type="text_general" indexed="true" stored="true"/>
 <field name="name" type="text_general" indexed="true" stored="true"/>
 <field name="price" type="tdouble" indexed="true" stored="true"/>
 <field name="inStock" type="boolean" indexed="true" stored="true"/>
 <field name="author" type="text_general" indexed="true" stored="true"/>
  1. 您已正确添加架构和字段,但未重新加载配置,但未重新加载集合。因此,只需重新加载配置(或重新启动 Solr)并继续本教程。

另一方面,如果您使用的是较早版本的 Solr (6.4),我建议删除 jcg 集合并重新创建它:

bin/solr delete -c jcg
bin/solr create -c jcg -d ./server/solr/configsets/sample_techproducts_configs  

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-12
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多