你必须要了解的国产数据库——OceanBase

news2025/1/12 21:07:36

文章目录

  • 前言
  • 1、什么是OceanBase?
  • 2、OceanBase名字的由来
  • 3、OceanBase 发展历程
  • 4、OceanBase优势
  • 5、OceanBase的核心特性
  • 6、应用场景
  • 7、未来展望

前言

一直以来,外国企业在数据库领域保持高市占率,主流的数据库系统大多数都是使用外国的产品。但随着中国数据库产品的发展,十年之间,国产数据库由过去的默默无闻一步步走上了历史舞台,并推动了全球数据库技术的蓬勃发展。今天就来带领大家了解一款国产数据库——OceanBase。
在这里插入图片描述

1、什么是OceanBase?

​ OceanBase是由蚂蚁集团完全自主研发的国产原生分布式数据库 .

​ 始创于2010年。已连续9年平稳支撑双11, 创新推出“三地五中心”城市级容灾新标准 ,是一个在TPC-C和TPC-H测试上都刷新了世界纪录的国产原生分布式数据库。 产品采用自研的一体化架构,兼顾分布式架构的扩展性与集中式架构的性能优势,用一套引擎同时支持TP和AP的混合负载,具有数据强一致、高可用、高性能、在线扩展、高度兼容SQL标准和主流关系数据库、低成本等特点, 助力金融、政府、运营商、零售、互联网等多个行业的客户实现核心系统升级。

​ 一款完全自研的原生分布式关系数据库软件,在普通硬件上实现金融级高可用,首创“三地五中心”城市级故障自动无损容灾新标准,具备卓越的水平扩展能力,全球首家通过TPC-C标准测试的分布式数据库,单集群规模超过1500节点。产品具有云原生、强一致性、高度兼容Oracle/MySQL等特性。

2、OceanBase名字的由来

蚂蚁金服的数据库为什么要叫Oceanbase呢?这其中也是非常有意思的。

1、目标远大

在2000年以后,联网终端大量出现,在信息传递、信息交流和信息共享的过程,产生了大量的数据,学界称其为大数据。当然也可以叫做海量数据。而Ocean base 中的Ocean就是海洋的意思,而Base则代表库的意思,Ocean base合在一起也是再说我们是可以容下海量数据的数据库,也就是说我们可是能容下大数据的数据库。由此可见企业格局之大,战略布局之广阔。

在这里插入图片描述

2、哲学含义

老子在《道德经》中说:“水善利万物而不争,处众人之所恶,故几于道。 居,善地;心,善渊;与,善仁;言,善信;政,善治;事,善能; 动,善时。 夫唯不争,故无尤。 人无常在,心无常宽,上善若水,在乎人道之心境,即,心如止水。”水具有极高的哲学智慧和处世技巧,这是值得人们学习的,而Ocean base 就是一个具有水的美好品行的地方。

在这里插入图片描述

3、命名传统

阿里系向来就是采用大格局进行命名的传统。在大城市或留过洋的人,都有一个毛病,那就是喜欢管大商城叫做mall。哥们上个月在伦敦玩的时候,在一个大mall里买了点东西。而阿里打算开一家网上商城的时候,马云就觉得他自己的那个商城,那可是天上的商城,一定要叫他天mall。按理这种朴素的想法,大家应该很嫌弃的,但是小马哥用他的实力改变了中国人的审美观。现在也没有人认为天猫这个名字土。

在这里插入图片描述

3、OceanBase 发展历程

  • 2010年,OceanBase 诞生,立项之初的目标就是做原生分布式数据库,当时业界并没有参考方案,成就了OceanBase从0到1。
  • 2011年,OceanBase正式进入电商业务,在阿里巴巴电商平台应用,服务了几十个电商平台的业务系统。
  • 2014年,在支付宝上线,这也实现了OceanBase核心交易场景的突破,支撑了历年双11的峰值。
  • 2016年,支付宝、网商银行包括交易、支付、账务会员在内的所有核心业务迁移到OceanBase。
  • 2017年,走出阿里巴巴和蚂蚁集团,开始对外商业化,南京银行是第一家运行OceanBase的外部客户。
  • 2019年,OceanBase参加TPC-C测试,取得6088万tpmC的成绩,打破了原有的世界纪录;同时,开始提供公有云服务。
  • 2020年,OceanBase正式进行独立公司化运作,将分布式数据库推向更广泛的行业客户,助力客户实现分布式架构转型;同时,TPC-C取得7.07亿tpmC的成绩,再次打破由自己创造的世界纪录,并支持HTAP混合负载。
  • 2021年,TPC-H取得1526万 QphH@30000GB的成绩,HTAP 能力行业领先。加大研发投入,正式发布社区版,获4000+ Star,1500+ 人才认证。从金融首选,走向国计民生;从核心行业,走向中小企业;从国内客户,走向海外拓展;累计客户400+,提供企业级数据管理解决方案。

