Elasticsearch mysqlからデータをインポート


詳細:https://github.com/jprante/elasticsearch-jdbc(一番下に各データベースのインポート方法の説明があります)
Elasticsearchバージョン1.5.2
1、elasticsearch-jdbc 1.5.2.0をダウンロードする
wget http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/1.5.2.0/elasticsearch-jdbc-1.5.2.0-dist.zip

2、解凍elasticsearch-jdbc 1.5.2.0
unzip elasticsearch-jdbc-1.5.2.0-dist.zip

3、elasticsearch-jdbc 1.5.2.0の配置
新規作成shファイル:
 vi /usr/local/elasticsearch-jdbc-1.5.2.0/bin/import.sh
#!/bin/bash
set -e

bin=/usr/local/elasticsearch-jdbc-1.5.2.0/bin
lib=/usr/local/elasticsearch-jdbc-1.5.2.0/lib
echo '{
"type" : "jdbc",
"jdbc" : {
"url" : "jdbc:mysql://12.43.18.29:3306/db_1",
"user" : "admin",
"password" : "948",
"sql" : "select * from ach;",
"index": "db_1",
"type": "ach"
}
}' | java \
-cp "${lib}/*" \
-Dlog4j.configurationFile=${bin}/log4j2.xml \
org.xbib.tools.Runner \
org.xbib.tools.JDBCImporter

4、インポートの実行
./import.sh

5、テストインポート結果
curl -XGET ‘localhost:9200/db_1/ach/_search?pretty&q=*’

*注意異なるテーブルのインポート時にsqlとtypeを変更する
インクリメンタルインポートデータ:(セルフタイマー更新が一致しません)
インクリメンタルインポートsql列の書き方に注意してください.
「select*from mon where tTime>」2015-12-21 04:59:59」ではなく
“select * from mon where tTime >‘2015-12-21 04:59:59’ “
インポートに失敗しました.ディレクトリの下にログを見ることができます.
データインポートリファレンス:
http://www.open-open.com/lib/view/open1431071580335.html