邓娟、龙克树
中国移动通信集团贵州有限公司
[摘要]本文公开了一种海量数据自动化迁移装置,核心内容包括三方面:一方面建立对不同数据库自动生成数据迁移清单的方法,通过对数据库对象(表、视图、序列等)结构的分析,依据分析结果,实现多源数据库迁移清单自动生成;一方面建立并发控制、错峰调度机制,通过错峰调度机制有效提高迁移的效率;另一方面建立一种支持多种方式的数据一致性自动化稽核装置,并支持在完成数据同步后实现自动稽核。
[关键词] 数据迁移;自动化稽核;自动化迁移
一、引言
随着业务的快速发展,数据量呈现P级增长的,老旧的系统架构已无法满足海量数据的存储和计算需求,如果仍采用传统的数据存储方式必将对后续数据的使用和分析造成很大的瓶颈。为更好满足业务发展需求,需要对系统架构重新进行设计。系统架构重新设计势必会导致我们必须执行数据迁移工作,如何实现多源和多维度海量数据的快速迁移成为了系统架构升级的一大难题。
二、海量数据迁移思路
贵州移动着眼现有数据迁移技术方案具有自动化程度低,缺少数据稽核有效方法等缺点,实现迁移前通过自定义规则自动生成待迁移清单,迁移过程中实现迁移过程全流程自动化管理,迁移后实现数据自动稽核,引入异常处理机制自动核查并输出稽核结果。
(一)数据库对象迁移和数据稽核思路
贵州移动通过业务经验以及专家判断法,固化几种常用规则,包括模式限定、关键字匹配和关键字排除等,迁移前,根据数据同步规则,自动生成规则模版、智能捕获范围,可根据模版灵活调整迁移清单,通过自定义规则和调用规则模版加工逻辑自动生成待迁移清单,避免因人工疏漏出现数据库对象少迁移问题;迁移后,增加数据一致性自动化稽核手段,配置数据一致性稽核规则,数据迁移结束后,自动启动数据质量检查,以确保数据库对象迁移完成,并输出数据稽核结果。
(二)迁移效率提升思路
面对海量的数据迁移,如何有效的提升迁移效率,是海量数据迁移的关键,贵州移动在这方面做了积极的探索,引用并发控制、错峰调度机制,在迁移的过程中,实时监控源数据库性能,引用并发控制、错峰调度机制,确保原业务连续性不受影响的情况下高效的完成数据迁移。
(三)迁移效过程管理和异常处理思路
在数据迁移过程中,输出数据同步任务的详细记录。贵州移动在迁移装置中加入了过程管理功能,根据日志以及迁移清单表基础信息进行汇总,实时计算出当前数据迁移的整体进度,使得迁移过程透明化,实现迁移过程全流程自动化管理;引入异常任务自动处理机制,通过自动识别处理状态以及核查数据稽核结果,对异常任务任务进行重试操作,若重试仍未成功,则自动转入告警事件表并通知技术人员。
三、海量数据迁移实践
(一)数据迁移流程
图:海量数据迁移流程图
本装置按业务处理的数据流向构建流程如上图所示,具体方案如下。
(二)数据迁移实践
第一步:建立同步规则配置中心
结合待迁移数据库业务场景,自主配置个性化同步规则,为固化的规则生成SQL模板;
第二步:建立自动生成迁移清单单元
1)确定待迁移数据库:选定待迁移数据库表,并将数据库对应表的基本信息填入配置表中;
2)读取规则列表:基于建立同步规则配置中心中的读取当前已配置的同步规则列表;
3)选择适用的规则:基于建立自动生成迁移清单单元中的读取的规则列表中,选择适用的规则。
4)调用规则SQL模板:根据待迁移数据库基本信息以及选定的规则,调用相应的SQL模板,生成待迁移数据清单的生成脚本;
5)自动生成待迁移数据清单:运行SQL生成脚本,获取对应数据库对应迁移表清单。
第三步:建立并发控制、错峰调度机制
1)初始化并发进程:结合源数据库当前性能,初始化数据同步并发进程数量;
2)实时监控源数据库性能:在数据迁移过程中,不断采集源数据库性能数据,并对数据进行分析,反馈源数据库实时性能(连接数、最大连接数、cpu值等)变化趋势;
3)并发控制、错峰调度:根据源数据库性能变化趋势,实时调整并发数据,从而实现错峰调度。
第四步:全流程过程日志管理单元
1)记录过程日志:在数据迁移过程中,输出数据同步任务的详细记录;
2)迁移进度管理:迁移清单中包含表大小信息,根据过程日志进行汇总实时计算出当前数据迁移的整体进度;
3)异常日志输出:数据迁移过程中,输出异常日志为异常作业自动处理提供处理依据。
(三)数据稽核实践
第一步:建立数据一致性稽核单元
1)配置数据稽核规则:本装置提供通过日志记录、字段聚合值、指标级、行级(hash值)等多种数据一致性稽核规则;
2)数据一致性稽核:输出的过程日志,对迁移完成的表进行稽核,形成异常记录为异常作业自动处理提供基础数据。
第二步:建立异常任务自动处理机制
本步骤主要对异常记录进行分析并启动异常任务处理进程。重处理进程完成后自行启动一致性稽核任务,如此往复直到任务正常结束或是达到重处理阈值,退出重处理进程并发出预警信息。
四、海量数据迁移成效
贵州移动通过对海量数据的探索与实现,针对现有数据迁移技术依赖人工操作、缺少数据稽核、迁移效率低等短板提升了数据迁移的效率和质量,解决了海量数据迁移场景下多源和多维度海量数据的批量迁移难题,在数据迁移和数据稽核方面取得了阶段性成果。
(一)数据迁移效率提升
贵州移动通过并发控制、错峰调度机制,完成数据迁移全流程自动化,提升迁移的数据效率,实现高并发的海量数据迁移,迁移效率可达5TB/小时以上。
(二)数据自动稽核
贵州移动自研规则算法,构建规则中心,增加一致性自动稽核手段,使PB级的数据量质量稽核可高效准确的完成,无需人工干预,准确率为100%,解决了传统迁移方式依靠人工在迁移后进行稽核费时费力,使得数据稽核更加高效、准确。
(三)助力架构改造
随着业务的快速发展和技术的不断革新,数据量的爆发式增长,数据迁移工作越发频繁,运用自动化海量数据迁移装置可以在数据迁移和数据稽核阶段节省大量的成本,有效解决了现有迁移方案问题,从而助力架构升级改造。
五、结语
综上所述,随着大数据的规模不断拓展,应用场景的不断增多,海量数据迁移的应用越来越广泛,贵州移动目前已利用海量数据迁移装置完成数据中台多个数据仓库的数据迁移,下一步将计划对海量数据迁移装置进行推广应用,使海量数据迁移装置创造更多的价值,并结合当前分析复杂性不断增强的实际,通过改造现有技术的不足,不断向智能化、数智化转变。
参考文献
[1]国务院.促进大数据发展行动纲要[S].2015.
[2]工信部.大数据标准化白皮书(2018)[R].2018.
[3]工信部.质量大数据白皮书[R].2022.
作者简介
邓娟(1990-12),女,汉族,四川,本科生,数据规划运营,工程师,中国移动通信集团贵州有限公司
龙克树(1993-04),男,侗族,贵州,研究生,数据挖掘应用,工程师,中国移动通信集团贵州有限公司