作者 | JiekeXu
来源 |公众号 JiekeXu DBA之路(ID: JiekeXu_IT)
如需转载请联系授权 | (个人微信 ID:JiekeXu_DBA)
大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看从国产数据库调研报告中你都能了解哪些信息及我的总结建议,欢迎点击上方蓝字“JiekeXu DBA之路”关注我的公众号,标星或置顶,更多干货第一时间到达!
2023 年初,墨天轮社区、DBAplus 社群发起了国产数据库相关的调研报告,当时大概的看了下结论,没有细看整个内容,最近在做国产数据库的选型调研,故又翻出来了这两份报告,首先我们来看下 2022 年 9 月底,国家下发的 79 号文件,根据文件要求,2023 年央企将开始实施相关具体措施,且要求在 2022 年 11 月底前提前上报可替代总体方案。进一步的要求更加严格并具有监督指导意味,从 2023 年 1 月起,央企需每季度上报信创替换进度,且要求企业党组书记亲自负责。
DB-Engines 排行榜
接下来我们在 db-Engines 排行榜上可以看到参与排行榜的数据库截止 2023 年 7 月 25 日,总共有 419 个,而这些大多数都是国外的数据库,国产数据库几乎没有几个参与排名的。
https://db-engines.com/en/ranking_trend
在 2023 年 7 月的 DB-Engines 排行榜中,国产数据库 TiDB 排名在 107 名,去年 7 月第 96 名,较上月下降 2 名,OceanBase 排名在 121 名,去年 7 月排名 196 名,较上月增长 10 名,GBase 排名 183 名,去年排名 163 名,上个月排名第 197 名,openGauss 排名在 187 名,去年 7 月排名在 209 名,上月排名 186 名。这是国产数据库在 DB-Engines排行榜上最靠前的四款国产数据库,相比去年 7 月份均在快速上升。
计算 DB-Engines 排名分数的方法
数据库引擎排名是按当前受欢迎程度排名的数据库管理系统列表。主要使用了以下参数来衡量系统的受欢迎程度:
l在网站上提及系统的次数,以搜索引擎查询中的结果数量来衡量。目前,我们使用Google和Bing进行此测量。为了仅计算相关结果,我们正在搜索<系统名称>以及术语数据库,例如“Oracle”和“database”。
l对系统的普遍兴趣。对于此衡量标准,我们使用 Google 趋势中的搜索频率。
l有关系统的技术讨论频率。我们使用相关问题的数量和感兴趣的用户数量在著名的IT相关问答网站Stack Overflow和DBA Stack Exchange上。
l工作机会的数量,其中提到了该系统。我们使用领先的求职搜索引擎Indeed和Simply Hired上的录用数量。
l专业网络中提及系统的配置文件数量。我们使用国际上最受欢迎的专业网络LinkedIn。
l社交网络中的相关性。我们计算了提到该系统的推特推文的数量。
数据库发展历程
如下简图所示,我国数据库主要从 1999 年开始,到 2004 年人大金仓、达梦、南大通用相继成立,其前身几乎均为科研学术机构,成为我国最早探索研发关系型数据库的先驱。2000 年,达梦数据库发布 DM3,2004 年,达梦 DM 4发布,大金仓发布 3.1 版本,南大通用成立。国内数据库企业相继成立,开启了我国数据库从学术向产业化发展的进程。这个时期国外 Oracle、DB2 等商用数据库发展如火如荼,很快也打入了中国市场,Oracle逐渐抢占中国市场。
随着互联网兴起,双十一的到来,一股去“IOE”热潮不断涌现,接着就是云原生、RDS 的时代。随着阿里巴巴花费七年的时间去“IOE”及 2015 年, 国务院正式印发了《促进大数据发展的行动纲要》,强力刺激我国大数据产业发展,推动中国数据库厂商增至 50 余家。2018年到2023 年间,随着亚马逊 7500 个 Oracle数据库节点的迁移替换,漂亮国“毛衣战”,俄乌战争等的政策刺激,国内数据库市场迅速发展,数据库产业进入“百花齐放,百家争鸣”的状态,OceanBase、TDSQL 打榜 TPCC,截止至 2023 年 7 月 25 日中国数据库共有 282 款(来自墨天轮统计)。
21世纪全球数据库发展历程(来源:中国信息通信研究院, 2022 年 6 月)
(艾瑞咨询:2021年中国数据库行业研究报告)
根据信通院 2022 年 6 月发布的数据库研究报告介绍未来五年, 数据库技术有九个细分发展方向, 总结起来体现为四大目标:
1)降低成本、提升易用性(HTAP 数据库、多模数据管理、数据库与 AI 融合);
2)保障数据安全可信(防篡改数据库、全密态数据库);
3)提升功能、 增强性能(软硬件协同发展、 云原生数据库);
4)满足新兴业务需求(大规模图数据处理、 实时湖仓)。
https://www.modb.pro/doc/97453
中国数据库发展历程受益于市场需求和长久的技术沉淀,进入到百花齐放的快速发展期。
中国数据库市场发展特点
1、多种类型数据库百花齐放百家争鸣,关系型数据库占据绝对主流。
2、借助政策东风,国产厂商厚积薄发,市场版图快速扩展
3、公有云数据库增速放缓,未来仍有一定渗透空间
4、凭借 HTAP、NoSQL 等新技术,初创厂商不断涌现
数据库分类
数据库分类一般可以按数据结构分类、按架构分类、按部署模式分类、按功能分类、按存储介质分类、按商业模式分类等分为如下七大类。
墨天轮中国数据库流行度排行榜
https://www.modb.pro/dbRank 2023 年 7 月共 282 个数据库参与,排行榜自从 2019 年 6 月推出,通过近 50 个维度的数据来考察近 300 个国产数据库的流行度排行,通过搜索引擎、趋势指数、三方评测、生态、专利数、论文数、招聘岗位数、书籍、Gartner 市场份额排行及魔力象限、IDC 市场份额排行、 墨天轮内容数量等 11 个大的维度进行综合排名,每月 1 号更新排行榜数据。
国产操作系统排行榜
2022 年墨天轮数据库大调查报告
接下来我们来看墨天轮社区 2023 年 2 月份发布的数据库大调查报告,全文见:https://www.modb.pro/doc/97913
墨天轮社区于 2022 年底开始对国产数据库大调查问卷进行收集,本次调查征集时间 24 天,共征集到 4801 份有效问卷,剔除无效数据 1325 份,最后获得有效问卷数为 3476 份。
报告结论概览
1)30 岁以下的技术从业人员人数在上升 , 全国超九成的从业者分布在一线城市以及新一线城市。数据库管理员平均月薪为 19953 元, 架构师平均月薪最高。
2)83.4% 的企业正在使用中国的数据库产品, 其中近九成的企业都将稳定性作为国产数据库选型的首要指标。
3)在生产环境中, 33.5%的企业配置有 50 套以上的数据库产品, 其中银行、 技术服务行业大规模配置数据库占比更多。
4)MySQL 是使用率最高的国外数据库。 86.2%的企业有替换国外数据库的计划, 其中超五成的想替换掉 Oracle。
5)达梦数据库是企业使用率第一的中国数据库。 仍然有 16.6% 的企业未使用中国数据库, 其中 Oracle、 MySQL 仍然在存量市场中占据 80% 以上。
6)数据库上云已经逐渐成为一大趋势, 75.6% 的企业正在使用云数据库。使用率最高的云数据库是阿里云数据库。
有替换意向的受访者中选择将 Oracle 迁移到 OceanBase 的最多。
调查数据显示,有 58.6%正在使用 Oracle 数据库的受访者表示,其有替换掉国外数据库的意向。其中 30.6%的受访者表示想要替换成 OceanBase, 其次是达梦和 openGauss,分别占比 29.8、26.5%。
本次调查中,有 83.4%的企业正在使用中国的数据库产品,达梦数据库是企业使用率第一的中国数据库,华为云 GaussDB、 阿里云 PolarDB 紧随其后企业正在使用的中国数据库排名前十与墨天轮榜单前十大致保持着一致。达梦、 华为云 GaussDB、阿里云 PolarDB、 OceanBase、openGauss、TiDB、腾讯云 TDSQL、人大金仓、科蓝 SUNDB、南大通用是企业正在使用率占比前十的中国数据库。随着云的趋势更加明显,中国云数据库的使用率占比都较靠前。各中国数据库的占比差距不大,这表明各个中国数据库的使用率都较高。
openGauss 是微型企业使用率占比最高的中国数据库,大型企业较多使用达梦、阿里云PolarDB 等数据库。互联网行业、银行业使用最多的国产数据库分别是阿里云 PolarDB、 OceanBase,达梦是被软件信息、技术服务行业使用最多的国产数据库。16.6% 的企业未使用中国数据库,Oracle、MySQL 仍然在存量市场中占据 80% 以上。
最受喜爱、未来最想使用的中国数据库
93.9%的企业计划使用中国数据库,达梦数据库成为企业未来最想使用的中国数据库。达梦、OceanBase、openGauss、华为云 GaussDB、TiDB、阿里云 PolarDB、腾讯云 TDSQL、科蓝 SUNDB、人大金仓、恩墨 MogDB 成为企业未来最想使用排名前十的中国数据库,这十名之间的占比差距不大。随着中国数据库行业发展的日益壮大,企业计划使用的各中国数据库比例相比正在使用的比例有所增加。
银行未来计划最想使用的是华为云 GaussDB, 阿里云的 PolarDB 是互联网行业未来最想使用的中国数据库。互联网、软件信息、银行、技术服务这四大行业未来计划最想使用的数据库分别对应的是阿里云PolarDB、达梦、华为云 GaussDB、达梦。以上四大行业不会使用中国数据库的比例皆低于 6%,这表明经过近几年的宣传和中国数据库产品不断优化升级,各大行业对中国数据库呈现积极拥抱的态度。未来不想使用中国数据库的企业占比 6.1%,MySQL 在存量市场中占比 63.9%。
75.6% 的企业正在使用云数据库,使用率最高的云数据库是阿里云数据库。
DBAplus 社区
自 2022 年 12 月至 2023 年 2 月, dbaplus 社群以匿名的问卷调研形式,对 DBA/运维工程师(34.3%)、研发工程师(21.49%)、架构师(15.4%)、技术经理/主管(12.8%)、技术总监(6.4%)、CXO/总经理(1.83%)等数据库相关从业人员进行线上发放及定向邀约的采访调研,受访者覆盖互联网/IT、金融、通信、制造、交通、政务等重点行业,全面涵盖央企/国企、事业单位、民企/私企、外企人员。回收问卷共 862 份,剔除无效问卷 170 份,获得有效问卷 692份,经过对有效数据的统计,并结合 dbaplus 社群数十位数据库技术专家的分析和意见,总结得出此份《国产分布式数据库应用现状调研报告》。
报告结论概览
l分布式数据库在国内发展迅速,已广泛应用国内企业,且云化部署已成常态;
l企业选型分布式数据库基本围绕4+1要素,即:可靠性和稳定性、整体成本、产品功能和易用性、兼容性,以及分布式数据库最具吸引力的可扩展性;
l稳定性保障、运维复杂度、改造成本,是企业使用分布式数据库的主要难点;
l分布式数据库整体使用成本比传统数据库略有下降,但也有部分企业出现成本大幅上升的情况;
l国产分布式数据库产品的应用率和关注度显现向头部集中的趋势,OceanBase 和 TiDB 位列第一梯队;
l将核心应用系统迁移到国产分布式数据库仍面临巨大挑战;
l国产分布式数据库厂商整体满意度达及格线以上,平均分7.76(满分 10分),OceanBase、TiDB、GaussDB 名列厂商优质服务评分前三;
l国产分布式数据库生态建设仍有较大发展空间,需加强文档体系、技术社区的建设和完善,数据库专业人员亟需补充和强化;
lOceanBase、TiDB、GaussDB、TDSQL、达梦等国产数据库,在企业未来重点考察使用的数据库排名中名列前茅。
赛迪顾问
2022 年 7-8 月,赛迪顾问围绕多个行业用户,组织开展了相关调研工作,调研方式分为实地走访、线上访谈及问卷填写等,主要兴趣点如下表。本次调研共形成 160 余份有效问卷,以下调研结果分析均基于此样本集。
报告结论总览
基于以上分析,本研究选取了达梦数据库、OceanBase、人大金仓、阿里云、腾讯云、华为云、南大通用等国内知名厂商的畅销数据库产品,与本研究涉及的核心数据库选型考量因素进行匹配度分析(匹配度满分为40),匹配结果如下:
可以看出达梦 DM8 和 OceanBase 得分高于 35 分,而 TiDB 只有 30 分。
注意:以上三份报告的样本数各有不同,问卷方式及回答人员均有不同,报告结论均与实际情况有所出入,仅供参考。另外,文中直接选择截图的方式展现结果,如有侵权,请联系我及时删除,谢谢!
数据库选型指标
我的总结建议
根据近期对国产数据库的调研及简单的了解,参考刘老师国产数据库投票结果初步得到一个信息那便是目前使用最多的前五款国产数据库:OceanBase、TiDB、GaussDB、DM、openGauss, 这五款国产数据库算是头部产品,这也基本符合市场发展规律。然后有以下五条总结建议仅供广大的数据库从业者参考,个人意见如有不当之处还请多多包涵!
1、国产数据库仍旧呈现百花齐放百家争鸣的状态,发展迅速,远比我们想象的要快,但是和国际巨头 Oracle相比差距还不小,性能、稳定性、兼容性、运维成本、产品功能和易用性、以及分布式数据库最具吸引力的可扩展性、生态建设等均无法追赶 Oracle,希望国产数据库厂商不要闭门造车,重复造轮子,攻坚克难,尽快拿下性能、稳定性、兼容性、生态建设这几个板块的空白,不要再被广大 DBA们诟病,文档写的不全、稳定性得不到保障、性能没有某某数据库强大,生态培训认证贵的离谱等等;
2、国产数据库种类过多,各厂商有意或无意夸大吹嘘自家产品,贬低友商产品。希望在夸大吹嘘的同时,能够拿得出真凭实据,有鲜明对比再去贬低友商,有对比才有发言权,没对比就没有话语权。
3、国产数据库从墨天轮排行榜来看,已经初步形成了 Top10 的榜单格局,希望头部数据库各厂商戒骄戒躁,不要骄傲自满,配合客户一起打磨更好的产品,取长补短,博采众长。
4、国产数据库生态建设不完善,这块在单独说两句,极个别数据库厂商已经从高校出发培养数据库人才,但有的数据库厂商生怕别人学会了,认证培训搞得一塌糊涂,市场人才更加稀缺,无法更好的普及;希望国产数据库各厂商能够做好生态,比如和高校合作培养数据库开发人才、邀请行业专家发布相关视频、出版相关书籍、写好更加详细的官方文档、维护更加完善的知识库等等,这样才能培养更多的数据库人才。
5、最后,对广大 Oracle DBA 的建议,虽国产化发展迅速势不可挡,但只要你有 Oracle DBA 的工作经验,上手国产数据库也是非常迅速的,目前还没有接触到国产数据库的小伙伴,不要恐慌,可以选取排行榜 Top5 的一两款数据库参照官方文档进行学习,培训认证等,将来一定有用武之地。另外,在信创冲击下 Oracle DBA 的地位可能会有所下降,但只要你学习能力强,提前学习布局国产数据库,那么在数据库选型、数据库迁移过程中也会发挥一定的作用。对于能力更强的 DBA来说,更不必恐慌,金字塔尖的优化人才更为重要,所有数据库都离不开 SQL,所以 SQL 优化也是重中之重。我们一起加油,祝愿国产数据库能有一个美好的明天!
参考资料
https://db-engines.com/en/ranking_trend
https://www.modb.pro/dbRank
https://www.modb.pro/doc/97913
https://mp.weixin.qq.com/s/t9Wv_EBY0X5ZTuM4PC60Ng
艾瑞咨询:2021年中国数据库行业研究报告
数据库发展研究报告(2022年)
下面附件内容为本月 Top3 国产数据库的简介及架构,感兴趣的朋友可以看看。
附录:Top3 国产数据库简介及架构
OceanBase
官网:https://www.oceanbase.com/
OceanBase 始创于 2010 年,是完全自主研发的企业级原生分布式数据库,2020年 OceanBase 成立北京奥星贝斯科技有限公司并开始独立商业化运作。2023 年 3 月 31 日发布最新版本号为 V4.1.0,以后每隔一个季度发布一个版本,下个版本为 V4.2。
OceanBase 数据库采用 Shared-Nothing 架构,各个节点之间完全对等,每个节点都有自己的 SQL 引擎、存储引擎、事务引擎,运行在普通 PC 服务器组成的集群之上,具备高可扩展性、高可用性、高性能、低成本、与主流数据库高兼容等核心特性。OceanBase 数据库的一个集群由若干个节点组成。这些节点分属于若干个可用区(Zone),每个节点属于一个可用区,一个表的数据可以按照某种划分规则水平拆分为多个分片,每个分片叫做一个表分区,简称分区(Partition),每个物理分区有一个用于存储数据的存储层对象,叫做 Tablet ,用于存储有序的数据记录。在集群的每个节点上会运行一个叫做 observer 的服务进程,它内部包含多个操作系统线程。节点的功能都是对等的。每个服务负责自己所在节点上分区数据的存取,也负责路由到本机的 SQL 语句的解析和执行。这些服务进程之间通过 TCP/IP 协议进行通信。
为了简化大规模部署多个业务数据库的管理并降低资源成本,OceanBase 数据库提供了独特的多租户特性。在一个 OceanBase 集群内,可以创建很多个互相之间隔离的数据库"实例",叫做一个租户。从应用程序的视角来看,每个租户是一个独立的数据库。不仅如此,每个租户可以选择 MySQL 或 Oracle 兼容模式。为了隔离租户的资源,每个 observer 进程内可以有多个属于不同租户的虚拟容器,叫做资源单元(UNIT)。每个租户在多个节点上的资源单元组成一个资源池。资源单元包括 CPU 和内存资源。为了使 OceanBase 数据库对应用程序屏蔽内部分区和副本分布等细节,使应用访问分布式数据库像访问单机数据库一样简单,OB提供了obproxy 代理服务。应用程序并不会直接与 OBServer 建立连接,而是连接obproxy,然后由 obproxy 转发 SQL 请求到合适的 OBServer 节点。obproxy 是无状态的服务,多个 obproxy 节点通过网络负载均衡(SLB)对应用提供统一的网络地址。
OceanBase 数据库集群高可用和容灾时至少由三个节点组成,每个节点对应一个 observer 进程,不同节点上的多个 observer 进程组成一个集群对外提供服务。OceanBase 数据库采用基于无共享(Shared-Nothing)的多副本架构,让整个系统没有任何单点故障,保证系统的持续可用。OceanBase 支持单机、机房(以下统称:IDC)、城市级别的高可用和容灾,可以进行单机房、双机房、两地三中心、三地五中心部署,且支持部署仲裁服务来降低成本。同城 3 个机房组成一个集群(每个机房是一个 Zone),机房间网络延迟一般在 0.5 ~ 2 ms 之间。
openGauss
官网:https://opengauss.org/zh/
openGauss 是一款极致性能、安全、可靠的关系型(OLTP)开源数据库。采用协议“木兰宽松许可证”(Mulan PSL V2),用户可以自由复制、使用、修改、分发,不论修改与否。
openGauss 版本号采用点分位命名规则(X.Y.Z)模式,其中 X.0.0 表示 LTS 版本,X.Y.0 表示preview 版本,Z 表示补丁版本。正常每年会发布一个 preview 版本和一个 LTS 版本,preview 版本作为社区创新版本,供用户联创测试使用;LTS版本作为长期支持版本,可规模上线使用。涉及重大问题修复时,会按需发布补丁版本。
openGauss生命周期初步规划为:
LTS 版本发布间隔周期 1 年,社区提供 3 年维护支持。
preview 版本发布间隔周期 1 年,社区提供 0.5 年维护支持。
2020 年 6 月 30 日 openGauss 发布第一个版本,版本号为 1.0.0。2022 年 4 月 1 日 openGauss 发布第二个 Release 版本,版本号为 3.0.0。2023 年 3 月 30 日 openGauss 发布5.0.0 版本。
下图是一个 openGauss 体系架构图
TiDB
官网:https://cn.pingcap.com/
TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 5.7 协议和 MySQL 生态等重要特性。2023 年 3 月 30 日发布版本号为 V7.0.0-DRM 版本,开发里程碑版本 (Development Milestone Releases, DMR) 约每两个月发布一次,长期支持版本 (Long-Term Support Releases, LTS) 约每六个月发布一次,LTS 命名方式为 X.Y.Z
,Z
默认为 0,2023 年 4 月 21 日发布 V6.5.2 版本,2023 年 5 月 31 日发布 V7.1.0 LTS 版本。具体发布时间可查看官方发布说明:https://docs.pingcap.com/zh/tidb/stable/release-notes
lTiDB Server:SQL 层,对外暴露 MySQL 协议的连接 endpoint,负责接受客户端的连接,执行 SQL 解析和优化,最终生成分布式执行计划。TiDB 层本身是无状态的,实践中可以启动多个 TiDB 实例,通过负载均衡组件(如 LVS、HAProxy 或 F5)对外提供统一的接入地址,客户端的连接可以均匀地分摊在多个 TiDB 实例上以达到负载均衡的效果。TiDB Server 本身并不存储数据,只是解析 SQL,将实际的数据读取请求转发给底层的存储节点 TiKV(或 TiFlash)。
lPD (Placement Driver) Server:整个 TiDB 集群的元信息管理模块,负责存储每个 TiKV 节点实时的数据分布情况和集群的整体拓扑结构,提供 TiDB Dashboard 管控界面,并为分布式事务分配事务 ID。PD 不仅存储元信息,同时还会根据 TiKV 节点实时上报的数据分布状态,下发数据调度命令给具体的 TiKV 节点,可以说是整个集群的“大脑”。此外,PD 本身也是由至少 3 个节点构成,拥有高可用的能力。建议部署奇数个 PD 节点。
l存储节点
nTiKV Server:负责存储数据,从外部看 TiKV 是一个分布式的提供事务的 Key-Value 存储引擎。存储数据的基本单位是 Region,每个 Region 负责存储一个 Key Range(从 StartKey 到 EndKey 的左闭右开区间)的数据,每个 TiKV 节点会负责多个 Region。TiKV 的 API 在 KV 键值对层面提供对分布式事务的原生支持,默认提供了 SI (Snapshot Isolation) 的隔离级别,这也是 TiDB 在 SQL 层面支持分布式事务的核心。TiDB 的 SQL 层做完 SQL 解析后,会将 SQL 的执行计划转换为对 TiKV API 的实际调用。所以,数据都存储在 TiKV 中。另外,TiKV 中的数据都会自动维护多副本(默认为三副本),天然支持高可用和自动故障转移。
nTiFlash:TiFlash 是一类特殊的存储节点。和普通 TiKV 节点不一样的是,在 TiFlash 内部,数据是以列式的形式进行存储,主要的功能是为分析型的场景加速。
全文完,希望可以帮到正在阅读的你,如果觉得此文对你有帮助,可以分享给你身边的朋友,同事,你关心谁就分享给谁,一起学习共同进步~~~
欢迎关注我的公众号【JiekeXu DBA之路】,第一时间一起学习新知识!以下三个地址可以找到我,其他地址都属于盗版侵权爬取我的文章,而且代码格式、图片等均有错乱,不方便阅读,欢迎来我公众号或者墨天轮地址关注我,第一时间收获最新消息。
欢迎关注我的公众号【JiekeXu DBA之路】,第一时间一起学习新知识!
————————————————————————————
公众号:JiekeXu DBA之路
CSDN :https://blog.csdn.net/JiekeXu
墨天轮:https://www.modb.pro/u/4347
————————————————————————————
分享几个数据库备份脚本
Oracle 表碎片检查及整理方案
OGG|Oracle GoldenGate 基础2022 年公众号历史文章合集整理
Oracle 19c RAC 遇到的几个问题
OGG|Oracle 数据迁移后比对一致性
OGG|Oracle GoldenGate 微服务架构
Oracle 查询表空间使用率超慢问题一则
国产数据库|TiDB 5.4 单机快速安装初体验
Oracle ADG 备库停启维护流程及增量恢复