三个自主 | 产品自主研发:Kingbase的进化之旅

2024-01-01 10:20

本文主要是介绍三个自主 | 产品自主研发:Kingbase的进化之旅,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

dd763171b13c187861e2ea975078537a.gif

20世纪90年代开始,计算机产业飞速发展,从以研制计算机硬件设备为中心转向以数据处理和数据管理为重点。我国对于建设数据库、数据仓库和数据挖掘等应用的需求不断加深。

为保证数据的安全性、可靠性,由北京大学和中国人民大学负责开发数据库管理系统的核心层,中国软件与服务总公司和华中理工大学负责研究应用开发工具,各单位分工合作,联合研制出了具有自主版权的实用关系数据库管理系统COBASE。

源起PBASE

整体技术水平达到国际先进水平

在王珊教授的带领下,中国人民大学以COBASE为核心,以各种数据库体系结构为依托,先后开发出教学数据库Easybase,嵌入式移动数据库系统“小金灵”,以及高适应性并行数据库系统PBASE。

d5250b90e5786af69c43ee6d0deabc90.jpeg

1996年并行数据库管理系统PBASE鉴定会

PBASE作为国内第一个并行数据库管理系统原型系统,实现了一个完整的高性能并行处理方案,具有鲜明的独创性,整体技术水平达到国际先进水平。在基于线索的并行操作算法、并行封装等关键技术上达到国际领先水平。

然而,对于市场而言,突破核心技术并不意味着可以商用,PBASE依旧不是一个产品,在数据库编程接口,包括SQL、PLSQL、JDBC、ODBC等多个领域,差距尤其巨大。

诞生KingbaseES

国产大型通用关系型数据库产品

为更好地将科研成果进行市场化转换,1999年,在王珊教授的带领下,人民大学一批从事数据库研发的学者创立了人大金仓公司。

人大金仓融合Easybase和“小金灵”的科研成果,继承PBASE自主创新的基因,以其独立自主的研发团队、技术路线和产品规划,在产研一体化的基础上,成功研制出了大型通用关系型数据库KingbaseES第一代产品,也为之后产品自主创新之路奠定下夯实的基础。

KingbaseES在诞生之初就对标国际顶级的数据库产品,希望有朝一日能够超越对手,成为世界级的伟大产品!

伟大的产品并不是生而伟大

而是在实战中“进化”而来的

在基础软件领域,没有任何一位产品的设计者能够预判可能会遇到的所有场景和需求,提前考虑到所有的问题。

真实的情况是——总是会遇到问题,再针对问题设计出合理的解决方案。既要考虑短期的成本和难度,又要考虑长期的发展。即使如Oracle这样伟大的产品也是经过了多年的实战打磨才达到今天的模样。

因此,做数据库产品是一个缓慢的、持续的过程,需要在千行百业的实践中通过不断的迭代去累积产品的能力,同时在迭代的过程中,还要保持产品的稳定和易维护,这样才能使产品在一个“正循环”的体系中不断正向演进。

知易行难,道理很简单,但是实践中却充满了挑战。为了达成这个目标,人大金仓在二十多年的发展中通过以下三个方面的构建了产品的“正循环”体系,使得人大金仓的产品能够跟随市场需求的变化不断演进和增强。

产品架构能力:实现可持续迭代、避免低水平重复的关键

对于数据库软件而言,随着需求的增多、功能的累积,代码的复杂度也在不断增加。随之而来的,是代码维护难度的不断增加,直到某一天超出人力所能掌控的地步。代码如果极难维护,那么此时产品将难以再继续迭代和发展,只能推倒重来。

如果产品要做到可持续迭代,就必须将复杂度控制在人力可掌控的范围内。而要做到这一点,就需要设计出符合“高内聚、低耦合”原则的体系架构,合理地划分模块,同时明确各个模块的边界,避免相互交叉,避免产生“牵一发而动全身”的情况,把问题控制在各个模块内部。

而要设计出来这样的架构,需要产品架构师对上层应用场景、对数据库基础理论知识有深刻的认识和丰富的实战经验,并在迭代过程中不断对架构进行重构和优化。

