您当前的位置:首页 > 电脑百科 > 数据库 > 百科

OceanBase这次把我惊到了!

时间:2023-11-29 14:03:16  来源:微信公众号  作者:码农翻身

我刚开始工作时做一个OA系统,业务也比较简单,用户数也很少,数据很“单纯”,一个SQL Server数据库感觉就绰绰有余了。

后来互联网大爆发,尤其是移动互联网到来以后,数据越来越多,越来越杂。

OceanBase这次把我惊到了!图片

单机存不下来,又得搞分布式,分库分表;不仅仅是OLTP,还需要OLAP,HTAP……

公司被迫采用各种各样的文档数据库、列式数据库、键值数据库来应对,变成了大杂烩。

我时常在想,有没有一种的数据库,把这些问题统一解决呢?

解决不了全部,能解决80%也行啊。

答案是肯定的,那就是OceanBase。

OceanBase我在之前的漫画中给大家介绍过,它最早是为了解决淘宝和支付宝中海量数据处理而诞生的,完全自主研发的原生分布式数据库。

OceanBase这次把我惊到了!图片

OceanBase 已连续 10 年稳定支撑双 11,创新推出“三地五中心”城市级容灾新标准,在被誉为“数据库世界杯”的 TPC-C 和 TPC-H 测试上都刷新过世界纪录。

OceanBase采用了一种一体化的设计思路来解决数据库问题,包括一体化架构、一体化引擎和一体化产品,接下来分别给大家聊一下。

OceanBase这次把我惊到了!图片

1.一体化架构

一体化架构的意思是单机分布式一体化,实现数据可大可小。

如果企业规模小,数据量也小,完全可以把OceanBase做单机部署。实际上,OceanBase甚至可以部署到树莓派这样简单的计算机中,实现主备库的模式。

在企业的数据变大的时候,OceanBase能实现平滑伸缩,把单机变成分布式,对用户完全透明。

OceanBase这次把我惊到了!图片

2.一体化引擎

2.1 一体化存储引擎

大家都知道,交易型应用(OLTP)和分析型应用(OLAP)对存储的要求是不同的。

OceanBase这次把我惊到了!图片

但是现在很多系统既要支持OLTP,又要支持OLAP,即混合负载(HTAP) 。

OceanBase是一个Shared Nothing的多副本架构,这就有两种设计思路:

(1)每个副本都用相同格式(如行存/行列混合),所有请求都直接由主副本提供服务。

这种方案没有数据延迟的问题,但没有支持列存,OLAP差一些,适合OLTP+非常轻量的OLAP场景。

(2)副本采用不同的存储格式,主副本行存支持OLTP,某一备副本用列存支持OLAP。

这种方案通过引入列存大幅提升了OLAP的能力,但是主副本与备副本之间会额外引入毫秒级的延迟,适合简单的OLTP的场景加上中等的OLAP的场景。

对于这两种方式,OceanBase通过一体化的存储引擎都会进行支持,通过一套数据库内核,同时实现OLTP和OLAP两种业务。

2.2 一体化执行引擎

在混合负载下,肯定既有简单查询,又有复杂查询,对于简单查询,数据量小,那就由SQL层把数据从存储层拉上来。

复杂查询涉及到的数据量比较大,所以要并行执行,SQL层需要把执行计划推到存储层,降低网络开销。

OceanBase这次把我惊到了!图片

这种推拉结合的方式,让执行引擎把简单查询和复杂查询很好地融入到了一套系统中。

2.3 存算分离引擎

OceanBase是Share Nothing架构,但云端是Share Storage,两者之间似乎存在矛盾,如何融合呢?

OceanBase采用了LSM-Tree做底层存储,数据分为 基线数据+增量数据,在多个副本之间,基线数据是一样的,所以可以共享一份存储。

通过日志副本和仲裁副本的方式,进一步降低计算开销,最终用一个副本的存储,接近两个副本之间的计算的极小代价,在云端实现了弹性。

3.一体化产品

3.1 一体化SQL

相比集中式数据库和单机数据库,分布式数据库有些事情很难实现,比如大事务,涉及到参与者,分区数特别多,分布式事务基本上不可能完成。

再比如锁表,如果表涉及的分区特别多,也不可能把每个分区都锁住。

本质的问题就是原生分布式数据库是一个分区一个独立日志流,使得锁表这样的操作和分区数成正比。

OceanBase则通过动态日志流的技术,把一台机器上所有分区动态融入到一个日志流,使得大事务,锁表的复杂度与机器数成正比,不与分区成正比。

最终实现分布式数据库与集中式数据库与单机数据库完全对标的SQL功能。

OceanBase这次把我惊到了!图片

3.2 多模融合

OceanBase数据库不但可以支持多种模型,并且支持模型之间的互操作,真正实现了多模融合。

OceanBase这次把我惊到了!图片

3.3 一体化产品家族

OceanBase围绕关键业务负载,提升关键生态能力。

