【发布时间】:2018-08-22 12:52:58
【问题描述】:
我正在建模一个新的微服务架构,将单体软件的某些部分迁移到微服务。
我正在添加一个新的 PostgreSQL 数据库,我的想法是将来使用该数据库,但现在我仍然需要更新旧的 SQL Server 数据库,并且如果旧数据库中出现新的东西,还需要同步 PostgreSQL 数据库。
我已经搜索过 ETL 工具,但它们旨在将数据移动到数据仓库(这不是我需要的)。我只是无法复制信息,因为数据库模型不一样。
基本上,我需要一种方法来检测插入到 SQL Server 数据库中的新行,转换该信息并将其插入到我的 PostgreSQL 中。
有什么建议吗?
【问题讨论】:
-
你能告诉我们更多关于数据库插入发生在哪里的信息吗?是否有可能让插入调用重复以覆盖其他数据库?
-
主要软件将使用我正在创建的 AWS Lambda,所以是的,插入调用可能重复,但系统的其他部分也会命中 SQL Server 以插入或更新,所以我需要检查数据库中是否也插入了一些新行。
-
您是否需要它是实时的,因为您必须尽量减少两个数据库不同步的可能性?
-
基本上,POST HTTP 调用将执行 AWS Lambda,并将实体保存到一个或两个数据库中(这取决于我)。但是由于系统的其他部分暂时不会使用我的新微服务,我需要一种方法来保持两个数据库同步。如果需要,我可以使用任何现有的 AWS 工具来解决这个问题。
-
我没有答案,但我支持你。我的感觉是 AWS 大师应该关注这个。
标签: sql-server postgresql etl