我正在为ElasticSearch配置JDBC河,但找不到任何好的配置示例。我已经阅读了Elasticsearch-river- jdbc GitHub上的所有页面。
我有一个SQL查询,我需要每X秒从所有表列中获取更改。我如何告诉JDBC river某些行已更改并应重新索引?
在ES服务器启动期间获取数据,正在进行轮询,但是没有从DB到ES获取更改。
我的配置:
curl -XPUT 'localhost:9200/_river/itemsi/_meta' -d '{ "type" : "jdbc", "jdbc" : { "driver" : "com.mysql.jdbc.Driver", "url" : "jdbc:mysql://mydb.com:3306/dbname", "user" : "yyy", "password" : "xxx", "sql" : "SELECT ii.id AS _id, ii.id AS myid, ... FROM ... LEFT JOIN .. ON...", "poll" : "6s", "strategy" : "simple" }, "index" : { "index" : "invoiceitems", "bulk_size" : 600, "max_bulk_requests" : 10, "bulk_timeout" : "5s", } }'
谢谢。
加
“自动提交”:true
在索引设置中。然后问题就解决了