比如OceanBase实现了很多关键核心业务要求的“变更操作可以回溯,回滚”,把企业的合规流程融入到了数据库开发者工作流程中。

很多关键应用,用户都要求新老系统长期并跑,一键逃生,不管新系统出现什么问题,都可以一键逃生到老系统。

OceanBase这次把我惊到了!图片

4.OceanBase 4.2.1 LTS版本

最新发布的OceanBase 4.2.1 LTS是首个长期支持、可规模化使用的一体化数据库,具备OLTP完整的核心功能。

在以上描述的核心技术支持下,它性能更强,TP性能是3.2版本的1.9倍;AP性能是3.2版本的2.7倍。

通过引入基于仲裁的无损容灾方案,通过两个副本实现RPO等于0。

在OceanBase列存实验室版本展示中,与业界业内顶流列存数据库ClickHouse跑分PK,结果不仅性能处于同一水平,甚至还快了那么一点点。

5.总结

对数据库这个产品来说,其实用户并不关注底层的具体实现,集中式也好,分布式也罢,行存也行,列存也行。用户关注的是使用体验,是不是高可用、高安全、高性价比。

OceanBase在这一点上做得很好,它在不断解决各种场景问题,尤其是关键业务处理时,摸索出了一套最佳实践,形成了一体化的解决思路,这就是OceanBase最惊艳的地方。

当然,一体化不是简单的拼装组合,也不是要解决所有的问题,就像有了手机、电视,我们还是回去电影院看电影一样,在特殊领域还是需要用专业的数据库的。

用技术让海量的数据管理和使用更简单,希望OceanBase持续打造能够承载关键业务负载的一体化数据库,不断满足客户的需求。



