国产信创数据库的选型分析
01
国产信创数据库概念
信创数据库,即信息技术应用创新数据库,是在国家大力发展信息技术应用创新(简称“信创”)的大背景下应运而生的一种数据库产品。其核心概念在于,它必须符合国家信息安全和数据自主可控的要求,支持国内自主研发和技术创新,能够在关键信息基础设施中替代国外产品,保障国家信息安全。具体而言,信创数据库是指遵循国内标准规范,与国产化硬件平台适配良好,通过自主研发和创新,具有自主知识产权的数据库管理系统。包括集中式数据库和分布式数据库,以及其他适应特定场景需求的新型数据库产品。
02
国产信创数据库核心要求
从上面的概念描述中,我们可以对信创数据库的核心能力有个整体了解。这里可以抽象为若干核心要求:
技术先进
使用信创数据库,不应是技术倒退,而应是在成熟技术基础上有所创新。近些年来,随着分布式、云原生、HTAP、软硬一体、AI、多模等技术在数据库领域的大规模应用,也给了国内厂商实现弯道超车的机遇。一大批采用新架构、新理念设计的产品涌现出来,并开始在实际生产环境取得了不错的效果。
数据安全
关于数据安全可以分为两个层面,狭义与广义。狭义上的安全,是指在数据在生产、传输、存储、使用、销毁等生命周期阶段的安全。这其中涉及一系列安全技术能力建设,如数据存储就需考虑加密问题,特别是与国密算法结合,实现数据加密。广义上的安全,则是从国家信息安全角度来看,应可做到替代国外产品,实现真正的供应链安全。
成熟稳定
数据库,作为三大基础软件之一,数据的主要载体,其安全稳定运行尤为重要。信创数据库应是成熟产品,能够满足在关键领域、核心场景的严苛要求。当然数据库也是比较复杂的,是稳定成熟时需要长期时间积累。这需要对信创数据库严格要求之余,抱有一份宽容,尽快加速信创数据库成熟。在具体推进工作上,也应秉持着先外围、后核心;先试点、后推广的策略。
产业完整
数据库不是孤立产品,是否能在很顺利的推广使用,是需要上下游及周边产品的配合。而产业完整的构建,是需要一个较为长期的过程,不能一蹴而就。一方面我们看到很多信创数据库采取了“兼容”策略,借力构建产业生态;一方面也都纷纷加大生态建设力度。相信随着信创工作的推广深化,会加速产业的成熟完善。
自主可控
自主可控,可以说是对信创数据库的最基本的要求,也是做信创工作的核心出发点。从上文中信创的来源来看,正是为了解决“卡脖子”的问题。当然如何评判自主可控能力。
摩天轮上收录的国产数据库多达280多种,百库大战的背景下,无疑给企业的数据库选型带来了巨大的挑战,毕竟更换数据库是一项投入巨大的工作。那么对于决策者来说,如何选择适合自己的数据库呢,今天我们来说说这个话题。
03
国产信创数据库稳定性是一切基础
没有哪个单位能忍受三天两头的宕机,轻则劳民伤财,重则乌纱不保,所以这个指标放在第一位。纵观当前市场上主流的国产数据库产品,稳定性做的都还不错。用于核心系统的基本都采用多副本的分布式架构,这种架构下少数单节点的故障并不会对数据库整体的正常运行带来影响;而采用单机架构的非核心系统,要么系统压力很小,要么其重要程度不高,即使出现问题也不会引起太大的关注。
稳定性检测技术也比较成熟,各种极限破坏性测试,持久疲劳性测试,会让稳定性不够好的系统现出原形。
04
国产信创数据库生态建设
生态是一个很大的话题,也是数据库选型工作中需要重点考虑的因素之一。
首先,上下游的兼容性问题。
数据库不是独立存在的,作为应用系统中承上启下的关键组件,选型关系到中间件、操作系统、硬件平台等上下游的产品,良好的生态支持能够大大节省应用改造、数据迁移和日常运维的成本,反之亦然。
其次,SQL语法的兼容性问题。
很多国产库在宣传的时候,都说自己能够兼容Oracle、兼容MySQL。其实兼容也要从两个方面来看,一种是单纯意义上的SQL语法兼容,更重要的是优化器对于复杂SQL性能上的支持,这一点国产数据库和Oracle等国外商业数据库还有不小的差距,因此在国产化改造的时候通常需要对SQL语句进行改写,尤其是将复杂的SQL语句尽可能拆分为单表操作,尽量减少多表关联等复杂操作。
第三,社区建设和人才培养。
相信大家都有过这样的经历,对于自己不熟悉的东西,是不敢轻易去做决策的,对应到数据库选型也一样。所以人才培养是一个长期的过程,今天的小兵学习了某个名不见经传的新兴国产数据库,某个合适的机会就会向领导推荐,甚至将来小兵走上领导岗位,可能就直接拍板了。
国产数据库面世时间比较短,网上能找到的资料相对较少,即使是官方文档质量也参差不齐,很多时候依靠自己的DBA根本解决不了问题,这时候社区就能派上大的用场。
05
总结
数据库行业“百团大战”,最终仍然会遵循市场的规律,预计未来的3-5年,最终可能只有不到10%的厂商能够活下来。
总的来说,数据库国产化替代是一项复杂度非常高的工程,尤其是核心系统,通常都是以5年期来进行规划的,涉及到的资金投入达亿元以上。错误的决策可能会带来后期运维等多方面的成本增加,严重的甚至导致上亿的投入打水漂。
![请扫码关注数字化经济观察网](/img/2023/0912.png)