近几年,OceanBase越来越受到行业的青睐。在OceanBase的赋能下,不少行业企业都相继得到了全面的提升。纵使如此,对于一些人来说,提及OceanBase的优势,还是有一种云里雾里的感觉。鉴于此,我们以支付宝的成长之路这一实际案例入手,全面窥探OceanBase的核心技术。

打开网易新闻 查看精彩图片

两个阶段保驾护航,加速在线库架构演进

随着支付宝的用户规模不断增长,以及历年“双 11”都需要应对的超高并发,传统架构性能瓶颈凸显,数据存储成本攀升,支付宝将目光盯在了成本更低、性能更高、可拓展性更强、高可用性更大的OceanBase身上,并且展开了持续的合作。

在升级之路上,OceanBase 1.0的多租户特点在中小数据库整合场景中很好地提升资源利用率为支付宝进行进行动态扩容;同时,OceanBase 1.0基于Paxos协议的分布式数据库的高可用客店,还满足了支付宝机房级容灾、城市级容灾的需求;再者,OceanBase 1.0的弹性伸缩特点,也为支付宝加减副本、平滑切主特性,在用户不感知的情况下完成弹出的使用体验。

随后,OceanBase 2.0继续为支付宝保驾护航,以异于传统的分库分表的分区方案思路,在用户无感知的前提下把数据拆分到更多的机器上,突破单机性能瓶颈,自动负载均衡,实现稳定支撑每秒百万笔支付请求的能力,突破单机容量上限。OceanBase 2.0引入Partition Group,将业务使用了一组逻辑表的相同分区,使分布式事务退化为单机事务做到极致性能,从而彰显其高兼容、性能提升,成本下降、更低的运维成本,更好的弹性能力的核心特点。

在迁移之路上,OceanBase数据迁移工具OMS提供一站式的异构数据库,一方面应对兼容性问题,平台提供静态代码评估,动态流量回放评估,另一方面数据质量通过全量校验,增量校验,离线校验等多重手段实时保证数据一致性,从而为支付宝解决了以往采用体量大、扩展和容灾能力差的Oracle/MySQL数据库短板。

另外,OceanBase的DBA能够完全自动化地一键完成计划内的大促弹性和容灾演练,应对日常的容量容灾问题,并且利用其多租户整合Oracle/MySQL长尾业务、优化碎片资源和超高数据压缩比,将原本需要上百台机器才能解决问题的情况降低到10台左右机器足够的现实中。

打开网易新闻 查看精彩图片

双重核心精益求精,助力PB级数据归档

在支付宝业务持续暴涨的过程中,又面临着生产库磁盘不足、IOPS性能下降,以及备份时间变长等问题,对数据归档的需求也相应增加。OceanBase同样凭借其核心的技术优势,为支付宝扫清了前进道路上的诸多障碍。

OceanBase基于分区级别进行动态的负载均衡,能最大限度利用每台机器的磁盘空间,解决了少部分机器影响整个集群磁盘使用率,浪费存储的问题,将存储利用率最大化;同时还把不同表相同月份的分区打散到不同机器,所有Parition的leader也均衡打散到所有机器,分散写入,防止写入热点,将计算资源利用率最大化,实现负载均衡的目的。

此外,OceanBase的原生分布式能力还为支付宝解决了故障机器的后顾之忧,利用其总控服务RootService检测副本缺失,直接走补副本模式,补副本是多机到多机拷贝,生产可达30-50GB/s,100TB数据迁移只需两三个小时就可以完成,从而快速恢复故障。

打开网易新闻 查看精彩图片

未来,随着支付宝与OceanBase持续的合作,在HTAP和多模等方面的深入探索,还将为市场呈现出OceanBase的更多核心优势,让OceanBase在实际应用的成果得到进一步的验证。