保持Oracle数据与ElasticSearch集群同步

时间:2015-09-25 09:12:54

标签: java database oracle elasticsearch data-synchronization

我将Oracle数据(由各种系统更新)同步到ElasticSearch的解决方案是在数据库表中使用触发器(插入/更新)并将事件条目[表名和主键]插入到事件表中。

侦听器获取事件,锁定事件,从Oracle数据库获取数据以进行索引,然后准备JSON文档以索引到elasticsearch并使用批量API对其进行索引。

我被要求重新设计,如下所示,

  • 收听事件(在Oracle中插入/更新)。
  • 将活动发布到SQS。
  • SQS侦听器,使用Web服务从Oracle数据库中获取记录。
  • Web服务应具有API以返回给定主键的记录,并具有对没有主键的查询的批处理支持(从相关表中获取记录 - 以准备嵌套文档)。
  • 获取给定事件的所有必要记录后的SQS侦听器,准备JSON文档以使用批量API在elasticsearch中对其进行索引和索引。

我没有发现第二种方法是近实时应用的正确解决方案,请帮助我了解这种方法的好处。

0 个答案:

没有答案