Elasticsearch を使用jdbc river
して、MySQL から大量のデータを取得しています。
curl -XPUT 'localhost:9200/_river/company_river/_meta' -d '{
"type": "jdbc",
"jdbc": {
"driver": "com.mysql.jdbc.Driver",
"url": "jdbc:mysql://localhost:3306/dbname",
"user": "username",
"password": "password",
"sql": "select id as _id, name, date, code, status from tablename",
"strategy": "simple",
"poll": "2s"
},
"index": {
"index": "jdbc",
"type": "jdbc",
"versioning": true,
"digesting": true,
"bulk_size": 160,
"max_bulk_requests": 5
}
}'
上記のコマンドを実行すると、MySQL からすべてのデータが取得されるわけではありません。テーブルには 1 億を超えるレコードが含まれています。