排查由于Flink CDC Connector导致PgSQL磁盘异常增长的问题

数据库关系型数据库技术服务知识库
问题现象

使用了 Flink CDC Connector 消费 PostgreSQL数据,但是发现数据量在没有发生变化的情况下,发现存储空间不断增长,我们该如何解决此类问题。

排查过程

根据此文档进行排查,发现 Flink 所依赖的 replication slot 未能推进 confirmed_flush_lsn,由于 confirmed_flush_lsn 一直未推进,基于复制槽的保护机制,PostgreSQL 会一直保留从 confirmed_flush_lsn 之后的 wal 日志,因此会造成 wal 日志堆积,磁盘空间增长。

解决方案

1.检查 Flink 版本

建议您检查 Flink CDC 对应的版本,由于老版本的 flink-cdc-connectors 存在 bug,需要使用 1.2 及以上版本。

2.检查debezium.heartbeat.interval.ms参数

设置方式如下:

'debezium.heartbeat.interval.ms' = '1000'

官方解释如下: 图片

3.配置checkpoint

以下两种方式可以配置 checkpoint

1.在 SQL中显示指定

SET 'execution.checkpointing.interval' = '1min';

2.flink-conf.yaml中配置

execution.checkpointing.interval:3min
参考文档
88
0
0
0
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论