DTCC 回顾:技术破局,分布式数据库创赢未来

简介: 2020 年 12 月 21 日第十一届中国数据库技术大会(DTCC 2020)于北京召开,蚂蚁集团 OceanBase 资深总监、北京奥星贝斯科技研发中心总经理杨传辉,带来了《OceanBase 原生分布式数据库》的主题分享,以下为演讲实录:

技术破局:分布式数据库创赢未来

2010年,立项伊始,OceanBase 就坚信分布式数据库代表未来,作为原生分布式数据库的实践者、信仰者,历经十年的艰难探索,已成长为全球原生分布式数据库的技术引领者。

今天的数据库形态仍以集中数据库为主,随着数据量不断增大,AI、IOT、5G 技术快速革新发展,这个比例一定会倒置,集中数据库为辅,分布式数据库成为主流。

听起来似乎匪夷所思,但蚂蚁集团的实战案例告诉我们,这并非天方夜谭。

2014年,蚂蚁集团支付宝核心数据库接入 OceanBase 时,实现了 RPO 等于 0,引入这项技术初期,所有 DBA 和业务方并不理解,都认为我们做的数据库没有需求,没有 RPO 等于 0 的需求。因为以前所有的数据库都做不到 RPO 等于 0。但是,等 OceanBase 真正实现了 RPO 等于 0,并且在双十一核心场景得到验证的时候,获得了集团上下的高度认可,OceanBase 技术也很快塑造了阿里、蚂蚁以及整个数据库行业的一项新标准。

相信 OceanBase 其他的分布式技术创新,也会同 RPO 等于 0 的创新一样,只要在行业标杆客户中得到应用,便会快速推进到行业,进而普及到整个业界。寻其本质,是因为分布式技术作为云时代的技术,指引未来,可以享受到高可用、可扩展、低成本、高性能等技术红利,能够无缝兼容传统的数据库。从 0 到 1 很难,但只要突破某个临界点,从 1 到 N、 10 到 N 其实比想象的快很多,这是从历史中得出的经验。

独辟蹊径:100%自主研发之路

与国内其他分布式数据库不同,OceanBase 一直坚持做 100% 自主研发原生分布式数据库。选择自主研发,并非我们预见到今天的国产化需求,而是相信只有 100% 自主研发,才能解决原生分布式企业级数据库的根本需求。

做数据库有两条道路,一是基于开源数据库做二次开发,初始成本较低,可以快速做出可用的数据库,但这样的数据库不通用,仅在某些场景可用,且把复杂性留给业务。

二是做真正的原生分布式数据库,道路漫漫且艰难,OceanBase 走了10年,才取得今日的小成绩。基于自研,另一裨益,就是锻炼了研发团队,OceanBase 平均研龄超过6.5岁,可以快速满足用户需求,深层次问题解决能力在业界领先。

2010年开始,OceanBase 在阿里、蚂蚁场景落地;2010-2014年期间,在阿里电商平台上线了几百个业务;2014-2017年,在蚂蚁集团全面上线交易和账务系统,成为蚂蚁集团最核心的数据库。

阿里集团是全国乃至全球数据业务场景最丰富、订单量最大的一个场景,这个场景异常难得,催生了诸多数据库项目的创新。而阿里和蚂蚁选择 OceanBase,也恰恰因为 OceanBase 通过创新分布式技术解决了 RPO 的问题,真正做到RPO 等于 0 ,这个特性对金融行业和数据库行业有着里程碑式的意义。

2017年,OceanBase 走出阿里,服务外部客户。2019年,OceanBase 在 TPC-C 性能测试以 6088 万 tpmC 的成绩登顶榜首,在九年多一直被国外数据库产品占据的榜单上留下了中国数据库的印记。在 2020 年,OceanBase 又以 7.07 亿 tpmC 的成绩再次超越自我登顶榜首。2020 年 6 月份,蚂蚁集团正式宣布 OceanBase 进行独立公司化运作,开始在商业化道路上加速奔跑。

