我们正尝试使用弹性搜索实现自由文本搜索。
计划是使用
OurApplication | 巢 | 弹性搜索 | ????????????? | SQL Server
数据库是SQL Server,表上的创建,更新和删除操作由多个应用程序执行。
如何在弹性搜索中填充和刷新索引?
我经历了River JDBC路线,有人说它会在进一步的版本中折旧吗?
如果我使用River JDBC,如何在更新发生时刷新索引?
答案 0 :(得分:2)
简单来说,你可以做的是当执行任何操作时更新,添加或删除然后调用弹性搜索的相应功能。就像更新记录时一样,调用一个函数,该函数用索引更新该记录并输入弹性数据。写入和删除操作也是一样的。我在学期项目中使用相同的东西进行自动建议和文本免费搜索。 此致
答案 1 :(得分:0)
该JDBC导入程序的最佳解决方案
Java数据库连接(JDBC)导入程序允许从JDBC源获取数据以索引到Elasticsearch。 JDBC导入程序是为表格数据设计的。如果您有多个连接的表,则JDBC导入器在将深层嵌套对象重建为JSON以及处理对象语义(如对象标识)的方式上受到限制。虽然可以使用可以指定所有对象属性的映射功能扩展JDBC导入器,但是当前的解决方案主要关注相当简单的表格数据流。
您可以将脚本文件用于jdbc数据库连接和查询。您将数据存储在索引中并在应用程序上使用此索引。 您可以通过在参数schedule中设置cron表达式来重复(或计划时间)来刷新索引。
计划参数示例: “schedule”:“0 0-59 0-23?* *” 这会每周,每小时,每周/每月/每年的所有日期执行JDBC导入程序。和索引每分钟获得新鲜数据。
JDBC导入器也支持mysql,PostgreSQL。 JDBC导入器提供了许多功能。