作为一名在Oracle相关工作岗位打拼了十几年的从业人员,我不清楚如何说服客户放弃使用多年的Oracle,尝试国产数据库?
国产数据库性能拿什么跟Oracle竞争?
跨国产数据库迁移经验为零,我能做好国产数据库替代工作吗?
……
“2019年,我开始进军国产数据库领域,从客户国产化替代意愿到新产品的学习,问题远比我想象的要多。”云和恩墨西区行业架构部副总经理杨俊笑着说。
“国产数据库‘非做不可’,但我有太多疑问”
“在市场与政策的双重加持下,数据库国产化成为大势所趋,中国企业只有筑牢根基,早日实现核心技术安全可控,才能真正做到信息安全。”谈到为什么进行国产化替代时,杨俊说这是一件“非做不可”的事情。
随着数字经济的发展,数据库的应用日益深入,在关系国计民生的各行各业中,正在发挥越来越重要的作用。但是现阶段,国内大部分政府、企业主要采用Oracle等国外商业数据库,维保成本高,核心能力依赖国外,无法做到自主可控。信息安全是关系到国家安全和社会稳定的重大问题,为了实现数据安全,核心技术国产化成为了绕不开的话题,而数据库作为三大核心基础软件之一,承载着所有企业最核心的数据资产,国产数据库的替换必然承担着打破国外技术封锁、 创新加码国产化进程的重要任务。经过近四十年的探索,2019年国产数据库迎来了蓬勃发展。
对于整个行业来说,2019年是国产数据库元年,众多产品如雨后春笋般涌现,一片欣欣向荣的景象,党政军基于「安可」和「信创」的要求,已经开始OA等系统开始做全面的国产化替代,通信运营商、银行、保险等多个行业也陆续探索出适合自身企业的“去 O”方法论和实现路径。对杨俊来说,这一年给予的是职业生涯的重大机遇和挑战。
“我没有想到自已有一天会进入国产数据库领域发展。整个行业蒸蒸日上,让我意识到这是个机会。”这个在Oracle相关领域有十余年工作经验的技术老兵感概道,“但当时的我有太多的困惑需要逐一去思考、去探索、去解决。”
三年前,国产数据库产品已经有很多,但大部分客户对其是缺乏信心和信任的。“毕竟Oracle在很多企业系统上平稳运行了多年、技术先进、文档丰富、生态成熟、还深受开发者的青睐,而反观国产数据库产品发展滞后、技术创新不足、生态环境闭塞、应用场景单一、稳定性、性能都无法让市场信服,同时又缺少普片可借鉴的落地经验,客户对替换选型存在顾虑也是情理之中。更何况,随着政策的方向,市场上一下子涌现出大批量的国产数据库,呈现出百花齐放的局面,我更加迷茫了。”杨俊说。
除了这些问题,很多技术人员之前的迁移工作主要是在国外商业数据库之间,涉及到跨国产数据库迁移的经验几乎为零,想要去学习国产产品,相关文档、视频等资料也面临碎片化不成体系的局面。
“想,都是问题;做,才有答案”
“想,都是问题;做,才有答案。经历了三年国产化替代相关工作后,这些曾经让我感觉迷茫的问题也渐渐有了答案。”
2016年,杨俊入职云和恩墨。那一年,公司召开了首场全系产品发布会。“当时,云和恩墨实行的是‘生态软件+服务’双轮驱动战略,主要业务集中在提供数据库生态工具和服务。加入公司后,我担任过交付、销售、售前等职位,工作主要围绕国外的商业数据库展开,直到2019年。”他说。
2019年,云和恩墨开始战略转型,产品研发向基础软件和数据智能领域延伸。这也成为杨俊转向国产数据库的一个重要契机。“2020年9月,公司基于开源开放的openGauss内核进行增强提升,推出一款安稳易用的企业级关系型数据库MogDB。真正围绕客户核心数据存储的关键载体的安全可控,从信息安全和技术自主出发,通过构建完整的技术服务生态、可靠的产品服务能力以及上下游国产厂商的适配联动,充分发挥国产鲲鹏多核处理器的极致性能,面向终端用户提供金融级的全栈国产数据库替换服务。我也有机会了解到更多国产数据库的替代选型方向以及实施落地方案。”
跟随公司的成长步伐,三年多的时间里,杨俊在探索中总结出了一些国产化替代的经验。他认为:“数据库产品选型及替换不仅涉及到流派、协议、生态、类型、技术、成本等多个方面,还应该根据用户的实际场景进行综合考量。客户在选择产品时要依托自身特定的场景和业务特点,关注性能、兼容性等因素。”杨俊说,“除了产品本身,选型也要多了解产品的社区生态,这对国产数据库未来稳定运行至关重要。”
“第一步:思想上的认同,从根技术和根社区保证基础软件安全”
随着软件根技术的垄断和由疫情等社会重大事件带来的全球政治和产业链的撕裂,人类社会正在从根本上逐新摆脱对单一根技术的依赖,各国正在选择和发展适合各自国家独立发展的软件根技术,谋求在未来智能社会发展中不受制于人。研究我国切实可行的软件根技术发展模式和路径,具有十分重要的战略意义。习近平总书记在中共中央政治局第三十四次集体学习时强调“要全面推进产业化、规模化应用,重点突破关键软件,推动软件产业做大做强,提升软件技术创新和供给能力。”根技术概念的提出,有利于产业界迅速聚焦攻关方向,便于产业资源的集结和对关键技术的重点突破。
在数据库领域,华为将 10 年来自研的 openGauss 数据库企业级产品能力作为国产数据库的根技术,通过开源向业界开放。openGauss 提供高性能、高可靠、高安全版本,跟合作伙伴共同完善企业级特性,通过构建生态稳步推进商用。汇聚社区伙伴及广大技术爱好者,基于 openGauss 发布了 10 余家商用发行版。实现了国产数据库从企业主导到产业主导的重要转变,促进国产开源项目从开放治理走向自治繁荣、枝繁叶茂。而云和恩墨公司发布的 MogDB 产品也已在金融行业获得了多家机构的采用。
“第二步:源流上的认识,从国产数据库源流和发展思考”
回顾国产数据库的近40年的发展历程,大致可以分为4大流派,即学院派、互联网派、创业派、ICT科技派和4大泉源,即关系型数据库理论、Google的分布式理论、MySQL、PostgreSQL泉源。
综合四大4大流派来看,杨俊说“学院派是最早一批国内自主研发关系型数据库的企业,其发源于上世纪90年代,而且都是以大学、科研机构为主,起步早,生态建设相对丰富完整,供应链比较完善,但是在过去很难找到关键普片的应用场景。互联网派是近年随着互联网和开源技术的蓬勃发展,以自身业务应用场景为背景,借助多种开源技术,依托云平台,展开自身场景的磨练,推出的商业版本,解决了自身应用的问题,不足是生态工具链不够完整,对于中小企业来说门槛较高。同时新兴的独立数据库创业派以及国内头部的ICT科技派企业也依托自身强大的技术沉淀和积累推出了一系列具备竞争力的国产数据库,具备领先的技术洞察和充分的商业竞争力。”
从4大泉源来看,杨俊说“开源开放,自主可控的数据库更具备路线竞争力;选择 以类BSD协议开源的PostgreSQL作为国产化的根源,在知识产权上没有约束和风险,相较于被Oracle收购了的MySQL更为安全。BSD 许可证给予使用者很大的自由,基本上使用者可以"随心所欲,为所欲为",包括自由的使用、修改源代码,也可将修改后的代码作为开源或闭源软件再发布。而MySQL对类库引用,修改后的代码以及衍生代码都必须采用 GPL 协议,即必须是开源和免费。所以,今天PostgreSQL成为大量国产数据库迭代的一个起点”
“第三步:技术上的选择,从自身场景和业务特点出发”
杨俊说:“随着数据库领域的高速发展,越来越多的产品呈现在市场上,不同的数据库产品,其品类特征、适用场景、评测标准也不尽相同。
拿集中式和分布式数据库的选择来说,分布式数据库更适用于海量数据弹性扩展业务,如互联网游戏,互联网金融,电商,社交网络等敏态业务,海量数据的OLAP业务,如针对海量数据的实时分析及查询等业务,这类业务对数据的强一致性要求不高,但是对数据存储量有极高的需求、非结构化数据、物联网数据等。分布式数据库在灵活性和扩展性方面具有优势,一方面分布式根据其应用程序的特定需求选择软硬件的自由,不必因为共享IT架构而做出妥协,另一方面分布式IT架构天生自带可扩展属性,能够根据业务规模实现无限弹性扩展。而集中式数据库更适用于一致性要求高,如金融,WMS,HIS,稳定性要求高、复杂SQL查询快、性价比高、开发简单等场景,集中式数据库可以利用位于系统中心的服务器统一管理所有的共享资源 ,并处理来自用户的请求。集中式数据库积累了大量的实践经验,在强一致性、稳定性、迁移成本和运维管理方面都更胜一筹,而且各资源独立,应用隔离性好,数据安全性更高。Oracle 即集中式数据库的典范。我们通过大量测试,可以看出在相似硬件配置环境下,绝大部分集中式数据库都有着比分布式高出一倍甚至几倍的处理能力。”
对于数据库的高可用和高可靠方面,不同的数据库对于一致性和高可用的实现原理存在较大的差异。例如以Oracle,PostgreSQL 为代表,采用记录和传输物理日志来保证多节点间的数据一致性和高可用;而以 MySQL 为代表的服务端和存储引擎端分离的数据库架构,则通过物理日志来保证实例数据一致性,在多节点的数据库同步上则采用看了逻辑日志;以 Tidb,OceanBase 为代表的分布式数据库,则是利用分布式协议来保证多个数据副本之间的一致性。
不同的方案在同步效率,同步延迟和适用场景上不相同,掣肘因素也不一样。物理日志记录和传输最大程度的保证了数据的一致性复制效率也比较高;逻辑复制相较于物理复制灵活性更高,日志量相对少。但无法严格保证节点间数据一致性;分布式数据库通过分布式协议同步事务日志,多数派写入成功事务才能提交,确保数据强一致性且少数副本发生故障时不影响数据的可用性。这样在分区的情况下保证了数据一致性,但需要数据的副本数至少为3,空间消耗较大,硬件配置要求高。
除此之外,在技术选型上,杨俊还说“国产数据库的性能容量支撑也是关键,在考量数据库性能的时候,除了可以通过公开和实际压测的TPCC数据,横向度量多个候选数据库之间的基准性能之外,还需要针对生产环境中的典型应用场景进行压力测试。同时在选型初期也需要关注国产数据库的容量支撑,如果需要替换的 Oracle 容量较大,则需要考虑选型数据库架构是否能支撑原有数据库的容量。单机数据库如果不连接外置存储,理论上只能支撑服务器能插入的磁盘、SSD 卡容量的总和。分布式数据库理论上无容量限制,但节点数过多会带来性能的衰减和增加运维的复杂度。
而对于Oracle数据库的特征依赖方面,杨俊说“如果之前的业务系统将大量的业务逻辑,通过数据库来实现,例如通过存储过程、函数、触发器等来实现业务逻辑;利用 dblink 实现远程数据访问通道;利用复杂的对象来实现某些特定场景下的性能优化或者开发便利性,那对替换数据库所不支持的部分,需要有相应的解决方案——改写应用,或者通过数据库内的其他方式迂回实现。”
兼容性层面,对于国产数据库的替换,不仅需要关注数据库对象本身的兼容性,还需关注应用对象的兼容。数据库端主要针对表、视图、索引等基础对象和存储过程、触发器等高级对象,在不丢失语义的情况下对所有对象进行转换,使迁移替换到目标数据库后应用的功能和性能满足要求。如果遇到无法进行转换的对象,需由人工介入进行改造和规避。对应用程序中包含与目标数据库不兼容的SQL语句为应用开发方提供改造工具或改造指南,在不改变业务逻辑的情况下,对驱动程序进行适配,对应用代码进行改造。
“第四步:产品的成熟度,从内核研发团队、金融级案例考量”
数据库作为最核心的三大基础软件之一,产品的安全稳定是重中之重,在对产品成熟度进行考量方面,杨俊说:“一个产品从诞生到成熟,中间必然要经过严苛的打磨,而产品内核的研发工作需要高密度核心人才+大工程量的投入,如果单纯只是拿开源代码来加个壳,封装一下就变成了自研的国产数据库产品,对于后续的持续的研发、迭代更新、以及相关补丁发布的提供都不具备能力,那么这条路是必然无法走远的,以华为openGauss为例, 十年磨一剑,经历了内部自用孵化阶段 -> 联创产品化阶段 ->openGauss集中式版本开源 这3个阶段。云和恩墨更是汇聚了行业顶级的数据库研发人才,以来自Oracle、IBM、华为、英特尔等国际厂商核心人才为主,同时建立贴近人才的分布式组织架构,按照共担共享的创业创新企业价值观,打造了兼具创新与活力、专业与专注的数据库核心研发团队。基于openGauss 内核增强打造了满足金融级核心系统高并发、强一致、高可靠、稳定运行、自主可控要求的企业级商用MogDB数据库,助力国内邮储、民生、哈尔滨银行等金融行业核心业务去Oracle、自主可控、安全稳定的国产化之路”
“第五步:生态上的繁荣,从持续建设国内数据库生态开始”
在当下国产数据库的发展阶段,生态是重要的推进力量。杨俊说“生态决定了企业招聘人才的难度和二次开发的成本以及后续运维成本。特别是技术力量较为薄弱的政府及中小企业,对专业厂商的依赖度也相对较大,因此对目标数据库厂商的生态要求更高。社区活跃度、行业广度、易用性、完备的文档/书籍、应用支持、硬件适配等都是考量数据库生态繁荣的指标。在替代选型的时候,为了考量总体拥有成本(TCO),选型产品厂商的生态建设也是重要考虑因素。
“第六步:售后是关键,从本地化团队+生态工具+可落地流程说起”
在谈起国产数据库的售后问题时,杨俊严肃的说:“任何没有售后支持的产品都是耍流氓,我们非常清楚,业务连续性保障能力,是所以业务系统最核心需求目标,最大化的保证业务连续性,保证系统为业务运转提供持续可靠的支撑能力是关键中的关键,尤其数据库作为承载业务的基石,遇到故障时,需要尽快排除。那么任何一个国产产品具备本地化的售后服务支持团队就尤为重要了,除此之外故障发生时,快速诊断和定位能力决定了问题处理和解决的时效,也是直接影响业务连续性的关键能力;其次,为降低故障发生和前置化运维,风险或隐患的及时发现与快速分析能力也是必须的;为此,国产产品具备良好的生态自动化工具,在对故障或问题的快速发现、快速诊断定位、快速处理的协助和效率都有准确度的提升,也具备分析信息展示、逐层递进式根因下钻以及一定的智能化分析并给出处理建议的能力,有效缩短故障或问题从发现到解决的“黄金时效”,能够实现对业务连续性的强力支撑。而在国产替换的实施到运维过程中,端到端可落地方法论、最佳实践的部署、异构平台的数据迁移、数据一致性校验等售后工作需要真正能够帮助客户实现科学严谨的国产替换,全流程支撑保障。
最后,杨俊用一句话总结了他的看法:数据库选型需回归到客户最本质的核心需求,即内核持续稳定、性能超出同行、技术路线持续保障且不被绑架、相关上下游繁荣联动的产品。
“公司的独特优势使我对未来充满信心”
“一次次参与数据库国产化解决方案,看到更多的落地实践,我对未来越来越有信心了。”杨俊说到,“其实,产品替换只是开始,稳定运行才是用户最重要的目标,云和恩墨在这方面有独特的优势。”杨俊提到的公司优势主要来自三方面。
从产品来看,云和恩墨的MogDB数据库基于openGauss 内核进行研发,目前已发布了3.0版本,持续打造高性能、高压缩、高可用、高安全、全密态、一体机、自运维等一系列企业级数据库核心能力,满足用户从核心交易到复杂计算的业务需求。此外,产品还提供了配套的企业级高可用组件MogHA,异构数据库迁移工具MTK,图形化管理工具MogDB Manager等,使数据库替换更平稳。
从生态来看,云和恩墨发展经历了服务、生态软件、内核产品三个阶段,使公司具备了提供端到端的全生命周期的替代服务的能力。“另外,公司积极投入openGauss社区、和行业大生态中,减少了客户国产化替代对生态的顾虑。MogDB在多家金融、能源、运营商客户的替代落地实践是这些优势的最好证明。”
从售后来看,云和恩墨打造了目前国内顶尖的内核研发团队和华为鲲鹏产业、openGauss 根技术实现优势互补,依托十年来在数据库领域的传统服务能力以及在全国34个省份构建的本地化服务团队以及完整的工具链体系,为客户构建安全、连续、高效、敏捷、经济的国产数据环境。
行远者必自迩,登高者必自卑。“云和恩墨在支持国产数据库发展方面一步一个脚印,边探索,边积累,走出了一条独特的发展之路。我也在这条路上找到了属于自己的答案。”




