18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 电子商务 > 为什么说OceanBase4.0开启了国产数据库新的里程碑?

为什么说OceanBase4.0开启了国产数据库新的里程碑?

时间:2023-03-31 02:58:01 | 来源:电子商务

时间:2023-03-31 02:58:01 来源:电子商务

传统关系数据库本质上是单机系统,通常采用昂贵的高端服务器和储存,也因此较难以应对海量互联网应用所带来的高扩展、高性能要求等;但它的解决方案,分布式数据库虽然具有高扩展性,却因为高扩展性损失了性能。OceanBase 4.0的优点在于,它不仅可以作为分布式数据库,也可以作为传统数据库(单机系统)使用,甚至可以兼具媲美单机数据库的高性能(相比MySQL),以及分布式数据库的高扩展性。此外,OceanBase 4.0还是业界首个单机&分布式一体化架构产品,即适用于规模庞大的银行核心系统和巨型电商网站,也支持小规模场景的单机化部署,可大可小,大大降低数据库的使用门槛。

这就比较厉害了。

事实上,在过去半个世纪左右的时间里,数据库从无到有,经历了层次、网状和关系型数据库几个发展阶段,时至今日,关系型数据库已经完全占据了主流,而且随着数据越来越多,各大公司的数据业务也越发重要,对数据库的并发能力、伸缩性能和数据性价比的要求也越发苛刻,这些问题集中式的通用关系型数据库都难以满足。从目前来看,业界共识是需要可以支持高并发,强伸缩性的数据库系统来推动商业数据库的发展,这一思想的代表产物就是分布式数据库,而OceanBase是分布式数据库中的一个代表产物。

图源自网络
早在2010年,蚂蚁集团就已经开始立项研发OceanBase,并在次年发布了0.1版本,首先应用在淘宝收藏夹。2014年,OceanBase首次替代 Oracle 在支付宝交易系统上线,负担“双十一”10% 流量,到今天已经连续9年稳定支撑双11峰值的严峻考验。2016年,OceanBase的1.0版本在支付宝账务系统上线,为包括交易、支付在内的所有的核心业务提供支持,峰值可达12 万笔/秒支付。

2018 年,OceanBase 发布2.0 版本,定位为金融级分布式商业数据库,为南京银行在内的多家金融客户提供支持,并扩展至智慧企业、证券、保险等场景。2021年,OceanBase 3.0升级为支持混合负载(HTAP)的企业级分布式数据库,同时具备事务处理和数据分析两类任务的高性能能力。2022年8月10日,OceanBase发布4.0版本,推出业内首个单机分布式一体化数据库,突破分布式数据库的单机性能瓶颈,让分布式数据库更具通用性。

1. OceanBase的设计思路,以及从1.0到4.0所反映的互联网产业变革

二十世纪六十年代,国外就已经出现了商业数据库,七十年代,关系型数据库的概念兴起,在这个时代,联机交易处理逐渐发展,数据库广泛应用于银行、证券、民航、缴费等领域。而同一时期,国内的数据库理论研究刚刚起步,国内市场长期被Oracle、IBM和微软垄断。

数据库发展历程(图源自网络)
传统应用领域的数据库系统,通常只有少数人和设备并发操作数据库,例如银行的职员及ATM机、商场的收银员、飞机票火车票的售票员等,后台的数据库系统的并发访问往往只有几千个。然而,在互联网时代,每个用户都可能访问数据库,互联网应用的后台数据库需要具备几百万甚至更高的并发处理能力,设计时需要满足高并发和强一致性,而这对于数据库产品往往是一种两难的路径。

而且互联网应用的访问量波动性极大,可能在几小时内增加/减少几十倍,需要数据库具备很强的伸缩性。尽管2003年起阿里就是Oracle在亚洲的大客户,但传统数据库的性能瓶颈和成本压力还是限制了淘宝业务的增长,因而开始研发针对互联网应用的OceanBase关系数据库系统。

图源自网络
自研数据库一般有两条路径,一条是基于PG/MySQL/ Clickhouse/RocksDB等相对成熟的国外开源项目内核做自研,例如TiDB、openGauss等。而为了克服高并发、强伸缩性、低成本、高可用等挑战,OceanBase选择从头开始自研一款通用的国产分布式数据库。作为关系数据库的核心技术,事务的ACID原则是保障淘宝和天猫等商业交易业务和支付宝等金融交易业务的关键。为了控制单笔交易的成本,OceanBase使用PC服务器及其磁盘,主要是固态盘代替了传统数据库使用的高端服务器和存储。读写事务性能都是数据库的主要指标,因为读事务可通过缓存提升性能,OceanBase在设计实现上偏重于写事务的性能,并消除了磁盘的随机写,以充分利用固态盘良好的随机读性能[1]

图源自网络
为应对互联网业务的伸缩需求,OceanBase采用了分布式架构,可随时增加/减少服务器,并自动进行数据迁移和负载均衡,以提供极致的扩展能力。而在故障恢复方面,由于PC服务器的故障率更高,OceanBase提出单元化架构实现异地多活和三地五中心容灾架构,其本质是将系统进行水平拆分或数据后的逻辑隔离,单元化中的每一个单元都具备完整功能,保证软硬件故障不会造成太大影响,随时有备份可以同城或异地容灾[2]

通过上述设计,OceanBase主要解决了数据库的扩展性和成本痛点。到2018年2.0版本发布后,OceanBase替换了蚂蚁交易、支付业务在内所有核心业务部门中的商业数据库,实现了对于核心数据库的自主可控。作为金融级的分布式商业数据库,南京银行成为OceanBase的第一家外部客户。

