开发者社区> 技术小达人> 正文

天津银行周传凯:从 0 到 1,我的分布式数据库落地经验谈

简介: 天津银行周传凯:从 0 到 1,我的分布式数据库落地经验谈
+关注继续查看

01.gif采访嘉宾:周传凯

本文系 InfoQ 对天津银行股份有限公司,数据中心系统软件组组长、数据中心云数据库架构师、数据中心云系统架构师周传凯的采访稿件梳理。

对于金融行业而言,IT 系统的每一次架构换代升级都是关系到企业整体业务安全性、可靠性,甚至可能影响金融市场稳定性的重大事项。与此同时,金融企业面对迅速增长的业务规模与日新月异的市场需求又必须紧跟趋势,及时完成 IT 系统技术升级,从而保持自身的市场地位与竞争力,满足用户多元需求。在这样的背景下,企业 IT 部门就要充分把握好技术架构换代过程中的平衡,在确保安全可靠的前提下尽快充分利用新兴技术的各项优势。

近年来,随着云计算、微服务等技术理念逐渐取代传统的单体架构,数据库领域也开始迎来由分布式数据库主导的变革潮流。对于银行等金融企业而言,分布式数据库可以带来很多显而易见的收益,但出于金融准确性、安全性、稳定性的极高要求,如何在不影响业务可靠性的前提下平稳落地这一新兴技术,是很多企业管理者和 IT 部门面对的挑战。
在国内,天津银行自 2018 年起就开始了分布式数据库落地的实践探索,至今已经取得了值得称道的成果,完成了项目立项之初设定的各个目标。近日,InfoQ 采访了天津银行数据中心系统架构师周传凯;他从个人经验出发,分享了金融企业从 0 到 1 落地分布式数据库的完整历程。

01分布式数据库转型驱动力源自何处?

2018 年之前,天津银行主要使用的数据库分别是 Informix 和 Oracle 两种单体数据库。前者运行在 AIX 小型机上,主要处理记账类业务。后者运行在较新的服务器上,处理的业务更加全面。

回顾历史,金融行业的 IT 系统曾经长期被 IOE(IBM、Oracle、EMC)的单体软硬件架构统治。国内各大银行每年都要投入巨资维护和更新基于 IOE 产品的 IT 系统,天津银行所使用的 Informix 与 Oracle 数据库就是一个典型案例。在云时代到来之前,IOE 体系以其强大的性能、极高的稳定性/可靠性和广泛深厚的功能积累深得金融企业信赖,很少有人试图对这一局面发起质疑和挑战。

但随着时间推移,尤其是云原生潮流席卷全球 IT 行业后,IOE 体系遭遇到了前所未有的冲击。由于 IOE 软硬件架构本质上仍以传统的单体设计为主,难以适应云时代去中心化、分布式的设计开发理念;相关产品高昂的购买升级与维护成本也令企业愈加不堪重负;最重要的是,IOE 软硬件很难满足新时代金融业务快速增长和变化的业务需求,逐渐成为企业竞争力提升道路上的“绊脚石”。正因如此,近年来金融行业开始探索利用围绕云原生理念的 IT 系统架构,逐渐替换传统的 IOE 解决方案。

在天津银行的运营实践中,Informix 与 Oracle 两种传统数据库就随着业务增长而逐渐暴露出了一系列问题:

  • Informix 的维护、迭代和演进高度依赖 IBM,存在对接维护人员经常更换、长期维护较为困难的问题;

  • Informix 不具备横向扩展能力,只能通过硬件更新实现性能提升;

  • 数据量达到 PB 量级后,Oracle 会出现性能瓶颈,需要做分区表等优化;

  • Oracle 对双活切换不够友好,双线切换延迟较大。

与此同时,天津银行正在与蚂蚁集团等外部企业展开合作,并引入敏捷开发、分布式事务等技术理念,自然就需要将数据库从传统的单体架构升级为分布式架构,与整体的开发变革步伐相适应和匹配。2019 年,天津银行引入阿里云的整套产品线打造专有云,周传凯由此接触到了 100% 自主研发的 OceanBase 原生分布式数据库产品,开始带领银行 IT 部门正式踏上了分布式数据库落地之路,开启了银行在数据库领域对传统架构的升级的旅程。

回顾银行选择分布式数据库产品的经历,周传凯认为这里的关键在于专有云的架构选项。在他看来,分布式数据库与专有云是一个整体,分布式的数据场景、微服务化的业务和分布式数据库可以共同形成 1+1 大于 2 的效应。因此,很少有金融企业会单独购买某种分布式数据库产品,更多情况下还是会像天津银行这样,将分布式数据库作为专有云架构的一个捆绑解决方案。但与之前的 IOE 时代相比,企业在云原生升级选型时可选的解决方案提供商数量要多很多,厂商之间的竞争更为激烈,技术迭代升级步伐更快,这样的局面自然更符合行业客户的长期利益。

