18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 电子商务 > 国产数据库OceanBase自白第二季之目标、差距、优势、机会

国产数据库OceanBase自白第二季之目标、差距、优势、机会

时间:2023-03-13 07:38:01 | 来源:电子商务

时间:2023-03-13 07:38:01 来源:电子商务

大家好,我是OceanBase,截至2021年2月21日,我最新版本是3.1.2,通过官网地址可以下载,https://open.oceanbase.com/softwareCenter/community ,依然是社区版和企业版,两者都是同样的内核处理引擎,但是商业版提供更多的功能服务和技术支持,保障你生产集群稳定健康的运行,当然喜欢白嫖的同事可以使用社区版,免费的东西也很香。3.1.2带来新来的新特性对已经存在的工具OCP【面向运维人员使用】、ODC【开发者打造的图形化应用开发工具】、OMS【为企业应用迁移打造的图形化数据迁移工具】优化升级,根据用户反馈过来数据,经过我们后台研发讨论达成一致做出的细节优化,希望可以提升各位工程师的使用体验和操作手感。

紧接国产数据库OceanBase自白第一季主题自我介绍,这次国产数据库吐嘈大会第二季我的主题是目标、差距、优势、机会。虽然我们曾经在内部把Oracle替代下来,但是Oracle依然强大,根据dbegnine的数据,近十年Oracle一直长居霸榜第一名。Oracle不止在中国很强大,在世界上也很强大,它的品牌意识已经根植人心,所谓知彼知已百战百胜,我们对Oracle做了一些调研概括同时也对自己的分布式技术发展进行剖析,综合比较,有助于进步。

认识

Oracle的技术革命迭代可以分为三个阶段.

Oracle三个阶段的发展,由始至终立足于一个单体数据库的基础之上,即使使用RAC也是立足于集中式的架构之上,由头到尾,它没有考虑数据分片,把硬盘IO分散在若干个节点之上,它对IO提出更高的要求。19c版本中,ADG中的备库支持DML操作,颠覆传统的主写备读概念,把读写分离功能根据实际承受压力,当备节点休闲,会把过多的写请求转发到备节点,提高资源利用率,充分榨干单机的IO空间。 集中式架构中RAC一般搭配存储队列,通过硬件例如DS8000提高IO吞吐能力。为了提升IO处理能力,它研发了In-Memory技术,使用了In-Memory功能之后,数据库consistent gets和cost消耗可以比以前快很多。

单机和集中式的架构也有天然的好处,那就是稳定性、可靠性、健壮性,所有的信息都同一个主体传播。不需要担心网络传播后的不稳定性以及不确定性,而你需要使用2pc以及日志手段、复杂协议保障信息一致性。Oracle的伟大之处,把单机比喻为一个小岛,一直以来,它勤勤恳恳在小岛播种,精益求精利用每一分土地空间,21c又融入区块链的功能进去,至今最新Oracle的安装包2G左右,相对Mysql体积大了几倍,但是它却是放之四海皆标准的全球车。

oracle日本丰田、本田的燃油车的机械工业技术发展了几十年,我们国产车有没有超越他们的可能性?我们从机械技术出发比他们要晚30年,无论是专利、设计、人才、经验我们都与他们巨大的距离。国产车燃油车当然天天进步,但是从市场的响应来说,从客户感受来看,目前国产车燃油车能用,没有大问题,但是总有很多小问题。

我们想超越日系车,我们只能走另外一条赛道,那就是新能源技术路线,在电能的技术驱动上,大家基于相同的起跑线,我们更有希望。事实上,中国在电能车的技术在世界居于领先地位,主要由于我们的研究早、投入资源多。 同理,Oracle的9i花了10年实现品牌产品的可用性,Oracle的11g花了10年塑造产品品牌的稳定性和健壮性,Oracle的21c打造了产品品牌的平台化建设能力,整整30年的距离,国产数据库要走出困境,摆脱国外产品的笼罩的阴影,必须走另外一条路径,只能走分布式技术路线。

第一代分布式技术

阿里是国内不多最先接触分布式技术的企业之一,由于业务流量激增,我们要找更好的解决方案,最早的分布式技术可以追溯到数据库中间件。经典代表作品cobar、TDDL等等,数据库中间件架构图如下

