国产主流数据库调研

国产主流数据库调研作者 来自广州的大侠原文来源 https tidb net blog 4a70bb91 国产数据库论坛

大家好,欢迎来到IT知识分享网。

作者:来自广州的大侠

原文来源: https://tidb.net/blog/4a70bb91

国产数据库现状

2018年,我国数据库市场目前仍被国外厂商主导,主要包括Oracle、IBM、微软、SAP等,且国外品牌的市场份额一直在70%以上。2018年,在国家政策的引导和支持下,国产传统数据库厂商稳步前进,互联网公司的自研数据库取得突破。国产数据库企业在可靠性、易用性等方面不断拓宽业务空间,并结合新技术革新推动数据库云化、服务化。目前,南大通用用户已经覆盖17个国家,国内32个省级行政区。部署总节点数超过6500个,总数据量超过100PB,2018年、2019年连续两年入选Gartner分析型数据库管理解决方案魔力象限。人大金仓申报的“数据库管理系统核心技术的创新与金仓数据库产业化”项目荣获2018年度国家科学技术进步二等奖,产学研的融合进一步助力国家信息化建设。巨杉数据库坚持从零开始打造分布式开源数据库引擎,是中国首家连续两年入选Gartner数据库报告的数据库厂商。

新兴数据库发展浪潮日益高涨,多模数据库也备受关注。2019年,华为发布了全球首款人工智能原生(AI-Native)数据库GaussDB和分布式存储FusionStorage 8.0,并持续入选Gartner数据库报告。腾讯云推出云原生数据库CynosDB,该款数据库的单节点读性能达到惊人的130万QPS,并且是业界第一款全面兼容MySQL和PostgreSQL的高性能企业级分布式云数据库。阿里云的云原生数据库POLARDB闯入2018年全球数据库魔力象限的远见者(Visionaries)象限,为国内首次。

以上摘自中国电子信息产业发展研究院 的《2018-2019年中国软件产业发展蓝皮书 行业篇》对数据库现状的描述。

再过两年形势大变,2021年6月1日OceanBase数据库产品正式开源,而且开源的是最新版本OceanBase3.1,表现得诚意满满。当初OceanBase曾经开源一段时间,但是马上就闭源,后面一直以商业软件定位。OceanBase此番举措很大可能性原因是因为受了TiDB的影响 ,作为名门望族的儿子,OceanBase背靠阿里巴巴、蚂蚁集团,能力肯定是有的,但是人气一直不如TiDB。TiDB2017年才开始开源,2018年还是一个名不经传的小伙子,2020年发布了TiDB4.0,版本最大的创新是加入Tiflash列式引擎,这标识TiDB已经具备HTAP的条件,而2021年再次发布TiDB5.0,Tiflash的版本有一个大迭代。最重要Tiflash的使用用户覆盖面广,包括有互联网行业、制造行业、金融行业等等, 社区建设得非常不错,博客、论坛随处都可以找到TiDB的学习资料。 而OceanBase因为商业的性质,大多数人对OceanBase只闻其名,不见其影。无论是官方还是百度,关于OceanBase的资料少之有少。2020年,OB首先建立独立运营的公司,再推出免费的初级认证OBCA,然后两个月又推OBCP中级认证,再过两个月推出了OBCE认证,OceanBase急火攻心的攻势,表明它要扭转乾坤,重夺市场的态度和信心。华为GaussDB比OceanBase早开源一年,区别于OB和TiDB,华为似乎没有什么雄心壮志成为数据库市场的龙头老大,数据库是信息应用必不可缺的一个基础工具,华为只希望把GaussDB打造成一个辅助工具,甚至自己定义了木兰协议,比apache协议还友好,openGauss可以随时商标转让中小企业商业使用。

产品对比考虑因素

主要考虑从数据库关键核心技术以及分布式系统特点各种维度综合进行比较,同时也考虑产品的可用性、稳定性、运维性等用户使用体验因素 ,不考虑数据库的运行性能,因为很难量测,数据库太多调测的东西,每家都有自己的法门。

系统架构

去中心化架构在外部看来, 集群在逻辑上是个整体, 与任何一个节点的通信相当于与整个集群通信,每个节点之间都是平等的。而中心化在集群内部却是阶级分明,职责分清,有些节点要安装A服务,有些节点要安装B服务,外面只能与指定的节点进行通信连接,数据通信还需要和其它节点打交道。hbase集群是典型的中心化架构,regionserver作为数据存储节点和计算节点,同时还需要hmaster作集群管控服务管理,zookeeper提供服务路由和集群状况感知功能,而同是属于nosql的cassandra就不一样了,Cassandra属于去中心架构,每个节点都是存储节点,当客户端访问任意一个节点的时候,这个节点临时上升为协调节点 ,按照集群通信协议,它会跟踪解决客户请求相关调度的一系列工作。

工程角度上来说,中心化架构清晰分明,所有的节点都朝着一个中心,通过中心来协调每一个节点的节奏。无论是产品安装还是生产运维,都更容易管理。而去中心化架构,并非中心节点去掉,而是中心节点已经融化到每一个节点,当需要马上使用时激活,设计需要考虑诸多问题,普通节点到中心节点的转换,中心节点宕掉了谁来替代?遇到冲突时通过谁来解决问题?所以去中心化必然是复杂为牲牺代价的。

OceanBase属于无中心化架构,TiDB和OpenGauss属于中心化架构。

其实,早期的OceanBase也是属于中心化架构。那时候,OceanBase的组件服务分为rootserver、mergeserver、updateserver、chunkserver,rootserver负责集群管理和数据分布、副本管理,相当于集群的大脑,而mergeserver负责SQL协议解析、请求转发、结果合并,updateserver负责写数据,而chunkserver负责读数据。一个读写请求流求后 ,mergeserver负责建立连接,解析请求后转发相应的chunkserver和updateserver,合并数据返回给客户端 。 如今的OceanBase,只有Observer和Obproxy,Obproxy主要面向客户端应用,把请求转发给observer集群,得到结果后返回给客户端。如果说早期的OceanBase是军工版,那么现代的OceanBase是民用版。通过OCP在安装OceanBase集群的时候,会提示你选择哪一个主机做rootservice,rootservice就是”中心”。 与去中心化的elasticserver一样,OceanBase提供自由选装的方式,你可以安装一个或

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/153536.html

(0)
上一篇 2025-03-03 16:10
下一篇 2025-03-03 16:15

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信