基于dremio 开发一个简单的反向ETL

反向ETL 目前是一个和不错的领域,以下是自己基于一些工具集成参考构思的一个反向ETL 设计方案,具体编码还在规划中
以下简单介绍下一些思路

参考图

 

 

 

 

简单说明

核心是利用了dremio 数据反射以及CTAS 能力(也支持drop),对于数据使用了快照的处理,直接存储在s3中,格式使用了基于时间分区的格式,同时会存储数据的元数据(大小,路径,行数),对于快照数据处理以及后续数据分发我们是基于一个任务调度框架处理的,分发上我们支持基于event 、batch、pipeline 以及传统ETL,可以到db,文件系统,外部api。。。以上是一个参考整体设计的思路,细节上后边会有介绍的,数据diff 部分我们基于了dremio 的excep sql 函数,设计上以及性能测试上还是可以的,后续会有压测说明以及详细代码说明

说明

反向ETL 是一个好东西,我们基于开源框架可以实现类似的能力,后续我会将设计的东西开源出来,同时细化设计细节

参考资料

https://github.com/dremio/dremio-oss
https://github.com/castledio/castled
https://castled.io/

posted on 2022-01-20 23:36  荣锋亮  阅读(185)  评论(0编辑  收藏  举报

导航