只有设计出满足“高内聚、低耦合”原则的优秀架构,产品的复杂度才能控制在人力可掌控的范围内,产品才能做到易维护。只有做到易维护,产品能力才能不断提升。

这就类似于盖一座100层的高楼,如果结构设计的不好,盖到三层楼时就开始摇晃,那么只能推倒重来。如果始终设计不出好的结构,那么就只能在三层楼不断地低水平重复。这样的情况下,这座100层的高楼将永远无法建成。

从1999年开始,人大金仓的核心架构师们就不断在产品架构上进行研究和投入,去学习和吸收国外优秀产品的设计思路、架构设计的技巧,并不断对比各种国外数据库产品架构设计的差异和优缺点,同时在项目实战中针对不同场景的需求去完善架构设计。在二十多年的时间里,人大金仓的产品架构设计能力得到了极大提升,具备了打造一款世界级产品的架构设计能力。这也确保了KingbaseES能够在市场需求中不断地提升能力,实现可持续发展!

研发组织管理能力:专业化分工、快速追赶国际顶流

人大金仓成立之时,国外数据库企业已经发展了超过20年的时间,从某种程度上说,“出发即已落后”,因此“追赶”成为金仓的首要任务。而要追赶对手,需要有大规模的研发能力。只有比对手跑得更快、产出更多,才有可能追赶上对手,才能获得超越的机会!

一路走来,人大金仓的研发体系从最初的师傅带徒弟的手工作坊模式,逐步发展形成为按照专业化分工打造的流程化、自动化、工具化的,面向大规模研发团队并行工作的研发管理体系。

就像特斯拉公司能够大规模、低成本生产汽车一样,数据库研发也需要构建类似的体系并辅助各种工具去提高研发效率,在研发产出上超过对手。

从无到有,从零到一。人大金仓在吸收外部先进经验的基础上打造了具有金仓特色的研发管理体系及周边配套的工具,使团队的研发效率和产出得到了极大提升,确保了在近几年面对大规模需求冲击时,研发团队依然能够保质保量地完成任务,以最短的时间和最低的成本去解决用户的问题。

这项能力的打造,让人大金仓速度更快、成本更低地实现了产品新能力的构建。在日积月累的过程中,不断缩小了与国外领先者的差距。

质量保证能力:测试自动化工厂是最强的蓝军

对于数据库这样的基础软件而言,稳定性是第一位的,但由于国产数据库产品处于“追赶”过程中需要快速的修改代码进行迭代,这就和“稳定性”的目标产生了冲突——因为只要修改代码就会产生bug,这是无法避免的。

如何在快速迭代的同时,还能杀死bug带来稳定,成为必须要解决的问题。

在产品修改代码后,对产品所有功能进行全量回归测试,成为最终质量把关的手段。但全量回归测试带来的是巨大的工作量,如果靠手工操作,一次全量回归可能需要几个月的时间,时间成本十分高昂,也无法满足客户的时间需求。

在这样的情况下,构建全量回归测试的自动化工厂成为解决问题的关键。所谓自动化工厂,就是测试工程师通过开发代码来模拟各种访问数据库产品功能的操作,同时模拟各种可能产生故障的极限场景,并由服务器自动运行这些测试用例,实现对数据库产品所有功能在所有场景下的全部回归。

在二十多年的时间里,人大金仓组建了一支强有力的自动化测试团队,他们是金仓的蓝军。他们通过不断制造各种故障场景来考验KingbaseES这支红军,通过蓝军的千锤百炼,使得产品在出厂之前得到充分检验,避免重复错误的产生。这项核心能力的打造,确保了KingbaseES产品在快速迭代的同时还能保持良好的稳定性,进一步增强了用户使用KingbaseES的信心。

深入行业,在实战中成长

每一行代码皆可掌控

坐在家里永远设计不出来好产品,只有深入行业、深入用户才能切实了解用户使用的真实场景和需求。产品代码写得好不好,质量高不高,最终要在实践中去验证和提升。

