这些年我负责中信银行数据中心的管理工作,在金融科技的大潮下,亲眼见证了数据中心的蓬勃发展。目前,中信银行已经成功实施分布式架构转型,核心系统等重要系统已经从集中式数据库跨越到分布式数据库。抚今追昔,回顾中信银行的数据库运维发展历史,这中间既有成功的喜悦,也有转型的阵痛,经历了三个充满挑战的阶段。
第一阶段为原始运维阶段,主要特点是解决问题完全依靠DBA的专业经验,完全依靠DBA的个人能力,没有成熟的技术规范。层出不穷的各种数据库问题、各种事件、各种应急、频繁的变更等,都会让DBA乃至整个数据中心疲于奔命。在这个阶段,几乎所有数据库运维工作都是靠手工来完成,手工操作效率不高而且很容易出错,这种现状当时一直困扰着我们,有时候更是一种痛苦的折磨。
第二阶段为规范化运维阶段,主要特点是通过不断的积累制定技术规范来运维,期间还辅以问题分析报告和应急手册作为积累的知识供参考使用。这个阶段会对原始运维阶段踩到的各种“坑”进行总结和反思,随后将总结的经验文档化:制定行之有效的数据库技术规范和应急手册;有了规范后,就可以在新系统上线环节确保规范落地,同时伴随对存量系统按照规范进行持续整改。这种方式解决了大部分问题,但仍然严重依赖DBA,工作效率不高。
第三阶段为平台化工具运维阶段,主要特点是利用平台化工具进行数据库运维。这个阶段不再依赖DBA的个人经验,而是将数据库应急处置、问题诊断、变更实施、配置基线检查等全部工作通过平台化工具来完成,DBA的经验和知识逐步通过平台得到积累,让以前高不可攀的数据库运维工作成为普通系统管理员的日常工作。这个阶段DBA的工作模式也发生了巨大变化,正逐步转型成为一支熟悉DevOps精益文化,同时具备一定研发能力且掌握具体系统知识的SRE团队,团队的日常工作就是开发平台化工具,从体系上彻底解决数据库运维难题。
值得强调的是,中信银行DBA的转型,并非一时冲动之举,而是归因于中信银行核心系统从AS400核心到x86分布式核心系统下移项目——“凌云工程”锤炼之结晶。2013年,中信银行在布局数据银行战略规划中,首次提出了由传统架构向云计算分布式架构转型的目标;2014年5月,中信银行和中兴通讯成立联合技术团队,正式启动了GoldenDB金融级分布式数据库的研发项目,以开发一个具有强一致性、线性扩展和高可用性,可以更好满足业务发展需要的金融级分布式数据库。
随着GoldenDB数据库产品开发的稳步推进,中信银行于2015年年初正式启动了总行核心系统从AS400核心到x86分布式核心系统下移项目(“凌云工程”)。与集中式数据库相比,分布式核心系统所用分布式数据库节点多、单点故障率高,依靠传统的运维模式已经难以满足运维保障需求。这时候DBA团队开始一边干一边谋划转型,陆续开发了应急处置、深度巡检、灾备一致性检查等平台化工具,和一线运维保障团队一起构建了分布式核心系统“监、管、控”运维平台;同时,建立了SRE人才培养、评估和管理机制,DBA团队也通过“凌云工程”的实践成功转型为SRE团队。
飞鹏老师来中信银行之前,在IBM有长时间数据库研发和客户支持经验,来中信银行之后一直从事数据库规划和运维工作,为推动数据库运维转型提升起到了至关重要的作用,实属有理论有经验的数据库大咖。与飞鹏老师谈论起来,在数据库领域发生技术变革的转型期,金融同业之间、金融同互联网行业之间交流却靠口口相传,缺乏一本有深度和广度的著作,实在不符合数据库在商业银行的地位。现在飞鹏老师凝聚多年经验,和中信银行DBA团队其他大咖王宁、张聪等人一起,利用两年业余时间写出了一本深入浅出、讲解透彻的数据库书籍,其孜孜不倦的进取精神值得我辈IT人士学习。
此书从集中式到分布式数据库架构转型谈起,以对比的写作手法深入讲解商业数据库和分布式数据库在商业银行的应用,包括架构规划、数据库迁移、部署上线、故障诊断和性能优化等内容,难得的是包含大量工作实例;同时飞鹏老师还基于自己多年的数据库实践经验,向广大读者分享了商业银行数据库运维体系建设的思考。
无论你是IT行业的系统管理员,还是对数据库技术感兴趣的码农,本书都是一本不可多得的从入门到进阶的精品书,值得阅读!
中信银行数据中心总经理
迟鲲
2021年6月28日