我们使用 Precisely CDC 将数据从 IBMi DB2 源系统复制到 AWS RDS PostgreSQL 数据库 (v16.1)。大量大数据存储在多个包含 100 多列的表中。目标表不断被分析师使用。它们有大量索引(基本的 btree 索引)。
将行应用于 PostgreSQL 是一个常见的瓶颈。经常会为多个表建立大型队列。我们正在研究优化这一点的方法。
我想更改此设置,以便 CDC 在 CDC 专用的架构内写入表的非索引版本。然后将数据复制到分析师使用的单独模式中的索引表中。
我怀疑 postgreSQL 逻辑复制是否可以用于此目的,因为它要求源/目标架构和表名称相同。
您将如何处理同一数据库内模式之间的数据实时复制?也许可以使用表触发器来解决?高性能在这里至关重要。
我正在探索各种选择,尚未尝试过任何具体的方法。但让分析师使用视图并不能缓解问题,因为 CDC 应用行的表仍然需要索引。
对于您的目的来说,没有灵丹妙药,实际上取决于您允许“实时”的延迟要求是什么。 以下是我可以针对您的情况提出的建议:
两种解决方案都适合实时,但是两种解决方案都需要初始数据填充。