弁言
天下风云出我辈,一入江湖光阴催。
有人说,有数据库的地方,就有“江湖”。
曾经多少前辈满腔热血投入国产数据库奇迹中,悠悠数十载,又如白驹过隙,最终不知几家欢喜几家愁。
截止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排行榜:
DB-Engines Ranking - popularity ranking of database management systems
420 systems in ranking, August 2023
国产数据库
通过国外db-engines数据库热度排行榜来看,国产数据库排名均偏后,此中TiDB排名103名,OceanBase排名147名,国产数据库推向全天下仍有很长一段路要走。
国产数据库统计
国产数据库数目
国产数据库产品数目险些每月都有增长,2020年9月统计104个,到2023年8月已经增长到286个,按照市场规律,优胜略汰,预计迩来几年会出现显著的降落趋势,个人认为,最终完全存活下来的国产数据库产品并不会太多,盼望好用的数据库产品能够及早推广出去。
按模型统计
关系型数据库仍占主导地位,也是竞争最激烈的赛道。
模型关系型多模型键值列簇时序空间向量搜索图数目17631244157632
按处置惩罚场景统计
处置惩罚场景OLTPOLAPHTAP数目1083329
按技术架构统计
技术架构会合式分布式数目116137
按部署模式统计
部署模式当地部署云原生数目20047 按开源/商业统计
开源/商业开源商业数目48238 双雄争霸 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
声明:本文为为墨天轮社区特约作者 陈举超独家供稿,内容原创,仅代表作者个人观点,欢迎大家交流、讨论。如需转载请联系作者或墨天轮官方。如您对上述内容有意见和建议,请在下方评论区辅导和交流,或点击作者墨天轮主页留言。
更多出色内容尽在墨天轮技术社区,围绕数据人的学习成长提供一站式的全面服务,打造集消息资讯、在线问答、活动直播、在线课程、文档阅览、资源下载、知识分享及在线运维为一体的同一平台,一连促进数据领域的知识传播和技术创新。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |