使用ElasticSearch JDBC river从表中获取更改

Xdg*_*Xdg 5 mysql lucene full-text-search elasticsearch elasticsearch-jdbc-river

我正在为ElasticSearch配置JDBC river,但我找不到任何好的配置示例.我读过的所有网页elasticsearch河-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",
    }
}'
Run Code Online (Sandbox Code Playgroud)

谢谢.

sam*_*win 1

添加

“自动提交”:true

在索引设置中。那么问题就解决了