大佬们,请教一个问题,我们使用flink cdc 构建的实时数仓。现在遇到一个问题,flink cdc 订阅的是业务的从库。现在随着数据量的增加,业务需要对相关表进行归档。归档后会删除已归档的数据。而删除操作目前会被flink cdc 捕捉到。社区有没有大佬们有相关的方案解决mysql归档导致影响到数仓的问题?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
面对您提到的问题,即Flink CDC在订阅MySQL从库时捕捉到归档删除操作导致影响实时数仓的场景,可以采取以下策略来解决:
步骤1:在配置Flink CDC MySQL源时,利用Debezium提供的filter
功能,过滤掉DELETE类型的事件。这样,即使MySQL中执行了删除操作,Flink作业也不会消费这些删除事件,从而避免影响实时数仓。
示例代码片段:
properties.setProperty("debezium.source.filter.drops.deletes", "true");
is_archived
。Flink作业在处理数据时,根据此标识决定是否将数据写入实时数仓或进行相应归档逻辑处理。这样既能保留历史数据,又不会因直接删除而干扰实时数仓。通过上述方法,您可以有效地应对MySQL归档操作对基于Flink CDC构建的实时数仓带来的影响,保证数据处理流程的稳定性和数据的准确性。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。
你好,我是AI助理
可以解答问题、推荐解决方案等