Kafka Bigquery中的重复行
Posted
技术标签:
【中文标题】Kafka Bigquery中的重复行【英文标题】:Kafka Duplicated rows in Bigquery 【发布时间】:2020-10-19 19:26:24 【问题描述】:我正在使用 BigQuery 对我的 Postgres 数据库进行 SINKing,它正在工作,但是当我插入、更新或删除一行 (Postgres) 时,它会出现在 BigQuery 3 行中:一行使用插入命令,另一行使用更新命令和最后删除。
例如:
1 - 插入后
Postgres
--------------------
id | name | deleted
--------------------
1 | John | false
--------------------
BigQuery
--------------------
id | name | deleted
--------------------
1 | John | false
--------------------
2 - 更新名称后
Postgres
--------------------
id | name | deleted
--------------------
1 | Mary | false
--------------------
BigQuery
--------------------
id | name | deleted
--------------------
1 | John | false
1 | Mary | false
--------------------
3 - 删除后
Postgres
--------------------
id | name | deleted
--------------------
1 | Mary | true
--------------------
BigQuery
--------------------
id | name | deleted
--------------------
1 | John | false
1 | Mary | false
1 | Mary | true
--------------------
谁能告诉我如何解决这个问题?
【问题讨论】:
这似乎是连接器的一个实现细节。但是您没有告诉您通过什么服务将 PostgreSQL 实例连接到 BigQuery。 【参考方案1】:听起来您正在使用 Debezium Postgres 连接器,它从数据库中捕获所有相关事件并为每个事件创建 新记录。
不确定您是否希望 BigQuery 与数据库完全匹配,但如果是这种情况,您可能不会使用 Kafka Connect,因为它几乎总是会向 BigQuery 插入新记录(取决于连接器实现细节),并且而是使用一些批处理来定期将整个数据库导入 BiqQuery
【讨论】:
以上是关于Kafka Bigquery中的重复行的主要内容,如果未能解决你的问题,请参考以下文章