共计 7691 个字符,预计需要花费 20 分钟才能阅读完成。
引言
天下风波出我辈,一入江湖岁月催。
有人说,有数据库的中央,就有“江湖”。
已经多少前辈满腔热血投入国产数据库事业中,悠悠数十载,又如白驹过隙,最终不知几家欢喜几家愁。
截止 2023 年 8 月份,墨天轮已收录 286 种国产数据库参加排名,国产数据库的倒退外表上热火朝天、暮气沉沉,实际上又是暗潮汹涌、危机四伏,走错一步,可能就会满盘皆输。
对于数据库江湖的“恩恩怨怨”、“爱恨情仇”,且看上面 2023 年 8 月份墨天轮中国数据库风行度排行榜。
国产数据库排名
以下数据参考自墨天轮:https://www.modb.pro/dbRank
2023 年 8 月共 286 个数据库产品参加排名,前十名别离是:
1:蚂蚁团体的 OceanBase 数据库
2:PingCAP 公司的 TiDB 数据库
3:华为公司的 openGauss 数据库
4:阿里巴巴的 PolarDB 数据库
5:华为公司的 GaussDB 数据库
6:武汉达梦公司的达梦数据库
7:人大金仓公司的人大金仓数据库
8:南大通用公司的 GBase 数据库
9:腾讯云公司的 TDSQL 数据库
10:阿里云公司的 AnalyticDB 数据库
数据库厂商:
通过厂商能够看到,国产数据库厂商梯度曾经非常明显,前十名中,四大老牌国产数据库厂商有三家,别离是达梦、人大金仓,南大通用,均是 2000 年前后成立的,是研发国产数据库最早的一批,别离排名第 6,7,8 名。阿里系的有三个,别离排名第 1,4,10 名。华为有两个,别离排名第 3,5 名。腾讯有一个,排名第 9 名。
PingCAP 公司 2015 年成立,和后面几家厂商相比,成立绝对较晚,公司综合能力稍差,但数据库产品 TiDB 非常强劲,属于国产数据库的“黑马”,间断长时间霸榜,本月居第二名。
db-engines 排行榜:
https://db-engines.com/en/ranking
420 systems in ranking, August 2023
国产数据库
通过国外 db-engines 数据库热度排行榜来看,国产数据库排名均偏后,其中 TiDB 排名 103 名,OceanBase 排名 147 名,国产数据库推向全世界仍有很长一段路要走。
国产数据库统计
国产数据库数量
国产数据库产品数量简直每月都有增长,2020 年 9 月统计 104 个,到 2023 年 8 月曾经增长到 286 个,依照市场规律,优胜略汰,预计最近几年会呈现显著的降落趋势,集体认为,最终齐全存活下来的国产数据库产品并不会太多,心愿好用的数据库产品可能及早推广进来。
按模型统计
关系型数据库仍占主导地位,也是竞争最强烈的赛道。
模型 | 关系型 | 多模型 | 键值 | 列簇 | 时序 | 空间 | 向量 | 搜寻 | 图 |
---|---|---|---|---|---|---|---|---|---|
数量 | 176 | 3 | 12 | 4 | 41 | 5 | 7 | 6 | 32 |
按解决场景统计
解决场景 | OLTP | OLAP | HTAP |
---|---|---|---|
数量 | 108 | 33 | 29 |
按技术架构统计
技术架构 | 集中式 | 分布式 |
---|---|---|
数量 | 116 | 137 |
按部署模式统计
部署模式 | 本地部署 | 云原生 |
---|---|---|
数量 | 200 | 47 |
按开源 / 商业统计
开源 / 商业 | 开源 | 商业 |
---|---|---|
数量 | 48 | 238 |
双雄争霸 OceanBase vs TiDB
自 2020 年 1 月起至今,TiDB 累计霸榜 34 个月,直到 2022 年 12 月份,OceanBase 终于一骑绝尘反超 TiDB,摘得冠军,之后又是“极其仁慈”的间断霸榜九个月,本月得分 609.61,比 TiDB 高出了 20.09 分,从热度排行榜来看,OceanBase 仍有显著劣势。
两个数据库产品都属于分布式数据库,但具体技术实现上还是有很大差别:
简略做下比照:
不能齐全说哪种技术肯定优于另一种技术,实用场景不同,适宜的技术也不同。
两种数据库从技术上来看,各有优缺点,例如:
分布式架构:
TiDB 存储计算拆散
长处:
治理节点、计算节点、存储节点拆散,弹性扩缩容能力较强。
毛病:
1. 组件更简单,保护老本高;
2. 和 OceanBase 对等架构相比,tidb 计算节点无奈像传统数据库实现本地数据缓存,数据访问不能间接从计算节点本地获取,必须通过存储节点获取,当然,存储节点能够缓存,RocksDB 将存储在磁盘上的文件依照肯定大小切分成 block,读取 block 时先去内存中的 BlockCache 中查看该块数据是否存在,存在的话则能够间接从内存中读取而不用拜访磁盘。
数据分片形式:
TiDB 主动分片
长处:和 OceanBase 相比,tidb 执行建表语句对开发人员通明,建表语法和 MySQL 兼容性高;
毛病:因为数据落地由 RocksDB 存储引擎负责,读取门路长,数据被放大,须要更多的磁盘空间,对磁盘性能要求更高。
近期流动:
OceanBase 近期开始举办第三届数据库大赛,很多高校参加,进步了数据库知名度,国产数据库的竞争前期可能会倒退成国产数据库人才的竞争,这对 OceanBase 前期倒退会有很大帮忙。
OceanBase 作为齐全自研的国产分布式数据库,已间断举办两届数据库大赛,第三届大赛全新降级为全国大学生计算机系统能力大赛,已于 2023 年 8 月 14 日启动报名。
本届大赛由零碎能力造就钻研专家组发动,全国高等学校计算机教育研究会、零碎能力造就钻研我的项目发动高校独特主办,OceanBase 承办,面向高校学生,旨在以学科比赛推动业余建设和计算机领域翻新人才培养体系改革,大赛激励学生设计、实现综合性的计算机系统,造就零碎级的设计、剖析、优化与利用能力,晋升学生的技术创新与工程能力、以及团队合作能力。大赛服务国家人才培养策略,以赛促学、以赛促教,为高水平计算机人才成长搭建交换、展现、单干的开放平台。奖金极其丰富。
国产数据库选型思考
国产数据库选型有哪些关注点:
留神:以下仅代表个人观点
以传统金融交易类零碎国产数据库选型为例(银行领取类零碎等):
1. 数据库类型
必须是关系型 OLTP 数据库,最好具备外围金融交易型零碎胜利案例,一些边缘非核心零碎的替换并没有太多的说服力。
能够排除掉非关系型、OLAP 类型数据库,其中非关系数据库 110 个,关系型数据库中 OLAP 数据库 33 个,一共去掉了 143 个数据库,正好排除了一半的国产数据库。
2. 数据库架构
反对单机、主备、共享集群、分布式集群架构。
数据库架构的演进过程,也是数据库应用需要的演进过程,最早还没有容灾、高可用、RTO、RPO 等需要时,单机架构就能满足根本业务须要,之后有了容灾的需要,引入主备,有了高可用的需要,引入共享集群等,数据量业务并发负载过高后,又引入了分布式集群。
对于一些小型公司或小型零碎,并发负载、数据量并不大时,主备架构根本能够满足业务需要,没有必要应用分布式集群架构,特地一些初创型公司,起初业务量很低,思考软硬件老本、保护老本,主备架构齐全能够满足需要。
可能有人会说国产数据库替换原本就是面向大型企业,小型企业能够齐全抉择开源数据库。
然而有些时候,应用程序是和数据库绑定的,比方小型企业购买的一套 OA 零碎只反对 TiDB 国产数据库,不反对指定的开源数据库。还有小型公司也是在逐步成长的,随着业务规模的增长,数据库架构可能会由主备架构逐步替换到分布式架构,这时公司只是心愿更换数据库架构,而不是更换数据库产品。
目前来看,有些国产数据库,只反对分布式架构,不反对单机、主备、共享集群等架构,这对一些小型企业或小型零碎并不敌对,比方 OceanBase 在 4.0 版本之前只反对分布式数据库,搭建一套须要极高的硬件老本,在 2022 年 8 月 10 日,OceanBase 年度发布会上,版本代号为“小鱼”的 OceanBase4.0 正式公布,这是业内首个单机分布式一体化数据库,它实现了单机部署并兼顾分布式架构的扩展性与集中式架构的性能劣势,不仅一举冲破了分布式数据库单机性能的瓶颈,实现了单机性能赶超集中式数据库的行业历史性“逾越”。更要害的是,它还具备了更低的部署老本和运维复杂度,灵便满足不同应用场景需要,极大升高了中小企业应用分布式数据库的门槛,让分布式数据库在千行百业中实现“普惠化”夯实了根底。
也心愿,国产数据库厂商,在研发数据库产品时,多为中小型公司思考。
所以心愿抉择的国产化数据库架构同时反对单机、主备、共享集群、分布式集群等多种架构,以便能够应答公司倒退的各个阶段。
3. 硬件需要
国产数据库替换老本中,硬件老本老本占很大一部分,对于客户,心愿替换后硬件投入老本不能比之前的老本高出太多。
比方之前零碎次要应用 oracle dg 架构,只须要两台虚拟机,最低配置 4C 8G 100GB 就能够将零碎运行起来,如果筹备替换国产数据库硬件投入是原来的 5 倍、10 倍、更高,甚至还要思考机房的扩建,个别的小型企业是很难承受的。
如果思考集中化部署,几十或几百台服务器搭建一个大的数据库集群供应所有零碎应用,试错老本又太高,初期在企业对国产数据库还没有短缺信念的状况下,不敢冒然将所有零碎替换到一套大型国产分布式数据库上。
所以心愿抉择的国产化数据库最小化装置硬件需要低,硬件资源成本低。
4. 部署形式
反对私有化部署
局部云原生数据库,只能运行在特定厂商私有云上,这会导致数据库和云供应商齐全绑死,商业会谈局部会十分被动,而且很多公司出于数据安全的思考,并不心愿将本人公司的数据放到私有云上。
所以心愿抉择的国产化数据库须要反对私有化部署。
5. 墨天轮热度
1. 墨天轮热度排行靠前
墨天轮国产数据库风行度排行得分规定是依照搜索引擎、趋势指数、三方评测、生态、专利数、论文数、招聘岗位数、书籍、Gartner 市场份额排行及魔力象限等综合因素算出的,如果分值很低,可能有几个起因:
(1)新退出墨天轮榜单;(2)新研发的数据库产品;(3)宣传力度低;(4)用户群体少;(5)过于小众;(6)技术社区较差。
不论哪种起因,作为技术人员,很难通过多方面因素评估分值低的国产数据库各种适配性。
所以国产数据库选型能够思考先只重点关注墨天轮热度排名前 20,分数低的试错老本会更高。
按分数大抵分一下热度梯队,这是所有分类数据库总排行榜,如果评估某一类型数据库,能够按类型筛选后在进行评估。
T0 光荣王者: 大于等于 500 分
OceanBase(609.61)、TiDB(589.52)、openGauss(582.52)、PolarDB (576.69)、GaussDB(570.75)
T1 最强王者:大于 300 小于 500
达梦(482.95)、人大金仓(451.51)、GBase(364.75)、TDSQL(344.63)
T2 至尊星耀: 大于 100 小于 300
AnalyticDB(213.10)、AntDB(165.68)、TDengine(109.06)、GoldenDB(101.32)
T3 永恒钻石:大于 50 小于 100
神舟通用(78.81)、MogDB(71.55)、Doris(68.08)、DolphinDB(64.65)、Kyligence(60.62) ……
T4 尊贵铂金:小于 50
万里数据库、KunDB、SelectDB ……
6. 官网技术文档
心愿有成熟的官网技术文档。
例如有具体的各种架构各种平台下的装置部署文档、降级文档、补丁保护文档、备份复原文档、体系结构文档等,技术文档方面,心愿最终能向 Oracle 看齐。
2022 年 10 月份,我在公众号“IT 小 Chen”发表过一篇文章《国产数据库官网技术文档比照 (备份复原局部)》,针对六家热门国产数据库(TiDB、达梦、OcenBase、openGauss、GaussDB、GBase) 备份复原技术文档进行比照,其中 GBASE、DM、TiDB 数据库对于备份复原的技术文档绝对好一些,至多不会马上将人劝退,openGauss 绝对差一些,OceanBase、GaussDB 这方面的技术文档缺失很重大,技术细节、原理等局部形容很少,过来了将近一年了,不晓得当初是否有所改善。其余数据库厂商,很多对文档设置大量限度,比方成为外部客户才有查看计算文档的权限,甚至有些国产数据库没有技术文档。
所以心愿抉择的国产化数据库官网技术文档要足够具体,这样技术人员才会有足够的信念去学习和推广。
7. 售后服务品质
心愿有欠缺的售后服务。
比方某类国产数据库应用过程中呈现重大 bug 或客户有新的需要,研发团队多久能够修复和版本迭代,依照客户重要级别、BUG 级别等,售后都应该有一套欠缺、疾速的解决方案。
因为国产数据库数量增长过快,会呈现技术人员短缺的问题,在接触几次国产数据库技术人员时,发现局部售后技术人员并不具备数据库根底,无奈辨别一些根底的数据库概念,甚至对数据库运维的重要性知之甚少,可能有些数据库厂商,为了尽快招聘到大量的技术人员,会招聘一些零数据库根底的人员,通过 2 - 3 周本公司数据库产品的培训,就派到各个我的项目反对,这在几年前是无奈设想的,还记得以前 DBA 招聘时,公司十分看重年龄和工作教训,太年老很难找到 DBA 工作,没有肯定的教训,公司不敢将重要数据放在你那里治理。当初仿佛反过来了,年纪稍大一些就会被厌弃,年龄卡的死死的,一线技术人员越来越难了。
8. 数据库认证
心愿有国产数据库认证
例如达梦数据库的 DCA、DCP、DCM,南大通用数据库的 GBase 8s、GBase 8a、GBase 8c 认证等。
在加入数据库认证过程中,会更加理解此类数据库产品,对数据库选型做出更正当的判断。
当然,每家国产数据库厂商数据库认证培训能力各不相同,其中个人感觉国产数据库认证绝对业余的有达梦、GBase,其余认证没接触过,暂不评论。
其中南大通用公司 GBase 8s、GBase 8a、GBase 8c 认证,能够收费获取,培训视频、文档详尽,有专门的微信群答疑,整体的培训、考试过程十分敌对。
9. 自主可控
心愿国产数据库都能做到相似“九阳真经”一样,面对任何 BUG、需要都不放心,他强由他强,清风拂山冈。他横任他横,明月照大江。他自狠来他自恶,我自一口真气足。
自主可控,能够借鉴其余数据库,但不倡议间接应用现有的开源或商业数据库,也就是通过分布式代理中间件加开源数据库整合成新的分布式数据库。
简直所有国产数据库对外宣传都是齐全自主可控,但当数据库产品呈现 BUG 时,并不是每家厂商都有能力疾速定位和修复 BUG。
始终比拟纳闷这类国产数据库,间接援用现有的开源数据库,比方数据层间接应用的 MySQL 数据库,其余计算层、调度层可能是自研的,这类国产数据库不分明算不算纯正的国产数据库。此类数据库在呈现 MySQL 重大 BUG 时,是否须要期待甲骨文等官网进行解决?还是厂商能够本人批改修复 MySQL 以后版本 BUG,不分明这么做是否会和 GPL 开源协定抵触,这一块理解比拟少,不做探讨。
10. 公司性质
国企 / 私企,大厂 / 小厂
厂商最好是国企或大厂
国产数据库厂商之间竞争异样强烈,对于一些小公司,如果前期经营不善,有开张的危险,如果正好应用这家数据库产品,前期的保护、迁徙、替换也要付出很大代价,抉择国企或大厂公司,能很大水平防止此类问题产生。
11. 客户群体
最好具备外围金融交易型零碎胜利替换案例,一些边缘非核心零碎的替换并没有太多的说服力。
12.POC
国产数据库选型通常都会有 POC 测试环节,这一块十分重要,POC 测试如果不通过,没人会违心去承担风险。
数据库厂商和公司技术人员联结对装置部署、高可用、容灾、备份复原、数据迁徙、数据库同步、语法兼容等多方面进行充沛的测试,会依据最终测试分数来评定此类数据库是否满足公司要求。
13. 费用
正当的费用
包含软件、硬件、技术支持等费用。
14. 运维老本
1. 语法兼容性高
例如 OceanBase 分布式数据库,建表时须要手动指定分区键,对于开发人员来讲,扭转了建表习惯,须要减少肯定的学习老本,如果波及数据库迁徙,也会有额定的调整语法的工作量,如果分区键指定不合理,前期可能会呈现性能问题,减少了运维人员优化数据库的工作量。
绝对来讲,TiDB 语法兼容性更高一些,建表时不须要手动指定分区键,数据分布是底层主动实现的。
2. 运维形式兼容性高
对于 DBA 来讲,运维形式兼容性越高,把握起来越快。
对我来说,相熟度较高的数据库有 Oracle、MySQL,较低的有 PostgreSQL,而 informix 数据库之前接触的就更少了。
所以自己对一些基于 Oracle、MySQL 研发的国产数据库上手更快一些,特地是体系结构、数据字典、备份复原、高可用架构等类似度很高,例如达梦数据库,一些问题解决的思路和 Oracle 十分类似,举一反三。而基于 informix 数据库国产数据库学习难度略大一些,此类问题一旦呈现问题,因为集体没有肯定的 informix 数据库常识储备,很难通过类比 informix 数据库来解决相似的问题。
15. 版本迭代
有稳固的版本迭代
例如几个月一次小版本迭代,几年一次大版本迭代,有稳固的版本迭代周期。
如果一个数据库产品版本多年长时间始终都没有迭代更新,可能会有以下几个起因:
1. 产品出道即巅峰,零 bug,并且满足客户所有需要(实际上不会存在)。
2. 产品客户少,没有深度用户,BUG、需要反馈率低。
3. 研发团队能力较弱,产品更新周期长。
所以心愿抉择的国产化数据库要有稳固的版本迭代。
总结:
墨天轮平台每月公布的国产数据库热度排行榜为咱们进行国产数据库选型提供了很好的参考价值,能够辅助领导咱们做出更主观的判断。
对于一个新产品的倒退,客户群体越宏大、越简单,需要就会越多,产品也会越来越欠缺,相同,如果一个国产数据库产品,只有个别几家客户,甚至只是公司外部应用,应用场景少,业务模型也有局限性,试错老本就会很高,这也是不倡议思考间接应用墨天轮热度排行榜排名特地靠后产品的起因。
集体认为,现实的交易类 OLTP 国产数据库应具备以下特点:
属于 OLTP 类型数据库,数据库厂商具备国企或大厂背景,架构反对单机、主备、共享集群、分布式集群等,硬件资源需要低、硬件成本低、齐全自研、自主可控,具备欠缺的售后反对能力,数据库产品热度高,官网技术文档成熟,具备官网技术认证,具备银行类外围零碎胜利替换案例,齐全通过公司外部 POC 测试,具备稳固的版本迭代,费用老本适中、语法和运维等应用习惯兼容性低等。
目前还没发现百分百完满的国产数据库产品,当然金无赤足,人无完人,没有完满的产品,只有适宜的产品。在国产数据库选型当中也须要有肯定的取舍,比方有些关键点是必须满足的,例如必须是 OLTP 类型数据库,如果错选成了 OLAP 类型数据库,业务的稳定性、数据库的完整性、一致性可能会呈现重大毁坏。而有些关键点能够适当放宽,例如运维形式兼容性等,能够将每个关注点设置相应的权重分数,最终依据总得分来抉择适宜的国产数据库。
原文链接:https://www.modb.pro/db/1693833019517915136
申明:本文为为墨天轮社区特约作者 陈举超 独家供稿,内容原创,仅代表作者个人观点,欢送大家交换、探讨。如需转载请分割作者或墨天轮官网。如您对上述内容有意见和倡议,请在下方评论区指导和交换,或点击作者墨天轮主页留言。
更多精彩内容尽在墨天轮技术社区,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、流动直播、在线课程、文档阅览、资源下载、常识分享及在线运维为一体的对立平台,继续促成数据畛域的常识流传和技术创新。