9

現在、solrでXMLファイルを使用しています。XPathentityProcessorでDataimportHandlerを使用してxmlファイルのデータにインデックスを付けます。

次に、jsonファイルからデータをインポートします。

例はありますか?

よろしく、サーガル

4

6 に答える 6

9

必要なのは

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

例から引用。

ソース:https ://wiki.apache.org/solr/UpdateJSON

于 2013-02-05T10:41:59.247 に答える
5

DataImportHandler では、JSON をソースとして使用することはできません。唯一の方法は、JSON をネイティブに処理できる Update Handler を使用することです。ただし、それはSolr が期待する JSON 構造(ハッシュの配列またはコマンド/ハッシュのハッシュ) 内にある必要があります。

于 2013-02-05T12:07:05.457 に答える
3

curlコマンドを使用したくない場合は、ブラウザーで直接コマンドを実行して、目的の結果を得ることができます。

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

jsonファイルを/example/exampledocsフォルダーに配置します。これはsolrのデフォルトのディレクトリパスです。javaやphpなどを使用している場合は、使用するクラスとメソッドがいくつかあり、上記のようにコマンド全体について言及する必要はありません。それはあなたが求めていたものですか?

于 2013-02-27T08:07:53.307 に答える
1

このように、curl コマンドの URL 内に ?commit=true ステートメントを含めることで、ドキュメントを更新することもできます。

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
于 2016-01-14T18:14:51.940 に答える
0

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'

それに加えて、ポストリクエストを使用してjsonファイル/データをsolrに送信できます。

詳細については、http://geekdirt.com/blog/indexing-in-solr-using-json-and-rest-apis/にアクセスしてください。

于 2015-08-05T14:43:13.743 に答える