作为贵州贵阳本地成长起来的标杆企业,贵州易鲸捷信息技术有限公司日前从美国商务专利局获得了“混合乐观锁和悲观锁的数据库事务并发控制”发明专利证书。这项技术攻克了全球分布式数据库领域最难解决的业内难题之一,即分布式数据库最棘手的多用户并发访问冲突问题。
图为贵州易鲸捷获取的美国专利。
据悉,易鲸捷自2015年成立就迈入分布式数据库“新赛道”,成为全球最早推出下一代融合型(HTAP)分布式数据库的企业。依托贵州、贵阳发展大数据产业的天然沃土和优势,易鲸捷成长为了一家技术突出的国产数据库厂商。
现有数据库技术中,悲观锁和乐观锁是互斥的两种并发控制技术,采用了悲观锁实现的数据库,便不能同时使用乐观锁机制,反之亦然。而此次贵州易鲸捷获得的这项专利,是基于乐观锁机制,融合了悲观锁功能,很大程度上解决了各种场景下并发控制的性能问题。
在国际厂商把控全球数据库市场份额的当下,贵州易鲸捷等拥有自主可控核心技术的国内数据库厂商,通过布局分布式数据库的新赛道努力追赶,打通了我国关键行业分布式数据库技术的最后一公里。
攻克重大技术难题
数据库技术诞生于上世纪60年代,与中间件、操作系统并称为全球三大基础软件技术。起初的数据库技术是以垂直扩展为理念进行设计的集中式数据库,而在集中式数据库技术上,我国起步相对较晚,一直处于追赶状态,目前仍与国外顶级厂商存在巨大差距。
不过,在过去十多年互联网和云计算的共同推动下,分布式技术得到了长足发展,为新一代分布式数据库的发展提供了新的技术和应用场景支撑,而分布式数据库作为未来数据库技术发展的主赛道初露端倪。目前我国已涌现出一批极具研发实力的分布式数据库厂商,而以贵州易鲸捷为代表的头部厂商此次没有输在“起跑线”上。
虽然贵州易鲸捷成立的时间不长,但其核心研发团队却拥有30余年的技术沉淀与传承,并在金融数据库核心业务领域打造出了“易鲸捷模式”,上述发明专利便是贵州易鲸捷在银行核心交易系统项目中不断实践与积累所获得的重大技术突破。
具体来看,在数据库中,当多个用户/进程/线程同时进行操作,要保证事务的一致性、隔离性,以及最大程度的并发是数据库开发者常常要考虑的难题,如果并发控制不善,将会导致数据的脏读(读到未提交的数据)、幻读,甚至造成数据更新丢失的情况。
据贵州易鲸捷银行项目研发负责人介绍,乐观锁并发控制(即OCC,全称Optimistic Concurrency Control)是一种解决写写冲突的无锁并发控制技术,主要适用于低数据争用的环境。但银行核心业务是一种典型的高并发OLTP场景,根据银行体量不同,TPS高峰期会在几百几千甚至更高级别。这意味着,在同一个时刻,银行某个账户大概率会出现被多个并发同时访问或更改,而银行核心业务场景对交易的成功率一般要求为99.99%乃至更高,即一万笔交易中只允许失败一笔。
该研发负责人进一步表示,在乐观锁并发控制模式下,由于冲突是在事务提交时检查,如果检查到失败事务即报错,这虽然保证了事务的一致性,但会导致交易失败率增加。因此,贵州易鲸捷针对银行核心业务打造的QianBase数据库,在支持OCC的基础上,又增加了“悲观锁”并发控制技术。在“悲观锁”并发控制模式下,发生冲突的修改会进行等待,直到另一个事务提交成功,被等待的修改随之也会继续执行,这大大增加了银行核心业务的交易成功率。
目前,贵州易鲸捷QianBase系列数据库可同时支持乐观锁与悲观锁两种并发访问控制技术,适用于不同的业务场景,而这项技术已在贵阳银行沙箱项目与贵阳农商银行双库并行项目中获得应用。
贵州易鲸捷CEO武新表示,对易鲸捷此次获得的分布式数据库核心技术美国专利,用悲观锁与乐观锁混合模式,优雅的解决了分布式数据库最棘手的多用户并发访问冲突问题,这是全球分布式数据库领域最难解决的业内难题之一,为支持复杂业务场景下的长事务并发奠定了基础,这也是分布式数据库能够透明支撑核心交易系统的关键技术之一。
据了解,除此次从美国商标专利局获取的这项发明专利外,贵州易鲸捷目前还有多个国内外专利在申请过程中,其中覆盖了数据库产品的计算层、连接层和分布式事务管理等模块/组件。
聚焦银行核心业务
在当前全球数据库市场中,以微软、亚马逊、Oracle等为首的国际厂商处于垄断地位。Gartner数据显示,2021年此三家数据库巨头分别占有24%、23.9%和20.6%的市场份额。在国内市场中,近年来,我国多家金融机构单一来源均采购的是国外数据库厂商产品。
数据库行业专业人士表示,目前国内金融行业核心交易系统数据库采用Oracle产品和IBM小型机的比例在80%以上,而基于国内数据库的银行核心交易系统数量还不足10家,尚处于探索阶段。
贵阳银行与贵阳农商银行便是首批“尝鲜”的企业,其核心交易系统试点项目均由贵州易鲸捷研发。截至目前,贵州易鲸捷已将首创的双库并行技术应用到了贵阳农商银行项目中,使得银行前端的柜面交易、支付平台,以及核心交易的完整核心系统,均可并行在易鲸捷数据库与Oracle之上,互为灾备且秒级互相切换,真正做到了保障国家信息安全与银行业务安全。
此外,贵阳银行核心交易系统沙箱项目从2020年4月1日上线至2021年3月项目成功结项,始终保持稳定运行,交易成功率在99.999%以上,准确率达到100%。在此基础上,贵阳银行启动了全新一代全栈国产银行核心业务系统建设,采用易鲸捷新一代云原生分布式数据库QianBase作为底层技术支撑,通过系统调优,易鲸捷数据库已完成与国产IT底座(华为鲲鹏、飞腾、长城、麒麟、东方通等)的深度适配和优化,系统各项指标在国产IT底座上已达到国内领先水平。
不仅如此,贵州易鲸捷公司还聚拢了一批国内优秀的数据库领域技术专家,实现了团队研发能力的快速提升,在产品架构设计和代码实现上形成了一支具有强劲实力的团队。
武新表示,在过去的30年里,数据库技术和市场已形成了高度垄断,而云化、分布式架构是打破“旧世界”的突破口。未来数据库比拼的是综合实力,主要包括产品能力、真实场景打磨和从传统IOE架构平滑迁移到分布式架构的方法和路径,以及类似金融核心系统的端到端的全栈国产化解决方案。目前贵州易鲸捷在金融领域打造的“易鲸捷模式”,可以帮助各类金融机构大大降低试错成本,具有重大标杆意义和推广价值。