新科技讯 2019年11月19日,蚂蚁金服正式发布全新的OceanBase2.2版。据悉,OceanBase是蚂蚁金服自研的应用于金融核心业务的分布式关系数据库,在今年最新发布的 TPC-C 测试排行榜中登顶。
此次发布的OceanBase 2.2版是一个同时兼容MySQL以及Oracle两种模式的里程碑版本,并在Oracle模式中引入了许多功能,性能和稳定性上也相对2.0版本有大幅提升。
OceanBase 2.2版本新特性
1)新增功能
a) 存储过程/客户端协议
兼容Oracle的PL/SQL第一版正式推出,提供基本的PL/SQL使用能力。后续版本继续不断增强对PL/SQL的支持
部分Oracle兼容的PL/SQL系统包,方便Oracle用户使用习惯
支持二进制prepare statement协议,提升应用调用数据库执行性能
b) SQL功能增强
支持除binary float/double外的全部Oracle基础数据类型,以及BLOB/CLOB(最大长度受限)
支持MINUS,ROLLUP, GROU;PING等SQL语法以及大量窗口函数支持,更好的支持用户复杂分析查询的需要
支持Oracle兼容的NLS系列长度和时间日期类型设置,提供丰富的时间日期格式和转换支持
c) SQL执行计划管理
兼容Oracle管理接口的SQL Plan Management功能,支持执行计划的固化管理和自动演进,确保系统运行和升级后的稳定性,降低运维复杂度
d) 事务能力增强
闪回查询增强(Flashback Query),提供历史数据查询功能
支持串行化隔离级别(关系数据库的最强事务隔离级别),对有强事务隔离性需求的应用场景提供原生支持
2)稳定性提升
集群稳定性大幅提升,分布式事务运行稳定,最大单表行数达万亿级,单集群最大数据量超过3 PB。
3)扩展性提升
Oracle模式单表支持最大65536分区。
4)兼容性增强
兼容MySQL 5.6、Oracle 11.2(持续开发支持中)。
5)性能增强
OLTP性能相比2.0版本提升50% 以上,部分复杂场景提升100%;OLAP场景查询优化和执行能力显著提升,TPC-H全部22个查询,SF=1000(1TB)的数据量下,6台ECS(56超线程) Server总执行时间为730s。
此外,本次升级还支持150+Oracle兼容函数和表达式,30张字典视图和30张性能视图等等。新增支持串行化隔离级别,对于有更高事务隔离性需求的场景提供更好的支持。
OceanBase的发展历程是伴随着阿里双十一的发展,尤其2014年OceanBase0.5版本发布,引入Paxos协议保证主库故障不丢数据,成功替代Oracle在支付宝交易系统上线,支撑了双十一10%的流量。2017年,支付宝首次把包括账务库在内的所有核心数据链路搬到OceanBase上,创造了4200万次/秒数据库处理峰值的全新纪录,双十一也成为其练兵场,就在刚刚过去的2019年天猫双11中,OceanBase再次打破世界纪录,创造了6100万笔/秒请求数处理峰值的全新纪录。
目前除了支持蚂蚁金服自有业务、阿里巴巴集团双十一的流量考验以外,还支持着数十家商业银行、金融机构的业务。
兼容Oracle 的工作是 OceanBase 团队此前的重心。OceanBase 团队的目标是,用两年时间做到 Oracle 业务的平滑迁移,不需要修改一行代码、不需要业务做任何调整就能够将数据库迁移过来。