02 步步为营才是分布式数据库落地的成功之道

如前所述,金融企业在落地新兴技术架构时都会采取非常谨慎的态度,天津银行自然也不例外。选定 OceanBase 后,银行为分布式数据库的落地安排了三期工程,分为三年实施。一期工程主要以技术验证为目的,承载一些银行二类产品的开户、记账等功能。在这一期间,周传凯带领的团队遇到了非常多的问题,往往需要与 OceanBase 技术团队共同探讨和解决。

2020 年的二期工程中,银行将 OceanBase 从 1.4.79 升级到了 2.2.76,引入了一些 Oracle 相关特性。二期工程开始将银行自营网贷、风控和门户转移到 OceanBase,并规划了同城双活架构。这一过程中涉及的主要问题更多是架构和规划层面,周传凯会经常与阿里团队探讨诸如链路延时、多副本冗余度等细节和技术目标。

2021 年三期工程开始后,天津银行在某次宕机时间中发现在单体时代传统的业务上线、审批流程不一定适应云原生、分布式数据库的使用场景,并通过此次事件对业务上线流程做了优化。经过打磨调优后,OceanBase 与业务开发端的协同能力得到增强,可用性、安全性进一步提升,也为未来更多业务逐步上云巩固了基础。天津银行上线了一个重要的银行卡系统。该系统涉及的业务场景需要对每一笔与银联系统的交易做流水表查销,交易量达到 1100 万规模。然而上线半个多月后系统突然宕机,结果发现原因在于缺少字段统一索引。虽然问题很快得到了解决,但这也暴露出了新业务上线把关存在的审查漏洞。

为此,周传凯团队与 OceanBase 团队做了深入讨论、调优和培训,最终圆满解决问题的同时,为后续的迁移工作保障提前打好了基础,这也得益于 OceanBase 数据库是 100% 自主研发的国产原生分布式数据库,在遇到一些核心应用的问题的时候,原厂研发人员可以快速定位进行优化,通过快速的迭代精准解决用户痛点。

归根结底,企业从传统单体数据库转向分布式数据库的最终目的是要更好地解决业务实践中遇到的种种问题和挑战。从 2019 年的第一期工程开始到现在,周传凯团队对分布式数据库的优势与收益有了更加深入的体会:

  • OceanBase 高度兼容 Oralce 和 MySQL 引擎,实际使用中非常便利。

  • OceanBase 的数据同步方式很好用。与传统数据库往往只能在两个副本之间同步的设置相比,OceanBase 可以实现三个、五个、七个副本的同步,获得灵活的扩展能力。

  • OceanBase 的透明迁移能力可以在业务运行状态下完成很多升级事项,对于强监管的金融行业来说非常便利。业务不中断意味着不需要根据监管要求提前报备,可以有效改善客户体验。

  • OceanBase 对容灾建设有着很强的支持能力,可以轻松实现多活、副本迁移等工作。

  • OceanBase 具备灵活的资源扩展能力,一个租户可以迅速无停机扩展 CPU 核心数量,在高压力交易场景实现实时扩容,很好地应对未来的业务增长要求。

除此之外,周传凯还发现 OceanBase 的运行效率与优化改进是息息相关的。例如现有的分库分表的具体实现方式、索引方案等等,都可以根据 OceanBase 的实际运行情况做针对性配置调整和优化。经过实践中的逐渐优化过程,OceanBase 就能发挥出很高的效率,相应的优化措施也可以沉淀为具体的技术规范。企业使用 OceanBase 的时间越久,积累下来的领域知识也会越丰富,从分布式数据库中获得的收益自然就能水涨船高。在实际使用过程中,也发现 OceanBase 的 LSM Tree 压缩技术可以极大地节省原先的存储资源成本,某些特定场景下甚至可以节省 90% 以上,这也给整个项目组带来实实在在的成本节省。

03 分布式数据库在未来如何改进?

谈到对分布式数据库未来发展的期待,周传凯希望相关产品的定价能够更加实惠便宜。从天津银行的实践过程来看,业务系统的云端迁移花费的成本巨大,系统改造、重构和新业务开发都需要资源投入。在这样的背景下,留给分布式数据库的预算必然吃紧,这时如果产品本身的价格能够更加优惠,银行就能加快原有业务的升级步伐。

另一方面,如果分布式数据库能够更多兼容传统数据库的功能、语法和特性,也能有效节省客户上云改造的成本和时间。例如 Oracle 的 AWR 运维性能分析报告,以及调优功能逻辑模块,都是分布式数据库可以参考借鉴的技术特性。从产品层面,周传凯也期待与 OceanBase 团队的合作能够不断引入更多前沿技术理念和新的产品功能,并更早转化为实际的业务收益,实现降本增效的目的。

