深圳计算科学研究院核心骨干,崖山科技公司团队创始人之一、技术副总裁欧伟杰受邀InfoQ《C位面对面》,介绍100% 自研的崖山数据库YashanDB是如何突出重围的。
谈突围 “根”技术和产品力 缺一不可
InfoQ:据2023年初国内一家媒体的统计,国内目前有200多家数据库厂商。您认为国产数据库产业需要克服的关键难题是什么?YashanDB作为一款面世不久的数据库产品,有何独特之处或竞争优势?
欧伟杰:国产数据库现在面临三大主要挑战:第一,数据库系统作为基础软件领域,需要有非常深厚的理论积累,且理论仍在不断发展中,如果缺乏原创的基础理论支撑,将难以在国际层面实现技术引领;第二,数据库作为核心基础软件,其研发过程对团队的工程实现能力提出严苛要求。团队要能够从零自主构建系统,并深入掌握技术发展的方向,向用户提供安全、可靠且持续进化的产品,满足行业应用不断升级的需求;第三,需要有能够满足客户需求的强大产品力,技术是实现我们客户需求的手段,而做一个真正的产品需要把客户方方面面的需求都考虑周全。如果产品只能满足特定场景,一旦面向更大规模、更复杂应用场景需求,很难规模化复制,那产品力其实是不够的。
最后回到YashanDB自身,原创理论突破和核心技术全栈自研是我们的核心优势,也是我们的独特性所在。
上世纪的70 年代以来,在传统数据库理论的基础上催生了如Oracle等成熟产品,而随着大数据时代的发展,传统计算模式面临性能和算力瓶颈,亟需新的计算模式变革。崖山数据库系统(YashanDB)在经典数据库理论基础上实现了原创理论突破——如有界计算、近似计算、异步并行执行、跨模计算等,在面向海量数据的处理、大并发事务处理,以及不同模态数据的混合查询等不同场景时都具备领先优势,推动应用创新走向纵深。
那为什么要“从零开始”?就像市场上打造一个航空发动机,会选择将零部件交给其他厂商去做,但这样做难以把控发动机持续稳定高性能的运行,而我们在开发全自研基础软件的过程中,不基于开源自建,相当于所有原材料、零部件等全部自己研发、生产,要从数据库未来的演进中去深入思考、构建。这也是我们给客户的一种承诺,我们的产品是从第一行代码开始写,底层技术是可控的、服务支持是可控的,交付给客户的是一套完全自主可控的解决方案,让客户的国产化转型升级之路更有信心。
谈落地 一比一平替O 为客户提供“兜底能力”
InfoQ:据2023年初国内一家媒体的统计,国内目前有200多家数据库厂商。您认为国产数据库产业需要克服的关键难题是什么?YashanDB作为一款面世不久的数据库产品,有何独特之处或竞争优势?
欧伟杰:目前,我们产品已经与政务、金融、能源、交通、智能制造等关键行业建立了合作,包括深圳市政府、华润集团、深燃集团、深智城等代表性企业。
某个银行的项目为例,当时我们仅用3周时间完成快速迁移,上线多个业务系统,实现Oracle数据库平替。该银行的业务系统已在Oracle上稳定运行多年,希望通过一款国产数据库产品进行“改造”,但需要做到减少业务重写、系统平稳切换。“改造”工作将面临巨大的挑战,难度在于其业务逻辑主要通过Oracle数据库里大量内置的高级特性来实现,代码量十分庞大。对此,我们通过我们的崖山迁移平台YMP,自动化地对系统进行兼容性评估、数据迁移、一致性校验等工作,凭借对Oracle的高兼容度最终不到3人周即完成11万行代码的平滑迁移,大大缩短了客户原本数月的交付预期,创造了数据库国产改造新速度。迁移能力之外,性能表现更是验证数据库产品能力的核心指标。对此,我们的客户又提出了在同等硬件配置下做一个“性能PK”。与Oracle对比,在单业务流程中崖山数据库响应时间较Oracle快50%,大大提升业务处理效率,且并发吞吐量也是Oracle的1.3-2.4倍,意味着相同时间可以处理数倍业务请求,扩展了原有业务的处理上限。
对此YashanDB交出了一份满意的答卷,在替换原有的数据库系统后,YashanDB不仅保障了迁移过程的平滑安全,更在多个关键指标上实现了性能的提升,是“1比1”平替的较好选择,对客户来说是个“降本增效”的事情。
InfoQ:前不久,YashanDB 举办了 2023 新品发布会,我们看到了团队在技术、产品方面取得了很多突破,尤其是共享集群产品。YashanDB共享集群其实是瞄准核心系统替代的一款产品,团队为什么认为该产品可以突破目前国产替代的困境?它具备哪些关键优势?
欧伟杰:核心系统的高可用能力和业务连续性是用户最为关心的问题,共享集群可以实现当某个节点出现故障时,其他节点无感接管业务的能力,这对业务本身而言上了“双保险”。
1:1平替是分布式数据库的重大挑战之一。具体来说,分布式数据库和共享集群在“高可用”方面的底层逻辑是不一样的——共享集群的数据是一体的,所有节点是完整的数据集合,而分布式的单个实例是一个数据分片,二者的业务复杂性不在一个层次上。那么对于传统业务,特别是银行的核心交易系统,存在多系统之间的业务交集,其复杂性相当之高。如果要把这种基于集中式的业务改造成一个分布式的业务,对传统业务而言是一个颠覆式的改造,风险很高。所以,对用户来说,共享集群是实现“1:1”平替较为理想的方案。
作为商业数据库的技术的制高点,共享集群到底难在哪里?共享集群本身的难度在于它的存储组织,会涉及到数据的存储、事务处理等,是交易型系统的核心底层机制。如果在开源技术的基础上去开发,受限于其架构和技术路线,往往很难实现共享集群这一形态。实现共享集群,需要对存储等底层机制和核心技术有完全的掌控。
在去年,我们经过原型验证和多次迭代,成功推出共享集群产品,提供面向应用无状态的计算扩展能力,透明多写多读,像使用集中式一样简单方便;另外,在高效处理的数据规模、事务处理吞吐量和高可用能力等关键指标实现与国际标杆Oracle并跑并迈向领跑,高可用能力方面,RPO(数据丢失量)为 0,能够确保故障切换不丢数据,故障恢复时间 RTO 小于 20 秒;同时,替换过程业务不中断、上层应用无改造,完全满足核心系统对高可用的要求。当前产品也已经应用在金融、运营商等国计民生领域中,有效降低“断供”风险,真正实现高端应用场景1:1平替。
谈趋势 跨模计算已成为AI时代的下一个重要考验
InfoQ:现在业界对于多模态数据的处理也做了很多探讨,那么YashanDB对多模态数据的处理的整体的思考和洞察背后的逻辑是什么?
欧伟杰:我最早接触到的一款多模数据库产品是微软的Cosmos DB,它虽然是多模数据库产品,但每一种模态的数据是基于烟囱式的方式,彼此之间不进行交互,这是原有多模数据库产品的一个局限性。但我们现在更多提到是“跨模态”,即不同模态的数据之间进行交互、计算。就像这几年大家都提到的“湖仓一体”,它在一定程度上可以实现跨模态,但要对两个模态数据进行计算,需要先统一成同一模态,再进行计算,这在实时性、转换成本方面还是比较高的,因此“湖仓一体”也存在一定的局限性。而针对这一问题,YashanDB的原创跨模计算理论,在研究更多不同模型之间的对象关联,基于跨模实体链接技术,提供基于语义联结的统一查询方法,避免数据模型转换,提升查询效率,真正实现了海量多源多模异构数据的高性能查询。
同样的,AIGC也涉及多模态或者跨模计算,也依赖一定的语义联结。建立语义联结,一种方式是给图片、文本打标签,以产生某种匹配;另一种方式就是通过encoder,把不同模态的数据变成语义上对等的一些向量,进而通过向量的相似性计算得出语义距离。但这些方式基于机器学习模型也有一个弊端——存在不可解释性。而针对这一问题,YashanDB把机器学习和规则相结合,可以实现增量计算,避免了前面所说的两种模态数据之间的全量转换和计算,从而实现计算成本及实时性最小化,这将对传统跨模计算技术产生颠覆性突破。