从2008年国家电网的核心电力调度系统D5000开始,KingbaseES就开始了这场苦修之旅。金仓的工程师们花费了一年的时间,把D5000从Oracle数据库迁移到了金仓数据库中,系统中5000多个存储过程的迁移,Oracle语言兼容能力得到了极大的提升!

2016年,金仓数据库在光大银行对公负债和中间业务系统中开始应用。在这个过程中,要解决的问题不只是迁移,同时还要解决用户遇到风险可回退的问题,为此开始设计双轨并行的策略——金仓的Kingbase FlySync产品也因此诞生!

2020年,中国移动网间结算系统上线,作为金仓在巨型运营商的第一个核心应用,这个过程让团队感受到了什么是运营商级别的要求,什么是“割接”?金仓的产品能力在细节方面还要有哪些增强?

2022年,某市14号线列车监控系统上线,金仓为此设计了双网冗余的策略,以及跨网切换的模式,使金仓的产品能力得到了进一步的提升。

医疗、金融、交通、能源、国防……随着各行各业的深入,也带来了各种需求和场景的涌入,使得金仓的产品能力能到充分验证,进而形成了产品持续优化的正反馈机制。所谓“每一行代码皆可掌控”,正是金仓在实战中真刀真枪历练后的结果!只要给金仓行业实践的机会,就没有解决不了的问题。

跟跑、并跑、领跑的产品策略

后发先至

成为数字时代标准的制定者

“一流的企业做标准”,在数据库行业,行业的事实标准是由国外的先进企业制定的,国产数据库产品多在遵从国外数据库制定的标准?为什么不脱离国外的标准,自建新的标准体系呢?

在数据库领域,事实标准究竟是什么?事实标准本质上是国外数据库企业在解决客户问题时形成的解决方案,这些解决方案经过长期的验证打磨逐渐成为了最佳实践,进而在软件开发商和用户侧的认知上形成了共识,成为了成本最低、效果最好的优选路径。

所以标准是各种试错和总结之后形成的最优路径共识。如果要超越对手,就需要先学习对手,走一条跟跑、并跑、最终领跑的道路!

跟跑,在产品功能上兼容并蓄,学习国外各种数据库已经形成的最佳实践,减少试错的时间和成本,快速缩短与国外产品的差距。

并跑,在国外数据库也未触及到的数字化新场景和新领域中探索解决问题的最佳实践,进而形成产品能力和事实标准。

领跑,在中国数字化的无人区,探索和构建新的满足数字化要求的新能力,最终形成“新标准”!

国产数据库产业发展史上的

金仓印记

25508e19f8d6fa01ffe744bff6e82375.png

四十余年的技术深耕,二十多年的产业发展,人大金仓始终坚持原始创新和兼收并蓄相结合的产品发展策略,构建了支撑产品可持续发展的正循环体系,为人大金仓“进化”出世界级的中国数据库产品奠定了坚实基础!

在百年未有之大变局的当下,人大金仓作为数据库领域国家队从未止步。无论经历多少风雨和磨难,金仓都不会放弃初心和使命!KingbaseES也将乘势而上,奋勇前行,终将超越对手,将中国数据库产品立于世界之巅,成为世界卓越的数据库产品与服务提供商!

后记:

从科研成果转化到在一个“正循环”的体系中不断正向演进,金仓数据库经过市场、行业、用户的检验,直面差距,包容学习,在二十多年的实践与进化过程中脱颖而出、乘势而上,探索出一条国产数据库的崛起之路。人大金仓“三个自主”系列文章将带您深入了解人大金仓的发展史。敬请持续关注!

49bbe2a5ba42fde3f68820e2b5545752.png

供稿:产品研发中心

编辑:王堇

审核:日尧

7e3446862e29620bd4b05bce49c64ba3.gif

这篇关于三个自主 | 产品自主研发:Kingbase的进化之旅的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/558967

相关文章

无线路由器哪个品牌好用信号强? 口碑最好的三个路由器大比拼