数据库中间件是分布式技术发展的初级阶段,DBMS全称是data base manager system,即数据库管理系统,中间件负责统一输入和统一输出,主要司职负载均衡、读写分离、SQL解析、结果归并、排序分组,其实中间件是一个不成熟的管理系统,为了丰富功能,有时我们会额外加上监控组件、元数据组件,对底下的真正的DBMS的DataServer进行管理,DataServer的数据活动范围基于自身的MS(管理系统)对外服务 ,DataServer可以是MySQL或者PostgreSQL。中间件必须与各个DataServer的MS交互,囿于两者管理系统不同,所以动态数据管理有很多约束和限制,表现为中间件集群需要增加的数据,涉及全部数据重新分布,如何保障新节点分摊合适的数据?中间件集群其中一个节点压力过大,如何把压力转移到其它节点上面?复杂SQL事务如何写入集群,并保障可以回滚。DataServer的不同版本意味着中间件要适配应对,增加中间件的开发维护复杂性。

第二代分布式技术

第二代分布式技术以谷歌的Bigtable产品做代表,Hbase是Bigtable的开源产出,Hbase一般是做OLAP的一对一的业务场景,谷歌里面Bigtable主要用来单行事务的OLTP场景。

第二代分布式技术的亮点是统一了所有的DataServer,通过一个MS对所有的DB进行管理,解决第一代分布式存储的痛点问题,但是它也存在如下缺点,
1.管理功能不完善,它没有SQL工具,让传统DBA体验不友好。
2.并发度不够高,只有一个数据副本同时提供读写服务,无法满足激增的业务需求。
3.数据高可用性,当一个tablet server宕掉,其它存活的tablet server再从文件系统里面读取数据,需要一点时间加载,在线实时服务能力有待提高。

第三代分布式技术

第三代分布式技术以谷歌的Megastore产品为代表。Megastore是基于Bigtable的基础上开发的,功能上多了SQL,通过Megastore可以使用SQL语言操作数据库。性能上的性能通过多副本的方式,即同一个数据有三个副本,分别位于不同的Bigtable实例,根据不同副本的不同版本的数据状态,Megastore通过复制服务器、协调者、Megastore客户端实现不同时候的数据读写。三个组件角色分工如下

Megastore客户端: 提供Megastore到应用的接口,应用通过客户端操作Megastore的实体组。Megastore系统大部分功能集中在客户端,包括映射Megastore操作到Bigtable,事务及并发控制,基于Paxos的复制,将请求分送给复制服务器,通过协调者实现快速读等。
复制服务器:接受客户端的用户请求并转发到所在机房的Bigtable实例,用于解决跨机房连接数过多的问题。
协调者: 存储每个机房本地的实体组是否处于最快状态的信息,用于实现快速读。

并发控制上,Megastore提供了三种读取模式:最新读取、快照读取、非一致读取。



在索引的设计上,Megastore对于多个Bigtable实例里面的tablet 数据分片,若干个tablet 数据分片用一个实体组包围起来进行管理。索引主要分为局部索引和全局索引,局部索引指向的数据在实体组内,全局索引指向的数据在实体组外。从管理层面来看,数据管理系统实现数据的访问传输控制的细粒度控制能力,用人话来说,将数据库比喻成中国,寻找住在皇后大道东绿岸苑8街5号2402的李二狗,局部索引打的标签可能是广东省或者香港,如果广东省找不到去香港里找,全局标签打的标签是自治区,它会从香港或者澳门 两个可能性地方去找。没有局部索引比全局索引快,或者全局索引比局部索引快的说法。

第四代分布式技术

第四代分布式技术以谷歌的Spanner产品为代表。Spanner并不是基于Megastore之上建设的,而是从零开始建设的,却具有Megastore所有的功能和性能。为了事务精准,Spanner引入True time的概念,但是笔者认为Spanner最大的变化架构管理上的变化。Spanner引进Zone资源管理技术对集群管理,所有的PC服务器打上一个标签,分派指定的zone。一般集群有三个zone,zone结构决定业务数据中心解决方案偏好。

zone将资源伸缩性发挥到极致靠以下三步,第一步把所有的PC服务器打上ZONE标签 ,声明类别,第二步把所有的PC服务器的CPU、内存都汇成一个巨大的资源池,第三步资源池分一块出来与租户或者相关实体组进行绑定。Oracle对标的数据库厂商中, spanner是少数不多能拿平台租户管理的功能属性与PDB进行对比。下面是Spanner的架构组件介绍。