04 分布式数据库是行业大势所趋

从行业层面来看,周传凯认为分布式数据库的全面普及已经是不可阻挡的趋势。即便在金融行业这样业务要求非常高的领域中,分布式数据库也已经具备了替代传统核心的能力。在云原生浪潮的推动下,分布式数据库作为云原生架构不可分割的一环,必然会逐渐取代传统单体数据库成为企业数据库的主流选项。但在具体的落地过程中,分布式数据库产品开发商和客户仍需要通力合作,根据实际业务需求和实践中遇到的挑战对产品进行持续打磨和优化,不断降低产品成本和部署难度。

长远来看,从单体架构发展到微服务、云原生、分布式软件体系,背后都是不断增长和愈加复杂多变的业务需求推动的。随着业务规模的扩张,企业对数据价值和安全性更加重视,分布式数据库天然具备的高可扩展性、高可用性、灵活性、高性价比等优势会越来越凸显。在金融行业,金融科技兴起,行业全面转向云原生的大背景下分布式数据库成为主流也只是时间问题。天津银行与 OceanBase 的合作经验为行业在这一领域的探索提供了很好的榜样参考,也标志着分布式数据库在金融业务深水区——核心业务应用领域即将迎来大规模普及,为企业数字化转型带来可观价值与驱动力。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,大概有三种登录方式:
9465 0
分布式数据库选型——数据水平拆分方案
本文尝试从数据的角度总结分布式数据的复制(replication)和分区(partition)技术原理和方案,其中分区也有称为分片(sharding),希望能引起读者一些思考,在分布式数据库选型中能注意这些细节的区别,选择适合业务的数据水平拆分方案。
2898 0
阿里云开源PolarDB数据库,与社区共建云原生分布式数据库生态
5月29日,阿里云开发者大会上,阿里巴巴宣布开源云原生数据库能力,对外开放关系型数据库PolarDB for PostgreSQL 源代码,服务百万开发者,与社区开发者一起共建云原生分布式数据库生态。“我们希望将阿里云在云原生分布式数据库技术上积累的丰富经验,通过标准技术组件和系统的方式开放出来,共建开源数据库生态。”阿里云智能数据库产品事业部负责人李飞飞表示。
18951 0
DTCC 回顾:技术破局,分布式数据库创赢未来
2020 年 12 月 21 日第十一届中国数据库技术大会(DTCC 2020)于北京召开,蚂蚁集团 OceanBase 资深总监、北京奥星贝斯科技研发中心总经理杨传辉,带来了《OceanBase 原生分布式数据库》的主题分享,以下为演讲实录:
956 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
20132 0
李飞飞:云原生分布式数据库面临哪些机遇与挑战?
12月3日,由阿里云CIO学院主办的【2020中国企业数字创新峰会】在杭州举行。400位企业CEO、CTO、CIO齐聚一堂,共同探讨企业数字化转型经验。阿里巴巴集团副总裁、达摩院数据库首席科学家李飞飞发表了题为《云原生分布式数据库系统——挑战与机遇》的演讲,探讨云原生数据库的价值和商业应用。
905 0
OceanBase 领航分布式数据库风潮,邀你数聚精彩!
Gdevops 2020 全球敏捷运维峰会将于2020年12月11日在北京新世纪日航饭店盛大召开,OceanBase 核心研发团队很荣幸受邀参与到本次 2020 Gdevops 峰会中,OceanBase CTO 阳振坤 和 OceanBase 资深技术专家 潘毅 将为参会嘉宾共同论道原生分布式数据库,分享 OceanBase 的成长之路。
1056 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
18420 0
分布式数据库如何实现 Join?
PolarDB-X 不仅语法兼容 MySQL,作为分布式数据库,也力求保持与单机数据库一致的使用体验。在分布式场景下,Join 的两张表可能都是分布式表,因此需要通过多次网络请求获取相应的数据。如何高效地实现这一点呢?
791 0
民生银行核心分布式改造实践分享
在没有分布式技术之前,国内银行的核心系统面临着很多挑战。以民生银行为例,2013年的时候每天交易量约1800万笔,整个项目的硬件和运维投入达到1.1亿多,成本非常高昂。中国民生银行总行信息科技部总经理牛新庄做了题为《民生银行核心分布式改造实践分享》的演讲,主要分享民生银行近几年采取的核心系统分布式改造成果。
6495 0
977
文章
0
问答
来源圈子
更多
蚂蚁OceanBase数据库团队,用于OceanBase技术原理、运维经验和案例分享、对外交流。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载