《无线路由器哪个品牌好用信号强?口碑最好的三个路由器大比拼》不同品牌在信号覆盖、稳定性和易用性等方面各有特色,如何在众多选择中找到最适合自己的那款无线路由器呢?今天推荐三款路由器让你的网速起飞... 今天我们来聊聊那些让网速飞起来的路由器。在这个信息爆炸的时代,一个好路由器简直就是家庭网编程络的心脏。无论你

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

跨国公司撤出在华研发中心的启示:中国IT产业的挑战与机遇

近日,IBM中国宣布撤出在华的两大研发中心,这一决定在IT行业引发了广泛的讨论和关注。跨国公司在华研发中心的撤出,不仅对众多IT从业者的职业发展带来了直接的冲击,也引发了人们对全球化背景下中国IT产业竞争力和未来发展方向的深思。面对这一突如其来的变化,我们应如何看待跨国公司的决策?中国IT人才又该如何应对?中国IT产业将何去何从?本文将围绕这些问题展开探讨。 跨国公司撤出的背景与

雷动WEBRTC产品

http://www.rtcpower.com/html/leidongwebrtc.html ; 1.前言      WebRTC是一项在浏览器内部进行实时视频和音频通信的技术,是谷歌2010年以6820万美元收购Global IP Solutions公司而获得一项技术。WebRTC实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单的javascript就可以

全球AI产品Top100排行榜

Web Top50的榜单里,AIGC类型的应用占比52%,遥遥领先。AIGC类型包括图像、视频、音乐、语音等的内容生成和编辑。音乐生成应用Suno在过去六个月中的排名跃升最为显著,从第36位上升至第5位。排名第二大类是通用对话/AI聊天/角色扮演类型的应用,占比20%,包括常见的ChatGPT、Claude、Character.ai等。其他是AI写作(8%)、AI搜索/问答(6%)、Agent/

hot100刷题第1-9题,三个专题哈希,双指针,滑动窗口

求满足条件的子数组,一般是前缀和、滑动窗口,经常结合哈希表; 区间操作元素,一般是前缀和、差分数组 数组有序,更大概率会用到二分搜索 目前已经掌握一些基本套路,重零刷起leetcode hot 100, 套路题按套路来,非套路题适当参考gpt解法。 一、梦开始的地方, 两数之和 class Solution:#注意要返回的是数组下标def twoSum(self, nums: Lis

Spring Boot 注解探秘:HTTP 请求的魅力之旅

在SpringBoot应用开发中,处理Http请求是一项基础且重要的任务。Spring Boot通过提供一系列丰富的注解极大地简化了这一过程,使得定义请求处理器和路由变得更加直观与便捷。这些注解不仅帮助开发者清晰地定义不同类型的HTTP请求如何被处理,同时也提升了代码的可读性和维护性。 一、@RequestMapping @RequestMapping用于将特定的HTTP请求映射到特定的方法上

Python中差分进化differential_evolution的调用及参数说明

在场景应用中,要求我们的函数计算结果尽可能的逼近实际测量结果,可转化计算结果与测量结果的残差,通过最小化残差,便可求出最优的结果。但使用最小二乘等方法来计算时,常常会使迭代的结果显然局部最优点而导致结算错误。 差分进化原理 差分进化(Differential Evolution,DE)是一种基于群体差异的进化算法,其计算思想主要包括以下几个方面: 一、初始化种群 首先,随机生成一个初始种群

AI产品经理成长蓝图:从入门到精通的学习路径指南

AI产品经理区别于普通产品经理的地方,不止在懂得AI算法,更重要的是具有AI思维。 人工智能产品设计要以操作极度简单为标准,但是前端的简单代表后端的复杂,系统越复杂,才能越智能。 同样,人工智能的发展依赖于产业生态的共同推进,上游芯片提供算力保障,中游人工智能厂商着力研发算法模型,下游应用领域提供落地场景。 一、人工智能产业链结构 人工智能产业链结构上可分为基础层(计算基础设施)、技术层(

【秋招笔试】9.07美团秋招改编题(研发岗)

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 大厂实习经历 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收集 100+ 套笔试题,笔试真题 会在第一时间跟新 🍄 题面描述等均已改编,如果和你笔试题看到的题面描述