项目地址:https://github.com/tal-tech/cdsgit
ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。它有着优异的性能,能够快速部署和运行。
不过要想使用ClickHouse搭建起数仓用于数据分析,一个重要的问题就是数据如何进入ClickHouse?
咱们但愿数据源的变化可以自动实时地被同步到ClickHouse,并且支持方便的动态的添加新的数据源(新的数据库,表),
可以自动的生成对应数据源的schema。github
go-zero 团队使用go语言围绕ClickHouse开发了一些方便的组件与服务。数据库
咱们获得了下面这样的数据同步设计微信
该数据同步系统大体由如下三部分组成工具
流程以下:性能
上述服务的开发使用了go语言。借助于go-zero中的工具包,如goctl等,
咱们快速实现了它。它还加入了支持自适应mongoDB结构变化,支持数据分表等。大数据
咱们相信这是go语言与ClickHouse探索大数据的一个不错的起点,咱们但愿有更多的人可以参与进来。设计
CDS项目地址:https://github.com/tal-tech/cdsblog
go-zero项目地址:https://github.com/tal-tech/go-zero开发
欢迎你们 star 并加入微信社区 🤝