图源自网络
随着云计算的发展,依托云原生技术的分布式数据库技术带来新的技术革命。除了资源池化和计算与存储分离外,云原生技术能够让数据库的计算分析一体化,不再需要两套系统搭建OLTP(在线交易处理)和OLAP(在线分析处理),并耗费大量的资源做数据迁移。顺应这一发展趋势,OceanBase的3.0版本支持HTAP 混合负载,大幅提升了事务处理和数据分析性能,帮助企业实现数字化转型。

图源自网络
针对分布式数据库的单机部署局限和成本问题,最新发布的OceanBase 4.0则采用了单机分布式一体化架构,解决了分布式数据库无法在小型设备上部署的痛点。OceanBase 4.0最小可在4核8G的电脑上正常运行,且单机部署性能超越集中式数据库MySQL,可实现小型化的按需扩展。这意味着OceanBase 4.0能够覆盖更丰富的应用场景,成为云时代的通用数据库,并将为中小企业的低成本数字化转型创造条件。

2. 为什么分布式数据库存在性能损失?用户在性能损失中可能失去的是什么?

随着系统交易量的不断上升,集中式数据库暴露出读写性能严重下降的缺陷。面对海量数据的场景化需求,自2000年至今,分布式数据库逐渐成为主流选择。分布式数据库(Distributed Database),简称DDB,即物理上分散而逻辑上集中的数据库系统。它是数据库技术与计算机网络相结合的产物,包含若干个物理意义上的分散的数据库单元,而单元之间通过网络进行连接,通过网络协议进行数据交换。也因此,高度依赖高速网络。

图源自网络
然而,分布式数据库也存在性能损失,其最大的问题是引入了数据传输,而数据传输会给系统带来额外的处理时延和计算难度,这会极大降低数据库本身的性能,不仅仅是多节点同时工作时的数据校验等工作,在单节点工作时依然会有所体现。为存储海量数据,分布式数据库引入了数据分片的概念,即将数据进行拆分,分散在多个数据库实例上,在查询时将切片数据汇聚起来。分布式数据系统需要应对网络故障、节点故障带来的性能损失,用户也会因数据错乱受到困扰。例如,在用户认为是正常的事务执行中,读写数据时出现数据异常、顺序错误或部分缺失的情况,使用错误的数据导致出现损失。

并发控制(图源自网络)
此外,由于数据库要满足“高可用、高可靠”以及在线实时提供服务的特性,因此每个数据分片就有了多个副本。数据多副本使得分布式数据库的“一致性”问题变得更为复杂,一旦出现网络延迟导致并发事务的间并发访问,就会造成副本间数据同步与数据可见性的异常情况[3]。数据备份和复杂的结构也让硬件成本开销大大增加,这意味着在单机系统中,分布式数据库的性能要远远落后于集中式数据库,仅当数据库规模扩大到一定数量级时,分布式数据库才具有部署价值。

3. 当分布式数据库和单机数据库性能可以媲美,这会带来什么样的改变?

近年来我国数字经济如火如荼,数据库、操作系统等基础软件就是数字经济繁荣发展的基石。据中国信通院测算,2020年中国数据库市场规模约241亿元。预计到2025年,中国数据库市场规模将达688亿元,年复合增长率为23.4%,这意味着数据库的重要性日益增加。

2020年全球企业基础软件各部分市场规模(图源自网络)
相比关系型数据库市场被头部企业占领的情况,分布式数据库是我们国产数据库弯道超车,打破国外集中式数据库壁垒的绝佳途径。分布式数据库的优势是通过水平扩展的方式,把数据分散存储到多个节点上,以较低的成本地突破磁盘、CPU和内存等单机瓶颈;将数据在多个节点上并行执行,提高了整体的吞吐效率,满足在线高并发业务请求和海量数据存储的需求;性价比高,可用性好。分布式数据库的缺点也很明显,即分布式事务的代价较高。这主要是因为通信传输开销;数据的存取结构复杂;容灾等造成的资源需求。与单机的集中式数据库相比,分布式数据库往往只在大规模应用中具有性价比优势,适合服务大企业的海量数据存储和分析。

而OceanBase 4.0的单机分布式一体化架构则是数据库领域的一大突破,也让其应用场景不再局限于金融等大型企业。针对中小企业的数据库小型化需求,OceanBase 4.0采用动态日志流技术降低硬件配置要求与资源开销,这让分布式数据库既具备大规模处理的能力,又能在性能上与传统单机数据库相抗衡。因而在小规模的场景下,OceanBase 4.0在单机上可作为传统数据库使用,具备分布式部署的完整功能,在可扩展性上相比单体机有很大优势,不必担心后续业务量改变导致的架构调整。

这将极大扩展OceanBase的应用范围,我们在设计高性能解决方案时,不必额外优化数据库分布式所带来的资源损耗,这对用户和行业来说都有比较重要的意义。各类客户选用OceanBase 4.0后,不必困扰于规模小而无法部署分布式数据库,在业务发展不同阶段均能按需求扩展,从而满足各种应用场景需要,极大降低企业使用分布式数据库的门槛。

当OceanBase部署至各行各业,这或许是一种数据库“大一统时代”的来临。

参考

  1. ^阳振坤.OceanBase关系数据库架构[J].华东师范大学学报(自然科学版),2014(05):141-148+163.
  2. ^深入浅出:一文读懂数据库发展、实践与未来,https://baijiahao.baidu.com/s?id=1600401122950225165&wfr=spider&for=pc
  3. ^张永奎. 数据库原理与设计[M].人民邮电出版社:, 201909.260.

关键词:数据,国产,里程碑,开启

74
73
25
news

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

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