时隔16年Jeff Barr重返10.23-25 QCon上海站,带你看透AI如何重塑软件开发! 了解详情
写点什么

分布式数据库是金融机构数字化转型的最佳路径

  • 2020-09-17
  • 本文字数:3931 字

    阅读完需:约 13 分钟

分布式数据库是金融机构数字化转型的最佳路径

支付宝在全球有十几亿用户,他们可以同时进行可靠、稳定、高效的支付交易,这背后离不开一个重要的秘密武器——OceanBase。今天我很荣幸向大家介绍 OceanBase 的发展过程、产品特点,以及在保险行业的最佳实践。

分布式数据库 OceanBase 的迭代

OceanBase 数据库立项于 2010 年,第一个客户是淘宝收藏夹。2013 年,OceanBase 开始了对 SQL 的支持。2014 年,OceanBase 开始支持网商银行的所有业务,成为了全球首个应用在金融核心业务系统的分布式关系数据库。从 2014 年到 2016 年,支付宝全部的交易系统和核心账务系统都跑在 OceanBase 之上。 多年来全世界十几亿用户在支付宝上发生的所有交易都是由 OceanBase 来承载,始终稳若磐石。


2017 年,我们开始向更多的外部客户输出我们的技术,我们帮助南京银行打造了“鑫云+”互联网金融业务核心。OceanBase 服务过的这些场景里既包括新兴的互联网金融核心业务、传统的金融核心业务,也包括对传统数据库的替换、对 MySQL 的替换,都非常成功。


2019 年, OceanBase 参加了世界数据库范围内最权威的 TPC-C 认证测试,我们取得了 6088 万 tpmC 的成绩,是第二名传统数据库公司甲骨文的两倍。TPC-C 绝对不是一个简单的跑分测试,实际上,它是要求被测试的对象必须满足数据库的 ACID 四个事务特征才能够进行的测试。


2020 年,我们又一次参加了 TPC-C 测试, 达到了 7.07 亿 tpmC,跑出了接近去年 12 倍的成绩,再次问鼎 TPC-C 榜首。今年 6 月份 OceanBase 正式独立成公司,我们立志于成为世界领先的企业级数据技术解决方案提供商。

数据库形态演进

金融业的核心业务系统,包括保险行业的核心业务系统仍旧大规模使用传统集中式数据库。这种方案带来了两个问题,一是 集中式数据库造价非常高 ,来自于两方面,一方面是软件 License 很贵;另一方面是硬件很贵,因为它必须使用高端硬件,比如 IBM 的大机、EMC 的高端存储,这些都是非常昂贵的,时间长了再大的企业也很难承受;二是 扩展性非常不好 ,传统集中式数据库都是基于共享存储(shared-storage)的方式做横向扩展,当面临关键业务系统发展需要不断扩容的时候,这种方案有心无力,难以做有效的支撑。


对于上面这种方案业界提了一种补丁方案,十几年前曾有人提出既然传统集中式数据库很贵,那么在单机开源的基础上加一个语法兼容,这样就解决了它昂贵的问题。但是发展到今天,我们在金融领域的核心系统还没有看到广泛使用这种方案。原因很简单,金融业核心系统使用传统集中式数据库主要不是因为它们在语法上的完善和优秀,根本原因在于它们的稳定可靠,而这个补丁方案做不到这些,同时这个方案也没有解决扩展性的问题。


说到扩展性同样是在十几年以前,最早在互联网企业中提出了这么一种方案,叫做 分库分表 ,一个典型的例子就是在多台单机的 MySQL 上,用 Proxy 把 MySQL 单机集成为 MySQL 集群,提供很好的算力。这种方案同样具有很大的问题,当计算发生在单个 MySQL 机器内部的时候一切很好,但是一旦用户的负载跨越 MySQL 单机边界的时候,你可能会发现分库分表系统的表现并不尽如人意。具体来说,在全局事务、数据强一致性、负载均衡以及复杂 SQL 方面都不能很好的支持,所以这种方案的使用场景非常受限。截止到今天,在银行、保险、券商行业的核心业务系统中依然没有广泛使用过这种方案。


那么到底是否存在这样一种数据库系统,它既可以提供传统集中式数据库的高可靠性,又成本可控,同时扩展性良好?在这个基础之上还能够满足事务的 ACID、具备强一致性、复杂 SQL 的处理能力? 答案是有,而且可以更好,那就是 OceanBase。

OceanBase 的三大独特价值

首先,OceanBase 是一款完全自主研发的分布式关系数据库, 代码是百分之百自研的,包括 SQL 引擎、存储引擎都是我们的工程师自己一行一行代码写出来的。这一点很重要,它意味着当你的数据库出现问题的时候,我们的工程师不需要求助开源社区,我们自己就可以兜底,这对于要求稳定,要求可靠,要求有可预期性的金融领域的核心业务系统是一个刚需,这一点 OceanBase 可以充分提供。


