#研发解决方案#数据移山:接入、迁移、同步一站式
数据中心赵兴申 最后更新于2018/8/7
关键词:数据接入,数据迁移,实时同步,数据库变更订阅中心
提纲:
1. 移山产生背景
2. 技术栈
3. 移山数据处理能力
4. 小结
移山 是数据中心推出的异构数据源之间的数据迁移自动化平台,它旨在解决第三方ISV数据接入、实时数据(单向/双向)同步、大数据集群间的数据迁移等问题。
移山 前台部分由刘永飞,后台由赵兴申、谭清勇等同学开发完成。2018年3月9日移山(YiShan)一期上线运行。
0x00 移山产生背景
随着数屏、魔盒、数据开放实验室等大数据组件上线运行,我司数据仓库体系得到了进一步的发展,生产效率进一步提高,但是在数据接入、数据迁移、分析结果输出还存在以下问题:
-
业务库数据进入仓库流程复杂:
-
对于数据仓库中不存在的业务表,数据挖掘工程师需要先在 数据库变更订阅中心 配置该表,数据才会流向HBase(数据湖),然后还需要编码开发才能将HBase中的数据同步至数据仓库。这个过程操作复杂,极大制约了数据的开发效率;
-
计算任务和结果输出未完全分离:
-
我们的离线计算任务采用 spark 进行计算,任务计算完成后需要将分析结果输出到下游数据使用方(一般输出到 MySQL 数据库),数据计算和结果输出封装在一个 spark 任务中。计算结果数据量大的情况下,经常会导致 spark 任务不能正常结束或假死;
-
第三方数据接入方案不成熟:
-
对于第三方数据接入,我们之前有一个简易版的数据采集服务,采用内存队列方式处理接入数据,数据量大的情况下,经常会造成接口访问超时,影响数据的完整性。
为了解决上述问题,我们需要一个完整的数据接入、同步、迁移解决方案,移山项目应运而生。同时我们要求可视化配置,可排查(最好是全链路可排查),可调度,支持下层集群服务(如kafka、hbase等)的扩容或缩容,最重要的一点是自带监控报警。
0x01 技术栈
0x02 移山数据处理能力
2.1 三大数据通道
数据接入、数据迁移、实时同步三大数据通道涵盖所有业务场景。
2.2 完备的监控报警机制
-
报警设置
系统根据不同数据通道,采用相应的监控报警机制,例如:对数据接入、数据迁移通道采用达到一定的重试阈值,才进行报警;对实时同步这种不能进行重试的任务,立即报警。
-
运行监控
对数据接入、数据迁移提供详细的任务运行监控,并详细记载任务执行日志、错误日志、成功记录数、失败记录数等信息。
2.3 良好的数据、异常分析能力
移山系统提供了数据分析,帮助了解每日数据同步记录数、执行时长等信息。
0x03 小结
综上所述,移山的三大数据通道已全部涵盖日常数据迁移场景。移山以组件的方式集成到数据仓库体系中,形成如下图所示的大数据技术支撑体系。
-EOF-