我已根据以下内容创建了一个支线脚本:https://github.com/jprante/elasticsearch-jdbc/wiki/jdbc-plugin-feeder-mode-as-an-alternative-to-the-deprecated-elasticsearch-river-api
我没有在上面的示例中添加任何新属性(当然更改了数据库设置等)。该表被快速索引,然后馈送脚本正常终止。我需要做什么才能使馈送器脚本持久化,并在将新记录添加到数据库时(近实时)从mysql数据库获取更新?
谢谢
更新
弹性搜索版本是1.4.4,安装了插件河和头。
答案 0 :(得分:0)
您可以通过多种方式获得近乎实时的行为,但需要付出一些代价。
可以在写完所有数据后完成。
https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-refresh.html
您可以将索引刷新关系设置为较短的时间范围。
{
"settings": {
"refresh_interval": "1s"
}
}
有关详细信息,请参阅:https://www.elastic.co/guide/en/elasticsearch/guide/current/near-real-time.html
答案 1 :(得分:0)
感谢所有人的兴趣。
我最终决定在DB和ES中创建文档。我在新文档中获得任何值之前刷新索引(在索引中创建文档之后)。我知道这不是一个“理想”的情况,但现在解决了我的问题。