第二, OceanBase 是全世界唯一一款经过长时间复杂金融场景验证的原生分布式数据库。 数据库其实是一个非常复杂的系统,它的复杂度甚至不亚于操作系统,对它的各种复杂应用场景的测试不是一个简单的测试程序可以穷尽的。目前,可能唯一有效的方法就是在实践中找到足够复杂、足够多的场景对数据库进行反复的使用,使用到最后没有问题为止大家才会信任它。我们非常高兴的告诉大家,OceanBase 做到了。


第三,OceanBase 数据库是全世界范围内唯一一款基于普通的 X86 云服务器,在 TPC-C 领域获得第一名的原生分布式数据库。 登顶 TPC-C 榜单意味着 OceanBase 不但可以提供世界级的性能,而且可以提供单机数据库一样的完整体验,这一点意味着用户可以像使用单机数据库一样使用 OceanBase。

OceanBase 核心特性

在 OceanBase 数据库中,我们通过“五高一多”的特点定义了分布式数据库的领先标准。


高可用


我们通过 Paxos 协议和多副本技术,可以提供很好的高可用性,当出现灾难的时候我们可以做到 RPO=0,RTO<30 秒,这完全可以满足企业的容灾需求。同时由于我们使用的是 Paxos 协议, Paxos 协议是支持日志空洞的,这就带来一个好处,当在网络出现波动的时候,我们可以给到更好的性能保证。


OceanBase 的高可用性,是完全在通用 X86 服务器和普通硬件上提供出来的,没有使用任何高端硬件,所以我们的成本会更低一些。


高扩展


在实际生产系统中单个 OceanBase 集群内的服务器可以达到 100 台以上。而且 OceanBase 具有很好的线性扩展比。高扩展性还体现在扩容时的自动负载均衡,这意味着当 DBA 需要扩容的时候,所做的只是增加一台机器到集群里,接下来,我们的 OceanBase 管理系统会自动的根据系统的负载情况,把数据迁移到新加的机器上。整个扩容缩容过程中,业务没有感知。


高性能


我们采用了很多先进的技术来提高数据库的性能。比如 LSM Tree、无锁结构、消除磁盘的随机写等等,这些技术帮助我们充分使用硬件的能力,再辅以高扩展性,我们就可以提供一个世界级性能的 OceanBase 集群。


在实际的生产系统里,我们可以在峰值的时候提供 6100 万次每秒,单表最大容量可以到 3200 亿行。和高性能伴随的是低成本,因为我们采用了 LSM Tree 结构,所以当数据落盘的时候是更有组织的,可以做到 1:3 的压缩比。


高透明


我们实现了不少关键技术,比如全局一致性快照、全局索引、自动事务两阶段提交。使用 OceanBase 数据库,应用就像使用一台单机数据库一样,不需要做针对分布式数据库的特别感知和修改。


高兼容


我们在一套 OceanBase 集群上同时为您提供两套生态,一套是 Oracle 生态,一套是 MySQL 生态,有效地降低业务迁移改造的成本。同时我们和国内主流的操作系统、芯片也都做了互认的支持,可以有效满足技术供应链安全的需求。


多租户


多租户就是在一个 OceanBase 集群上,可以建立很多个租户,每个租户对应一个 Oracle 实例或者是 MySQL 实例。可以用这个特性实现业务大集中,把以前全国一省一套的传统集中式数据库都集中在一个 OceanBase 数据库集群那里。也可以做不同种类的小业务的集中,之前几十个小的业务现在都集中在一个 OceanBase 集群里统一管理,这个特性不但可以有效利用集群资源,更可以有效降低 DBA 的运维成本。

OceanBase 产品定位与形态

OceanBase 可以提供拥有世界级性能的 OLTP 引擎,同时也提供一个非常优秀的 OLAP 引擎,这意味着辅以刚才提到的多租户功能,您可以在一个 OceanBase 的集群里创建不同的实例,有的专门用于交易,有的专门用于分析,当然也可以创建一个大的实例,既做交易又做分析。OceanBase 目前真正做到了一套 HTAP 引擎,它能够同时支持交易和分析型业务。


OceanBase 的容灾架构,既支持经典的主备容灾方式,同时也支持基于 Paxos 协议的容灾方式,我们支持同机房三副本,也支持同城三机房,甚至是两地三中心,三地五中心,这些不同的容灾级别可以完全满足您的容灾诉求。


关于部署模式,如果您希望和阿里云其他的优秀产品,比如和金融级分布式中间件 SOFA 或者对象云存储 OSS 一起使用,那么 OceanBase 可以在阿里云的专有云上为您输出。如果您只想使用 OceanBase,我们也可以以一个纯 License 的方式提供给您,就在您的服务器上安装我们的软件,一样可以获得一个高可用、高扩展、高性能的集群。如果您希望只是购买一个公有云的服务,您可以在阿里云的公有云上购买一个 OceanBase 的 RDS。这些不同选项可以无缝适配您各种不同的需求。

OceanBase 在保险业的实践

OceanBase 在保险业的最佳实践,一个很好的案例就是人保健康险。 如果不熟悉的朋友可以打开您的手机支付宝,在上面搜“好医保”就可以看到人保健康险的产品。人保健康利用了金融级分布式数据库 OceanBase 和金融级分布式中间件 SOFAStack 解决了高并发保单处理能力速度慢的问题,目前每日平均出单量在 15 万左右。


