在Windows上使用cURL将csv上传到solr核心

时间:2016-03-07 22:24:42

标签: curl solr

我一直在网上寻找在Windows上使用solr的良好文档,但我在那里找不到多少。我正在使用solr v5.4.1。

按照教程herehere,我已经安装了solr并构建了一个新的核心,安装了cURL,并运行了一个似乎没有错误的curl命令,但数据不是上传到我的服务器。我修改了schema.xml以包含我的CSV中的所有列标题名称。

这是我正在运行的命令,用于将test.csv中的数据上传到我的核心。

D:\solr\solr-5.4.1\bin>curl http://localhost:8983/solr/ti/update?commit=true --data-binary @d:\test.csv -H 'Content-type:application/csv'

我点击进入时的反应:

<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="responseHeader"><int name="status">0</int><int name="QTime">1071</int></lst>
</response>

当我回到Solr Admin面板时,我看到我的核心中存在0个文档,但是我没有从curl或响应中收到任何错误消息,表明我做错了。

我做错了什么?

2 个答案:

答案 0 :(得分:2)

我无法在cURL中弄清楚,但我确实弄清楚了如何使用与solr捆绑在一起的post.jar文件来完成它。

#post a csv to a core named "abc" using the post.jar file in example\exampledocs

我正在D:\solr\solr-5.4.1\运行此命令,我的solr安装位于此处。

java -Dc=abc -Dtype=text/csv -Dfiletypes=text/csv -jar example\exampledocs\post.jar d:\test\test.csv

<强>其中:

-Dc=是solr

中已存在的核心名称

=Dtype=Dfiletypes=是您要上传的文件类型

-jar example\exampledocs\post.jar需要引用您的post.jar文件所在的位置。

D:\test\test.csv是您要上传的csv文件的位置。

另请注意,在此工作之前,您需要修改solr中的schema.xml文件,以将CSV文件中的列标题添加到solr核心。

希望这有助于某人! :)

答案 1 :(得分:0)

我遇到了同样的问题。使用curl发布文档后没有文档可见。以下对我有用。

curl http://localhost:8983/solr/fpi_auto/update?stream.body=%3Ccommit/%3E

基本上,它将文件提交给solr。