Извлечение изменений из таблицы с помощью ElasticSearch JDBC river
Я настраиваю реку JDBC для ElasticSearch, но не могу найти хорошего примера конфигурации. Я прочитал всестраницы наelasticsearch-река-JDBC GitHub.
У меня есть запрос SQL, и мне нужно получать изменения из всех столбцов таблицы каждые X секунд. Как я могу сообщить реке JDBC, что какая-то строка изменена и должна быть переиндексирована?
Данные выбираются во время запуска сервера ES, происходит опрос, но изменения не выбираются из БД в 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",
}
}'
Спасибо.