自 2018 年 4 月 11 日人保健康险好医保产品成功上线后,截止到目前,好医保已成为支付宝网红保险产品。OceanBase 上线中国人保健康以后,取得了显著的收益:


  • 处理能力提升了上千倍,并可根据业务情况动态扩容

  • 2018 款好医保住院医疗保险,每天 1 万单的日结文件,处理速度从以前的 4 小时缩短至 6 分钟

  • 新产品上线时间缩短 80%以上,从原来的数周缩短至数天

  • 采用多种协议转换和标准化对接流程,使外部渠道接入效率提升 6 倍,支持第三方业务快速拓展


谢谢大家听完我的汇报,期待着未来我们可以用 OceanBase 数据库更好地服务于保险行业,和各位好朋友一起打造面向未来的保险业的核心业务系统。


作者介绍


郭援非,蚂蚁集团高级解决方案架构师


本文转载自公众号支付宝技术(ID:Ant-Techfin)。


原文链接


分布式数据库是金融机构数字化转型的最佳路径


2020-09-17 10:052024

评论

发布
暂无评论
发现更多内容

码中寻趣:低码专家与开发者的「神秘会议」 ——华为云Astro扫地僧出山

云计算 低代码 华为云 华为开发者大会2023 Astro

实例分享| anyRTC 部署安徽某市应急实战指挥平台

anyRTC开发者

音视频 快对讲 融合会议 视频监控 综合调度

MatrixOne悲观事务实现

MatrixOrigin

数据库 分布式 云原生 矩阵起源

技术领先、“忠”于业务,用友助力企业实现价值化国产替代

用友BIP

7.12下午两点开启直播!《数智企业@中国》走进泰开集团

用友BIP

数智企业

华为云张鹏:华为云盘古大模型及MetaStudio亮相新媒体大会,使能融媒创新

新消费日报

沉潜蓄势,厚积薄发:StoneDB-5.7-V1.0.4版本正式发布!特性增强,稳定性大幅提升

StoneDB

数据库 版本发布 StoneDB

火热的低代码和无代码赛道

互联网工科生

软件开发 低代码 无代码 应用开发

如何在 Ubuntu 22.04 下编译 StoneDB for MySQL 8.0 | StoneDB 使用教程 #1

StoneDB

数据库 StoneDB

软件定义汽车场景中的数据流处理

EMQ映云科技

车联网 mqtt 数据流

从零开始构建一个电影知识图谱,实现KBQA智能问答[上篇]:本体建模、RDF、D2RQ、SPARQL endpoint与两种交互方式详细教学

汀丶人工智能

人工智能 自然语言处理 nlp 知识图谱 本体建模

分布式系统常见问题

互联网工科生

分布式

用友BIP全球司库“五大管家”,助力大型企业一流司库建设

用友BIP

全球司库

春去夏来,火热发版:StoneDB-8.0-v1.0.1-beta 版本正式发布!

StoneDB

数据库 StoneDB

为什么选择美国虚拟主机是你的明智之选?

一只扑棱蛾子

美国虚拟主机

直播预告 | 博睿学院:海量数据实时可信认证

博睿数据

智能运维 博睿数据 数据要素 博睿学院

IoTDB Timecho 产品负责人赵馨逸《IoTDB 如何赋能工业物联网数据管理》

Apache IoTDB

IoTDB Apache IoTDB

2023年最具威胁的25种安全漏洞(CWE TOP 25)

华为云开发者联盟

安全 华为云 安全漏洞 华为云开发者联盟 企业号 7 月 PK 榜

方言语音识别数据驱动人工智能的多元文化发展

数据堂

方言语音

从零开始构建一个电影知识图谱,实现KBQA智能问答[下篇]:Apache jena SPARQL endpoint及推理、KBQA问答Demo超详细教学

汀丶人工智能

人工智能 自然语言处理 知识图谱 智能问答 KBQA

人工智能的底层逻辑

博文视点Broadview

三问三答:细数GaussDB迁移的核心技术

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 7 月 PK 榜

【HDC.Cloud 2023】华为云区块链分论坛内容值得再读!

华为云开发者联盟

区块链 后端 华为云 华为云开发者联盟 企业号 7 月 PK 榜

北京汽车牵手火山引擎数智平台,探寻车企数字化升级新通路

字节跳动数据平台

数字化 数字化升级 车企 企业号 7 月 PK 榜

超级应用App的概念及构建思路

Onegun

小程序 小程序容器 超级应用

Cloud Kernel SIG月度动态:ANCK 5.10-016将落地kABI机制,5.10-015版本规划发布

OpenAnolis小助手

操作系统 内核 anck 龙蜥sig 版本规划

软件测试/测试开发丨Selenium环境安装配置

测试人

Python 程序员 软件测试 selenium chromedriver

Apache IoTDB 及云上部署实践

Apache IoTDB

时序数据库 IoTDB Apache IoTDB

分布式数据库是金融机构数字化转型的最佳路径_数据库_郭援非_InfoQ精选文章