在这里插入图片描述

4、OceanBase优势

  • 高性能:OceanBase采用了读写分离的架构,把数据分为基线数据和增量数据。其中增量数据放在内存里(MemTable),基线数据放在SSD盘(SSTable)。对数据的修改都是增量数据,只写内存。所以DML是完全的内存操作,性能非常高。
  • 低成本:OceanBase通过数据编码压缩技术实现高压缩。数据编码是基于数据库关系表中不同字段的值域和类型信息,所产生的一系列的编码方式,它比通用的压缩算法更懂数据,从而能够实现更高的压缩效率。
  • 高兼容:兼容常用MySQL/ORACLE功能及MySQL/ORACLE前后台协议,业务零修改或少量修改即可从MySQL/ORACLE迁移至OceanBase。
  • 高可用:数据采用多副本存储,少数副本故障不影响数据可用性。通过“三地五中心”部署实现城市级故障自动无损容灾。

5、OceanBase的核心特性

  • 高可用
    OceanBase 数据库将数据以多副本的方式存储在集群的各个节点,可以轻松实现高可用,保证 RPO=0,甚至异地多活。即使单个节点出现故障也不影响业务连续性。多副本能够满足从节点、机架、机房到城市级别的高可用、容灾要求,并且克服传统数据库的主备模式在主节点出现异常时 RPO>0 的问题。
  • 可扩展
    OceanBase 数据库具有极强的可扩展性,可以在线进行平滑扩容或缩容,在扩容后自动实现系统负载均衡。并且扩容或缩容过程对应用透明。
  • 低成本
    OceanBase 数据库可以在通用服务器上运行,不依赖于特定的高端硬件,能够有效降低用户的硬件成本。OceanBase 数据库使用基于 LSM-Tree 的存储引擎,能够有效地对数据进行压缩,并且不影响性能,可以降低用户的存储成本。
  • HTAP
    OceanBase 数据库的分布式并行计算引擎对 OLTP 应用和 OLAP 应用都进行了很好的优化,并且支持跨数据库节点的 DQL 和 DML 并发执行,真正实现了一套计算引擎同时支持混合负载。
  • 兼容性
    OceanBase 数据库高度兼容 MySQL 数据库生态。OceanBase 数据库支持 MySQL 5.6 版本全部语法以及兼容 MySQL 5.7 的绝大部分功能和语法,兼容 MySQL 5.7 版本的全量以及 8.0 版本的部分 JSON 函数,可以与 MySQL 业务无缝切换。
  • 多租户
    OceanBase 数据库通过租户实现资源隔离,每个数据库服务的实例不感知其他实例的存在,并通过权限控制确保不同租户数据的安全性。多租户与 OceanBase 数据库强大的可扩展性相结合,能够提供安全、灵活的 DBaaS 服务。

在这里插入图片描述

6、应用场景

OceanBase的产品定位是一款分布式关系数据库,经过多年蚂蚁金服内部业务的打磨,目前已经支持蚂蚁金服100%核心交易系统,稳定支撑阿里、蚂蚁内部上百个关键业务以及浙商银行、南京银行等多个外部客户。OceanBase产品适用于金融、证券等涉及交易、支付和账务等对高可用、强一致要求特别高,同时对性能、成本和扩展性有需求的金融属性场景,以及各种关系型结构化存储的OLTP应用。OceanBase天然的Share-Nothing分布式架构对于各种OLAP型应用也有很好的支持,例如OceanBase适用于以下典型场景:

  • 金融级数据可靠性需求

    金融环境下通常对数据可靠性有更高的要求,OceanBase每一次事务提交,对应日志总是会在多个数据中心实时同步,并持久化。即使是数据中心级别的灾难发生,总是可以在其他的数据中心恢复每一笔已经完成的交易,实现了真正金融级别的可靠性要求。

  • 让数据库适应飞速增长的业务

    业务的飞速成长,通常会给数据库带来成倍压力。OceanBase作为一款真正意义的分布式关系型数据库,由一个个独立的通用计算机作为系统各个节点,数据根据容量大小、可用性自动分布在各个节点,当数据量不断增长时,OceanBase可以自动扩展节点的数量,满足业务需求。

  • 连续不间断的服务

    企业连续不间断的服务,通常意味着给客户最流畅的产品体验。分布式的OceanBase集群,如果某个节点出现异常时,可以自动剔除此服务节点,该节点对应的数据有多个其他副本,对应的数据服务也由其他节点提供。甚至当某个数据中心出现异常,OceanBase可以在短时间内将服务节点切换到其他数据中心,可以保证业务持续可用。

