从JSON Solr中导入数据(import data from JSON in solr)

2019-08-16 18:23发布

目前我使用XML文件中的Solr。 使用DataimportHandler与XPathentityProcessor我索引XML文件中的数据。

现在,我想从JSON文件导入数据。

是否有任何的例子吗?

问候,萨加尔

Answer 1:

你需要的是一样的东西

curl 'http://localhost:8983/solr/update/json?commit=true' --data-binary @books.json -H 'Content-type:application/json'

从示例获取的。

来源: https://wiki.apache.org/solr/UpdateJSON



Answer 2:

DataImportHandler不允许你使用JSON作为源。 唯一的办法是使用更新处理程序,可以在本地处理JSON。 但是,这必须是在该JSON结构Solr的预计 (阵列散列或命令/散列的散列)。



Answer 3:

如果你不想使用curl命令,你可以在浏览器上直接开火命令并得到想要的结果:

http://localhost:8983/solr/update/json?commit=true --data-binary @books.json -H 'Content-type:application/json'

放入/例如JSON文件/ exampledocs folder.This是Solr的默认目录路径。 如果您使用的是Java或PHP等则有几类,并且使用的方法,然后你不会需要提到整个命令above.Is那你问什么?



Answer 4:

您还可以通过包括更新您的文档?像这样一个curl命令的URL中提交=真实的陈述。

curl -X POST -H "Content-Type: application/json" -u "{usernamne}":"{password}" "https://your_host/solr/your_collection/update/json?commit=true" --data-binary @/path/to/your/data/your_data.json


Answer 5:

您可以使用REST API将数据发送到Solr。 请使用此路径:

localhost:8983/solr/simple2/update?commit=true
//(simple2 is the core name and localhost:8983 is server path.)

你必须定义

:content_type => 'application/json'

与其要求header.Along您可以发送JSON文件/数据使用POST请求到Solr。

欲了解更多信息,您可以访问http://geekdirt.com/blog/indexing-in-solr-using-json-and-rest-apis/



Answer 6:

如果你想导入部分或从JSON格式整个集合,那么,还存在另一种。

我写了一个java工具: https://github.com/freedev/solr-import-export-json

这是一个进口和出口使用Solr的集合Java应用程序SolrJ 。 每个文件必须是一个JSON对象,并在文件中要导入,而每一行是一个JSON对象,你必须有行的列表。

{ "id": 1, "date": "20160101T00:00:00", "text": "some text" } 
{ "id": 2, "date": "20160102T00:00:00", "text": "some text" } 
{ "id": 3, "date": "20160103T00:00:00", "text": "some text" } 

我还没有尝试过使用嵌套的文档和JSON文档的按键应该是Solr的字段的确切名称。



文章来源: import data from JSON in solr
标签: json solr