🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Apache Solr

Solrは、全文検索ライブラリである Luceneを用いたオープンソースの検索エンジンサーバです。Javaで記述されており、高い全文検索能力を持ちます。ドキュメントの登録には、XML/JSON/CSVなどを用い、ファセット検索機能も備わっています。

Q&A

解決済

1回答

4513閲覧

Apache SolrのOracleのDataImportがうまくいかない

anchan

総合スコア12

Apache Solr

Solrは、全文検索ライブラリである Luceneを用いたオープンソースの検索エンジンサーバです。Javaで記述されており、高い全文検索能力を持ちます。ドキュメントの登録には、XML/JSON/CSVなどを用い、ファセット検索機能も備わっています。

0グッド

0クリップ

投稿2017/08/19 13:58

編集2017/08/19 14:08

Apache SolrでOracleのDataImportの設定をし実行したのですが、
データが取り込めません。

oracleへの接続設定をあえて間違った設定にし実行しても
実行結果が変わらないため、おそらくsolrからoracleへの接続が出来ていないのだと思われるのですが、
ログなどの場所がわからず何の設定が誤っているかが分かりません。

Solrのバージョン等また設定した内容は下記になります。
どなたかどこの設定が悪いのか教えてくださいますでしょうか?

###バージョン
両方ともローカル環境で構築しています。

  • Apache Solr

6.6.0

  • Oracle

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0

実行した内容と結果

http://localhost:8983/solr/コア名/dataimport?command=full-importを実行した結果

<response> <lst name="responseHeader"> <int name="status">0</int> <int name="QTime">5</int> </lst> <lst name="initArgs"> <lst name="defaults"> <str name="config">solr-data-config.xml</str> </lst> </lst> <str name="command">full-import</str> <str name="status">idle</str> <str name="importResponse"/> <lst name="statusMessages"> <str name="Time Elapsed">0:0:15.488</str> <str name="Total Requests made to DataSource">0</str> <str name="Total Rows Fetched">0</str> <str name="Total Documents Processed">0</str> <str name="Total Documents Skipped">0</str> <str name="Full Dump Started">2017-08-19 13:09:25</str> <str name="Full Import failed">2017-08-19 13:09:25</str> </lst> </response>

設定した内容

  • 取り込むテーブル定義

USER_INFO

カラム名
USER_IDCHAR
ADDRESS_1VARCHA
ADDRESS_2VARCHA
ADDRESS_3VARCHA
ADDRESS_4VARCHA

確認すると5件のデータが登録されていることは、
sqlplusで確認しています。

  • managed-schema
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false"/> <field name="user_id" type="string" indexed="true" stored="false" required="true" multiValued="false"/> <field name="address" type="text_ja" indexed="true" stored="true" required="true" multiValued="false" />
  • jdbcドライバー

http://www.oracle.com/technetwork/indexes/downloads/index.html
ここよりodbc6.jarをダウンロードし/dist配下に配置

  • solrconfig_xml
<!-- ここから追加 --> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*\.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="oracle.*\.jar" /> <!-- ここまで追加 --> <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*\.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-\d.*\.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*\.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-\d.*\.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />

下記を新規でリクエストハンドラ設定の先頭に追加

<requestHandler name="/dataimport" class="solr.DataImportHandler"> <lst name="defaults"> <str name="config">solr-data-config.xml</str> </lst> </requestHandler>
  • solr-data-config.xml

https://wiki.apache.org/solr/DataImportHandlerを参考に下記を設定

<dataConfig> <dataSource name="jdbc" driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@//localhost:1521/orcl" user="test" password="test"/> <document> <entity name="store" query=" SELECT ROWNUM AS ID ,USER_ID ,ADDRESS_1 || ADDRESS_2 || ADDRESS_3 || ADDRESS_4 AS ADDRESS FROM USER_INFO"> </entity> </document> </dataConfig>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

jdbcドライバーの設定誤り

<lib dir="${solr.install.dir:../../../..}/dist/" regex="oracle.*\.jar" />

<lib dir="${solr.install.dir:../../../..}/dist/" regex="ojdbc.*\.jar" />

投稿2017/08/19 14:16

anchan

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問