Tags:OceanBase   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
OceanBase这次把我惊到了!
我刚开始工作时做一个OA系统,业务也比较简单,用户数也很少,数据很“单纯”,一个SQL Server数据库感觉就绰绰有余了。后来互联网大爆发,尤其是移动互联网到来以后,数据越来越多,越来...【详细内容】
2023-11-29  Search: OceanBase  点击:(180)  评论:(0)  加入收藏
从适配Oceanbase看分布式数据库运维与传统数据库的差异
随着OCEANBASE在金融、证券、运营商、能源等行业的应用越来越广泛,针对OCEANBASE的运维支撑工具的需求也被越来越多的用户提出来了。去年我们开始适配OB的动力来自于与一个金...【详细内容】
2023-10-10  Search: OceanBase  点击:(290)  评论:(0)  加入收藏
如何在Mac、Windows上部署OceanBase?看完这个就能秒懂!
OceanBase 在性能、扩展性,以及为企业用户提供的稳定可靠、可扩展的服务等优势,想必大家都心知肚明了。然而,对于广大的开发者来说,Mac、Windows如何部署OceanBase,并能流畅体验,...【详细内容】
2023-03-10  Search: OceanBase  点击:(197)  评论:(0)  加入收藏
Oracle 到OceanBase如何进行数据迁移?金融客户给出了真实反馈
对金融企业而言,系统架构从集中式转向分布式是大势所趋。在数据库层面,要从单机数据库转向分布式数据库虽极具诱惑,但更换数据库,企业决策依然会非常谨慎,因为涉及到巨大的风险和...【详细内容】
2023-02-27  Search: OceanBase  点击:(182)  评论:(0)  加入收藏
携程MySQL迁移OceanBase最佳实践
OceanBase作为分布式数据库,组件多、运维环境复杂是痛点。我们后续将基于现有的日志收集工具和分析工具,完成链路式的问题诊断,更精准地定位性能问题、集群内部任务问题等。一...【详细内容】
2023-02-09  Search: OceanBase  点击:(162)  评论:(0)  加入收藏
分布式关系数据库OceanBase与TiDB哪个更好
背景2021年6月1日,蚂蚁集团开源 OceanBase 代码,这款连续两年占领 TPC-C 榜首的数据库产品再次拥抱开源。而此时,在开源社区国产数据库的赛道上还有另外一位明星选手:TiDB。同为...【详细内容】
2022-10-24  Search: OceanBase  点击:(2325)  评论:(0)  加入收藏
OceanBase 数据采集
1、安装oblogproxyyum install -y yum-utils yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo yum install -y oblogproxy # oblogp...【详细内容】
2022-10-24  Search: OceanBase  点击:(436)  评论:(0)  加入收藏
中国人民大学队获得“OceanBase数据库大赛”冠军
“从0到1,系统地打造一个完整的数据库”,这可以说是数据库大赛领域的新高度。5月10日,作为国内首个分布式数据库内核开发大赛,“OceanBase数据库大赛”公布获奖名单,来自中国人民...【详细内容】
2022-05-10  Search: OceanBase  点击:(339)  评论:(0)  加入收藏
蚂蚁开源 OceanBase,开源分布式数据库又迎新玩家
今天是六一儿童节,蚂蚁选择在今天开源 OceanBase,想必是给各位分布式数据库用户送上的儿童节礼物吧!昨日凌晨蚂蚁已将代码推送到 GitHub:https://github.com/oceanbase/oceanb...【详细内容】
2021-06-02  Search: OceanBase  点击:(427)  评论:(0)  加入收藏
OceanBase开源,11张图带你了解分布式数据库的核心知识
蚂蚁集团自研数据库OceanBase已经开源,这对国产分布式数据库来说,是一个重磅消息。一直以来OceanBase作为商业数据库,披露的技术细节并不多,以后又多了一个可以拿来研究的优秀...【详细内容】
2021-06-02  Search: OceanBase  点击:(450)  评论:(0)  加入收藏
▌简易百科推荐
向量数据库落地实践
本文基于京东内部向量数据库vearch进行实践。Vearch 是对大规模深度学习向量进行高性能相似搜索的弹性分布式系统。详见: https://github.com/vearch/zh_docs/blob/v3.3.X/do...【详细内容】
2024-04-03  京东云开发者    Tags:向量数据库   点击:(4)  评论:(0)  加入收藏
原来 SQL 函数是可以内联的!
介绍在某些情况下,SQL 函数(即指定LANGUAGE SQL)会将其函数体内联到调用它的查询中,而不是直接调用。这可以带来显著的性能提升,因为函数体可以暴露给调用查询的规划器,从而规划器...【详细内容】
2024-04-03  红石PG  微信公众号  Tags:SQL 函数   点击:(3)  评论:(0)  加入收藏
如何正确选择NoSQL数据库
译者 | 陈峻审校 | 重楼Allied Market Research最近发布的一份报告指出,业界对于NoSQL数据库的需求正在持续上升。2022年,全球NoSQL市场的销售额已达73亿美元,预计到2032年将达...【详细内容】
2024-03-28    51CTO  Tags:NoSQL   点击:(13)  评论:(0)  加入收藏
为什么数据库连接池不采用 IO 多路复用?
这是一个非常好的问题。IO多路复用被视为是非常好的性能助力器。但是一般我们在使用DB时,还是经常性采用c3p0,tomcat connection pool等技术来与DB连接,哪怕整个程序已经变成以...【详细内容】
2024-03-27  dbaplus社群    Tags:数据库连接池   点击:(12)  评论:(0)  加入收藏
八个常见的数据可视化错误以及如何避免它们
在当今以数据驱动为主导的世界里,清晰且具有洞察力的数据可视化至关重要。然而,在创建数据可视化时很容易犯错误,这可能导致对数据的错误解读。本文将探讨一些常见的糟糕数据可...【详细内容】
2024-03-26  DeepHub IMBA  微信公众号  Tags:数据可视化   点击:(6)  评论:(0)  加入收藏
到底有没有必要分库分表,如何考量的
关于是否需要进行分库分表,可以根据以下考量因素来决定: 数据量和负载:如果数据量巨大且负载压力较大,单一库单一表可能无法满足性能需求,考虑分库分表。 数据增长:预估数据增长...【详细内容】
2024-03-20  码上遇见你  微信公众号  Tags:分库分表   点击:(13)  评论:(0)  加入收藏
在 SQL 中写了 in 和 not in,技术总监说要炒了我……
WHY?IN 和 NOT IN 是比较常用的关键字,为什么要尽量避免呢?1、效率低项目中遇到这么个情况:t1表 和 t2表 都是150w条数据,600M的样子,都不算大。但是这样一句查询 ↓select *...【详细内容】
2024-03-18  dbaplus社群    Tags:SQL   点击:(5)  评论:(0)  加入收藏
应对慢SQL的致胜法宝:7大实例剖析+优化原则
大促备战,最大的隐患项之一就是慢SQL,对于服务平稳运行带来的破坏性最大,也是日常工作中经常带来整个应用抖动的最大隐患,在日常开发中如何避免出现慢SQL,出现了慢SQL应该按照什...【详细内容】
2024-03-14  京东云开发者    Tags:慢SQL   点击:(4)  评论:(0)  加入收藏
过去一年,我看到了数据库领域的十大发展趋势
作者 | 朱洁策划 | 李冬梅过去一年,行业信心跌至冰点2022 年中,红衫的一篇《适应与忍耐》的报告,对公司经营提出了预警,让各个公司保持现金流,重整团队,想办法增加盈利。这篇报告...【详细内容】
2024-03-12    InfoQ  Tags:数据库   点击:(25)  评论:(0)  加入收藏
SQL优化的七个方法,你会哪个?
一、插入数据优化 普通插入:在平时我们执行insert语句的时候,可能都是一条一条数据插入进去的,就像下面这样。INSERT INTO `department` VALUES(1, '研发部(RD)', &#39...【详细内容】
2024-03-07  程序员恰恰  微信公众号  Tags:SQL优化   点击:(19)  评论:(0)  加入收藏
站内最新
站内热门
站内头条