再来一张关于我的架构图,看起来是不是差不多,我的是去中心化架构,每个节点的角色之间人人平等。root service相当于管理服务,至少三个隐匿集群节点上,提供Placement Drvier、zonemaster的功能。
ob proxy: 提供获取数据的位置信息服务。客户端需要通过它才能够知道数据由哪个ob server服务。
ob server: 提供具体的数据存储服务。

我们用一个故事概括4代分布式技术的发展。一个大国征服了十个小国,将十个小国收纳旗下,仍然保留十个小国的自治管理功能力,十个小国的军队只对小国国王马首是瞻,每个小国有各自所属的管理制度,那么大国要指挥小国军阵,必须经过小国的规矩流程。这是数据库中间件!另一个方案,大国统一管理撤掉小国政府,改立自治区,由中央统一管理,开始收编 所有的军队,军队以分片为单位,利于跨国传输。第三代分布技术为了强大的军事实力,同样一个精锐军队,在其它地方有两个相同的精锐军队,将三个军队对RAFT或者PAXOS编组并对外开放,如果同一个组就是局部索引 ,如果跨组就能全局索引。第四代分布是架构管理上重新整顿,以前是自治区,现在是省、市、镇 、区的细粒度资源管理按下划分,从ZONE开始决定省区域【不同的服务器打上不同的标签 】,按市【不同租户得到不同的资源】、按镇【不同的数据库和表得到的资源】、通过省、市、镇、区的层次级围绕用户使用、访问、权限做细粒度的管理。

优势

我现在的运营公司奥星贝斯虽然2020年06月01日成立,但是15年前我们很早就开始投入研究分布式技术并应用于生产,最早的淘宝流量突飞猛进,给系统严重的负荷,我们通过各种技术减压降流,其中一个利器就是分库分表,我们对Oracle分库分表,我们对MySQL分库分表。对数据库底层代码探索中,我们出了不少Oracle ACE,甚至我们掌握了MySQL源代码,并能独立对其代码优化,我们才有了心思做一个完全属于自己的产品。我们最大的优势是基于多年的分布式技术沉淀,与世界分布式发展主流技术历史几乎并肩,甚至某些方面我们有创新超越。

第二个优势,我们专心聚焦OLTP的领域 ,针对OLTP不同业务场景有丰富的产品线。例如银行业务场景并发度不高的情况 ,我们提供集中式与分布式的一体化设计解决方案。有些人质疑现在全世界都搞云了,一体机是过去式了。我们的经验,集中式更能提供稳定性、可靠性、健壮性,更符合金融业的安全要求。针对高流量的互联网交易场景,我们提供完全分布式的解决方案,满足业务不断扩张我的需求。针对数据分析的各种应用场景,我们天生行列共存,当数据生产后,我们可以马上对数据进行消费分析。如果特列复杂的业务场景例如拉链,我们有专属的生态工具ETL到另外一个地方重新建模。针对大型智慧的智慧城市应用集群,我们提供ZONE多租户管理能力的解决方案,保障计算资源输出稳定。针对工业互联网机器实时大数据时序业务场景,我们提供OceanBase CeresDB产品级解决方案。

第三个优势,我们的案例用户包括中国工商银行、中国建设银行、中国民生银行、中国人寿、中国人民保险 、中华保险、南京银行、西安银行、天津银行、云南红塔银行、广东农信、招商证券、浙商证券、网商银行、中国移动。。。。。等等,还有更多。重视信息安全的企业选择我们,追求敏捷性能的企业选择了我们,需要灵活的资源苛刻的央企选择了我们。

机会

解决思想,实事求是,空谈误国,实干兴邦。机会从来是留给做好脚踏实地的人,近几年国产数据库的浪潮,只能说明国家鼓励企业试水国产数据库。打铁还需自身硬,望着前方的目标,只有客观认识差距,自己哪里不足,哪里还需要加强,才能拉近我们的距离。向OpenGauss学习,学习他们的库内AI处理能力,向TiDB学习,学习他们一直排在第一的所有的因素,向Oracle学习,学习他们的工匠的精神,十年如一日打磨同一个产品【从12C到19C】,我是OceanBase,谢谢大家。

关键词:目标,差距,优势,机会,数据,国产,自白

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