在这里插入图片描述

在这里插入图片描述

7、未来展望

​ 今年,OceanBase再次亮出底牌,面向国产数据库领域取得了“破冰”成果。据了解,此次发布的OceanBase4.0,采用业内首个单机分布式一体化架构,并且集中了分布式架构和集中式架构二者的优势。

​ 在单机模式下,OceanBase 4.0和MySQ相比,硬件性能水准实现了超越。另外,OceanBase 4.0也做到了在单机模式下,性能比集中式数据库更为出色,这是业内首次实现的突破。

OceanBase 4.0,是否将成为成单机与分布式的新拐点?

​ 我们都知道,原生分布式数据库虽然有着各种先天的优势,但其落地过程中也面临着两个方面的挑战:一方面,在大家的印象中,原生分布式数据库主要适用于大型企业或规模化应用场景,而小型企业则使用单机更为划算。但一旦部署单机,后续业务量庞大时再进行架构调整,又会进一步增加部署的难度。

另一方面,为了保证绝对高可用性,原生布式数据库往往以“三副本”形式部署,这意味着企业如果想要部署分布式数据库,就要同时进行多个服务器部署,门槛比单机高,且“分布”或“单体”的选择通常不可逆,选择了单机就意味着很难再去部署“分布式”。

而OceanBase 4.0的一体化架构则能够很好地解决这些矛盾。第一,支持单机部署和小规格部署。这个设计方案的好处就在于单节点部署只有一个进程,既实现了单节点最低配置,又实现了单机和分布式架构的统一,OceanBase 4.0将部署规格降低到4C8G,且未来还会进一步降低。

在这里插入图片描述

🎉文章到这里就结束了,感谢诸佬的阅读。🎉

💕欢迎诸佬对文章加以指正,也望诸佬不吝点赞、评论、收藏加关注呀😘

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/24657.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

读文章笔记-OSSFS-DD

读文章笔记-OSSFS-DD文章代码文章主要贡献内容公式(5)(6)的详细推倒对比其他7种算法算法思考文章 Online Scalable Streaming Feature Selection via Dynamic Decision 代码 https://github.com/doodzhou/OSFS 文章主要贡献 将特征分成选择,丢弃和延迟。提出基…

《第一行代码》核心知识点:Android的脸面之UI控件

《第一行代码》核心知识点:Android的脸面之UI控件前言三、Android的脸面之UI控件3.1 常用控件介绍3.1.1 TextView3.1.2 Button3.1.3 EditText3.1.4 ImageView3.1.5 ProgressBar3.1.6 AlertDialog3.1.7 ProgressDialog3.2 四种基本布局介绍3.2.1 线性布局3.2.2 相对布…

更强悍 更智能!飞凌嵌入式FET3588-C核心板震撼发布!

为提升AIoT领域终端设备的处理能力以及智能化程度,飞凌嵌入式与瑞芯微强强联手,正式推出FET3588-C核心板! 1、国芯之光 品质之选 FET3588-C核心板基于Rockchip新一代旗舰RK3588处理器开发设计,采用先进的8nm制程工艺, …

【软考软件评测师】第三十一章 操作系统综合知识

【软考软件评测师】第三十一章 操作系统综合知识 第三十一章 操作系统综合知识【软考软件评测师】第三十一章 操作系统综合知识第一部分 知识点集锦1.嵌入式操作系统1)可裁剪性2)实时性3)统一的接口4)弱交互性5)更好的…

EasyExcel使用详解与源码解读

EasyExcel使用详解1、EasyExcel简单介绍64M内存20秒读取75M(46W行25列)的Excel(3.0.2版本)2、EasyExcel和POI数据处理能力对比3、使用EasyExcel读写Excel、web上传/下载3.1、写EXCEL3.2、读EXCEL3.3、web上传、下载4、EasyExcel源码解读5、总结1、EasyEx…

AdsPower VS Dolphin,哪款指纹浏览器性价比更高?

现在指纹浏览器已经成为了跨境人必备的账号安全工具,市面上的指纹浏览器也非常多,但其实真正专业的寥寥无几。现在市场上比较出名的浏览器有AdsPower、Dolphin、multilogin。为了比较出AdsPower和Dolphin功能上的差异,龙哥特地去下载使用了这…

三、nginx设置浏览器缓存[expires]

