大数据组件同步逻辑代码化(调研)
Posted Java_Web开发工程师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据组件同步逻辑代码化(调研)相关的知识,希望对你有一定的参考价值。
一、调研目的
实现clickhouse对审计数据库naudit的增量和更新同步,忽略掉删除操作
二、调研方向
1、调研clickhouse是否有忽略delete的配置
2、使用业界组件canal进行同步配置开发
三、调研方案
1、查询clickhouse是否有忽略delete的配置
参考链接:https://clickhouse.com/docs/zh/engines/database-engines/materialized-mysql
结果:clickhouse中并没有直接忽略delete的操作
详细查看clickhouse中MaterializedMySQL的介绍,柳暗花明
参考链接:https://blog.csdn.net/qq_42082701/article/details/127758123
也就是说
Select * from tableName
Union
Select * from tableName where _sign=-1
就会查询出tableName表中所有的增量、更新以及删除过的数据,符合预期目标
2、使用业界组件canal进行同步配置开发
参考:https://github.com/alibaba/canal/wiki/AdminGuide
http://blog.51yip.com/clickhouse/2536.html
四、总结
为实现clickhouse对mysql数据库的增量、更新,忽略删除同步;
以上两个方案理论上均可实现,方案1中使用MaterializedMySQL中加版本的过滤条件对于之前的开发来说改动最小,近乎只需要在视图层追加一下_sign=-1的数据关联;
参考:https://github.com/SmallHandsomeBoy/web_install
以上是关于大数据组件同步逻辑代码化(调研)的主要内容,如果未能解决你的问题,请参考以下文章