回溯过往十年多时间的发展,OceanBase 团队成员遵循初心,始终坚持以业务为驱动、以技术创新为宗旨的完全自研之路。

以简驭繁:分布式理念制胜之道

现在市场上有很多分库分表的数据库也被称为分布式数据库,那么,原生分布式数据库和分库分表数据库到底有何不同?

OceanBase 最大的不同是诠释了原生分布式的理念——把复杂留给自己,把简单留给业务、开发者和运维人员。

集中数据库的确好用,但有两大问题,一是成本比较高,依赖高可靠硬件,无法按需扩展容量。互联网简单常规的做法,是基于开源数据库做分库分表,虽部分解决了扩展问题,但却带来一致性问题,一致性导致运维复杂性,把运维的复杂性带给开发人员。在传统行业中,IT 能力并非核心竞争力,这些行业希望能用更简单的技术,把复杂留给基础设施。

蚂蚁集团有上万台服务器,如果不用原生分布式数据库 OceanBase,而是使用分库分表方案,只要其中一台机器出现故障,就无法保证一致性,需要通过各种运维平台、运维工具或者是让 DBA 直接处理,这是一个不可持续的方式。

OceanBase 的理念是原生分布式数据库,底层通过分布式技术实现 RPO 等于0,上层以 SQL 的方式提供给客户,保证完整的 ACID。

OceanBase 两度参加 TPC-C 测试,都取得不俗的成绩,跑 TPC-C 测试最大的意义不是跑出多高的性能,而是证明了一点——基于分布式架构的技术能够实现跟集中式数据库完全对标的ACID 能力,能够做到和集中式数据库一样的功能。这其实证明的是一个不可逆的大趋势,那就是未来分布式数据库必然会超越代集中式数据库。

从内部打磨到外部使用

做数据库有一个难点,即数据库稳定性问题。数据库是系统工程,意味着代码量特别大,会存在很多 BUG。数据库可以通过测试来解决数据库 BUG,但是这样远远不够,还需要核心应用场景的检验。

OceanBase 背靠蚂蚁集团,立足于双十一大促场景,能够享受到蚂蚁集团技术发展的红利,经过数年的打磨已经应用在蚂蚁集团会员、交易、账户、网商银行等核心业务中100%的流量。蚂蚁集团往往会出于支持 OceanBase 甘愿当小白鼠,在集团内部尽早使用,将所有的坑踩一遍,团队快速版本迭代,打磨核心功能,保证稳定性。

经过2年多时间的孕育,目前OceanBase 收获了诸多关键客户。在今年9月,OceanBase 在工商银行对公理财业务系统上线,挑战巨大,使用到了 OceanBase 两地三中心的高可用容灾能力。此外,OceanBase 已经在建设银行、南京银行、人保健康险、西安银行、天津银行、苏州银行、东莞银行、常熟农商行、广东农信、中国人保、招商证券、中石化、深圳公积金、山东移动、浙江移动等众多行业机构上线。

三维一体:企业级架构设计

OceanBase 的定位是做一款通用的企业级分布式数据库。分布式数据库是透明可扩展的,服务的场景多种多样,包括传统企业,如金融、政府、运营商、公共事业、电力、能源等关系到国计民生的行业。这样的行业对数据库的要求,首先是稳定可靠;其次才是高性能、高可控、自主创新等。

OceanBase 和技术关键点主要有3个:一是原生分布式技术,通过高可用、透明、先进性等,让更多企业能够享受到分布式的技术红利。二是企业级数据库,作为服务企业场景的数据库,OceanBase 的底层引擎能够同时支持简单查询和复杂查询混合的引擎。三是面向云时代创新,OceanBase 做企业级云原生数据库,支持更多混合负载的场景,提供更好的扩展性。