一、浏览器缓存 解释:浏览器缓存极大缓解了带宽压力,提高了用户体验。 访问页面-查看是否有缓存,如果没有过期,直接击中缓存,不向服务器发送请求访问页面-查看是否有缓存,如果过期,向服务器发送…

如何给async await批量添加try…catch?

如何给async await批量添加try…catch?async和await是什么?如何给async await批量添加try…catchbabel插件的实现思路插件的基本格式示例寻找await节点向上查找 async 函数添加用户选项babel插件的安装使用其他参考资料async和await是什么? …

深紫色粉末BHQ-1 NHS,916753-61-2,NHS修饰是合成后与一个伯氨基的共轭

英文名称:BHQ-1 NHS CAS:916753-61-2 外观:深紫色粉末 分子式:C30H31N7O7 分子量:601.62 储存条件:-20C,避光避湿 结构式: 凯新生物产品简介: NHS修饰是合成后与一…

程序员必知必会网络传输之TCP/IP协议族,共864页的详解文档让你原地起飞!

我们现实网络无处不在,我们被庞大的虚拟网络包围,但我们却对它是怎样把我们的信息传递并实现通信的,我们并没有了解过,那么当我们在浏览器中出入一段地址,按下回车这背后都会发生什么? 比如说一般场景下&a…

ubuntu18.04安装QT5

ubuntu18.04安装QT5 1、说明 QT界面本不应该做为一个很高的知识点,问题是,越来越多的程序实验,需要界面支持,或用界面显得更加方便,因而专门启动该栏目专门介绍QT方法。因为体系比较庞大,因此,需…

在腾讯云 TKE 上部署 EMQX MQTT 服务器集群

云进入以「应用为中心」的云原生阶段,Operator 模式的出现,为 Kubernetes 中的自动化任务创建配置与管理提供了一套行之有效的标准规范。针对大规模分布式物联网 MQTT 消息服务器 EMQX 全生命期管理的自动化管理工具 EMQX Kubernetes Operator&#xff0…

11.数组的分类和定义

1.数组的概念 数组是若干个相同类型 的变量在内存中有序存储的集合。 int a[10];//定义了一个整型的数组a,a是数组的名字,数组中有10个元素,每个元素的类型都是int类型,而且在内存中连续存储。 这十个元素分别是a[0] , a[1] , … …

[附源码]java毕业设计鲜花销售管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

同花顺_代码解析_技术指标_Z_2

本文通过对同花顺中现成代码进行解析,用以了解同花顺相关策略设计的思想 目录 ZNZ_CYC ZNZ_CYD ZNZ_CYDD ZNZ_CYDK ZNZ_CYE1 ZNZ_CYF1 ZNZ_CYMR ZNZ_CYOBV ZNZ_CYQKL ZNZ_CYQKR ZNZ_CYR ZNZ_CYS ZNZ_DKBL ZNZ_CYC 指南针成本均线 技术分析非常重视成…

【PinkCAx】可视化工具开发记录与总结

-----------PinkCAx----------- 仅以此篇,记录我的一次可视化软件开发尝试点滴。 简介 PinkCAx是一款采用Python语言编写的,基于QT5VTK架构的三维可视化工具。 该工具目前的功能如下: 基本操作 网格文件的打开与保存(支持STL、P…

Packet Tracer - 确定 DR 和 BDR

地址分配表 设备 接口 IP 地址 子网掩码 RA G0/0 192.168.1.1 255.255.255.0 Lo0 192.168.31.11 255.255.255.255 RB G0/0 192.168.1.2 255.255.255.0 Lo0 192.168.31.22 255.255.255.255 RC G0/0 192.168.1.3 255.255.255.0 Lo0 192.168.31.33 255.25…

sqli-labs/Less-38

这一关有变成了get请求的题目了 我们先判断一下是否属于数字型注入 输入如下 id1 and 12 回显如下 属于字符型 然后判断一下是单引还是双引 输入1 报错了 从报错信息可知 这是一个单引号注入型 我们去佐证一下呗 输入1-- 回显如下 可以 确实是单引号注入型 然后我选择使用…

SeriLog日志框架的应用

C#中当前流行的日志框架有NLog、Log4Net、及SeriLog,在这里我们简单介绍SeriLog日志框架的应用 1、日志基础 (1)、日志等级 (2)、日志接收器 序号 接收器 说明 1 Console 输出到控制台 2 Debug 输出到VS的Debug窗口 3…

TCP沾包问题

TCP流式协议:所谓流式协议,即协议的内容是像流水一样的字节流,内容与内容之间没有明确的分界标志,需要我们人为地去给这些协议划分边界。 我们说 TCP 是流式协议究竟意味着什么? - 云社区 - 腾讯云 (tencent.com) 网…