OceanBase 的产品理念是一体化的设计,提供 Oracle 和 MySQL 两种兼容模式。同时,一套 HTAP 引擎同时支持 TP 和 AP 业务。采用的是透明可扩展的分布式架构,原生支持分布式事务,全局强一致,让用户使用简单。基于Paxos + 数据同步的灵活的容灾架构,支持最高级别容灾模式。同时具备灵活的部署模式,无缝适配云化架构和经典架构。

2020年9月云栖大会上,OceanBase 2.2版本正式发布。2.2版本的重要革新在于其兼容能力:提升语法和行为兼容及数据安全功能,并优化混合负载引擎,并进一步提升灵活性,能够支持多种容灾模式。同时,OceanBase 积极拥抱产业生态,目前已经与更多主流芯片/操作系统完成适配。

相关文章
|
10天前
|
数据库 索引
深入探索数据库索引技术:回表与索引下推解析
【10月更文挑战第15天】在数据库查询优化的领域中,回表和索引下推是两个核心概念,它们对于提高查询性能至关重要。本文将详细解释这两个术语,并探讨它们在数据库操作中的作用和影响。
34 3
|
10天前
|
数据库 索引
深入理解数据库索引技术:回表与索引下推详解
【10月更文挑战第23天】 在数据库查询性能优化中,索引的使用是提升查询效率的关键。然而,并非所有的索引都能直接加速查询。本文将深入探讨两个重要的数据库索引技术:回表和索引下推,解释它们的概念、工作原理以及对性能的影响。
27 3
|
16天前
|
存储 NoSQL 关系型数据库
数据库技术深度解析:从基础到进阶
【10月更文挑战第17天】数据库技术深度解析:从基础到进阶
39 0
|
9天前
|
负载均衡 网络协议 数据库
选择适合自己的数据库多实例负载均衡技术
【10月更文挑战第23天】选择适合自己的数据库多实例负载均衡技术需要全面考虑多种因素。通过深入的分析和评估,结合自身的实际情况,能够做出明智的决策,为数据库系统的高效运行提供有力保障。
|
7天前
|
SQL Java 数据库连接
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率。本文介绍了连接池的工作原理、优势及实现方法,并提供了HikariCP的示例代码。
20 3
|
9天前
|
监控 算法 网络协议
|
9天前
|
缓存 负载均衡 监控
数据库多实例的负载均衡技术深入
【10月更文挑战第23天】数据库多实例负载均衡技术是确保数据库系统高效运行的重要手段。通过合理选择负载均衡策略、实时监控实例状态、不断优化调整,能够实现资源的最优分配和系统性能的提升。在实际应用中,需要根据具体情况灵活运用各种负载均衡技术,并结合其他相关技术,以满足不断变化的业务需求。
|
9天前
|
Java 数据库连接 数据库
优化之路:Java连接池技术助力数据库性能飞跃
在Java应用开发中,数据库操作常成为性能瓶颈。频繁的数据库连接建立和断开增加了系统开销,导致性能下降。本文通过问题解答形式,深入探讨Java连接池技术如何通过复用数据库连接,显著减少连接开销,提升系统性能。文章详细介绍了连接池的优势、选择标准、使用方法及优化策略,帮助开发者实现数据库性能的飞跃。
18 4
|
7天前
|
Java 数据库连接 数据库
深入探讨Java连接池技术如何通过复用数据库连接、减少连接建立和断开的开销,从而显著提升系统性能
在Java应用开发中,数据库操作常成为性能瓶颈。本文通过问题解答形式,深入探讨Java连接池技术如何通过复用数据库连接、减少连接建立和断开的开销,从而显著提升系统性能。文章介绍了连接池的优势、选择和使用方法,以及优化配置的技巧。
11 1
|
9天前
|
SQL Java 数据库连接
打破瓶颈:利用Java连接池技术提升数据库访问效率
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,避免了频繁的连接建立和断开,显著提升了数据库访问效率。常见的连接池库包括HikariCP、C3P0和DBCP,它们提供了丰富的配置选项和强大的功能,帮助优化应用性能。
27 2

热门文章

最新文章