8 月 10 日,2022 OceanBase 年度发布会在京沪深三地同时召开,OceanBase 解决方案和产品部总经理师文汇分享了《OceanBase 4.0 产品核心能力解读》的主题演讲,为大家介绍了 OceanBase 整个产品在 4.0 上的建设历程。
大家好,今天很开心给大家分享 OceanBase 4.0 产品核心能力的解读。OceanBase 4.0 版本在我们的产品发展过程中是具有里程碑意义的产品,基于分布式一体化架构,OceanBase 的产品能力以及边界得到了极大提升。今天我分为两部分给大家分享一下 OceanBase 整个产品在 4.0 版本上的重大变化。
OceanBase 演进三部曲
我们简单回顾一下 OceanBase 产品发展的历史,以及数据库产业面临的关键挑战。
首先,过去几年随着互联网的发展,全球的数据以飞快的速度积累,预计到 2025 年全球数据能达到 175 ZB,这么大规模的数据增长,带来的存储成本和管理效率问题成为数据库面临的关键挑战。刚才就有嘉宾提到了“如何用更低的成本存储数据,如何高效地发挥数据的价值是非常大的挑战”。
其次,NoSQL 数据库经过十几年的发展, 在整个数据库市场有了一定的份额,但是从全球数据库市场的角度来看,80% 的企业仍然在使用关系型数据库存储和管理他们的业务数据。如何提升关系型数据库的能力,也是数据库产业面临的关键问题。
第三,中国有 30 万的 DBA,近 800 万的开发者,数据库作为服务各行各业的基础设施,在面临不同业务、不同场景的时候有非常高的复杂度,如何帮助 DBA 和开发者降低使用数据库的门槛也是非常大的问题。带着这三个问题,也就有了 OceanBase 产品发展的三个阶段。
第一阶段,OceanBase 通过分布式能力解决数据库的扩展性,实现了海量数据的存储管理;第二阶段,持续完善 OceanBase SQL 和 PLSQL 的能力,使得在海量数据上,可以更好地支撑数据库 SQL 等关键能力;第三阶段,注重建设 OceanBase 的产品和生态,让更多的 DBA 可以把 OceanBase 方便地使用起来。
如果数据库的内核是一辆车的发动机,那么数据库相关的产品就是构成这辆车的所有其他零件,我们希望能给 OceanBase 的使用者提供像汽车一样的简单易用的使用体验。OceanBase 4.0 在我看来在 3.0 的基础上,产品力层面又做了非常大的提升。
过去几年里,无论是 OceanBase 做商业拓展的时候,还是服务蚂蚁以及阿里巴巴集团所有业务的时候,OceanBase 产品力的首要服务目标都是帮助这些企业业务的核心系统运行得更好。但随着整个商业化的深入,OceanBase 作为数据库开始真正走向广大的通用型数据库市场,在这个阶段中,客户给我们提出了很多新的诉求,我们把这些诉求总结成了四大方面。
第一,核心系统的迁移能力。过去我们很多伙伴、客户用 OceanBase 的分布式能力,帮他们解决了核心业务系统的可扩展性以及海量数据的存储问题。但是也有很多客户的部署场景相对比较复杂,他们还有很多业务核心系统部署在只有 4C8G、8C16G 等小规格的虚拟机或者物理设备里,我们在 3.0 时代是很难服务好这些客户的。
在核心迁移过程中还遇到了分布式场景下的易用性问题。比如分布式 Online DDL、分区分裂合并、分布式场景下复杂 SQL 查询的问题,3.0 版本架构很难解决这些问题。
第二,基础设施的多样化。今天客户会使用到ARM处理器、鲲鹏、Intel、x86 AMD 等不同类型的服务器,另外客户还会用到有很多不同类型的云厂商。在这种情况下,客户都希望用统一的视图管理所有的数据库系统。
第三,全球化。最近很多中国客户在做出海的业务,比如近年来火爆的电商出海、游戏出海、物流出海等业务场景,但出海过程中面临两个非常大的问题,首先是地区安全监管问题,其次是全球化的基础设施的多样性带来了运维复杂的问题,客户希望我们在数据库领域帮他们更好地解决这些问题。
第四,开放化。从 2021 年开始,OceanBase 开始加大在开源领域和生态领域的建设,很多生态伙伴加入到 OceanBase 的生态建设里,整个过程中我们的伙伴提出了很多诉求,例如产品及产品核心能力能否更加开放?产品能否更多地适配到生态工具?开源版本如何才能真正用到业务的核心系统里?当然这些也是 OceanBase 4.0 一直想要努力达成的目标。
4.0 产品核心能力解读
今天发布的 OceanBase 4.0,其核心目标就是解决上面所说的这四个比较大的挑战。对于一家企业来说,业务通常分为核心业务、非核心业务以及一些创新型业务。
OceanBase 4.0 的核心目标是能够满足企业全生命周期的业务支撑。
首先,核心系统对稳定性、可靠性有非常严苛的要求。为此,我们在 3.0 的基础上把 RTO 的时间从 30 秒做到 8 秒,这是业界最早能把 RTO 时间做到 8 秒的数据库。当系统出现故障的时候,我们只需要 8 秒就可以切换到一个健康的节点上。
其次,对于非核心业务或者普通业务来说,大部分业务更关注的是性价比、易用性、以及多种规格多种部署方式的灵活性。OceanBase 4.0 版本做了非常大的升级。我们的数据库能跑在 4C8G 的树莓派上,也可以跑在 4C8G 的虚拟机里来支撑我们的线上业务。为了提升 OceanBase 的性价比,我们还做了非常多的性能优化,大家可以看一下数据,我们在业务写场景的性能提升了 80%,在读写混合场景的性能提升了 50%,更好地帮助非核心业务提升整体的性价比。
最后,对于创新类业务,我们希望能够帮助这些创新业务聚焦在业务逻辑的开放上,帮助他们把大部分的精力投入在产品力的创新上。所以在 OceanBase 4.0 上针对创新类业务开发了很多新特性。创新类业务通常会有两个特点,一是它非常灵活,二是它通常会对容量的弹性能力有非常强的诉求。一个业务活动或一个营销活动的业务流量有 50 倍甚至 100 倍的提升。OceanBase 4.0 上做了自动分区分列的功能,客户可以不用关心下面存储的容量问题,结合 HTAP 以及超强的 SQL 分析能力,业务只需要关注业务逻辑的开发,更加灵活的使用数据库基础设施。
从业务部署模式来看,OceanBase 4.0 面向多种业务场景都有较大的能力提升。
面对多样化的基础设施,有一类客户选择部署在裸机上,这部分客户会对数据资产和数据安全性有非常高的诉求;还有一些客户部署在私有云和混合云里,对整个资源的利用率和统一的运维管理有非常高的诉求;除此之外,还有很多客户是部署在公有云上的,根据 Gartner 的统计,平均一家云上的企业大概会用到三四朵云,这部分客户对多云有非常高的诉求。
在 OceanBase 4.0 里面我们综合考虑了这三类不同客户的场景,整合了产品能力。
首先,对于私有云和私有部署的客户,我们提供了完整的一致性部署、运维、使用的视图,在 OceanBase 产品以及 OceanBase 数据库内部都支持了安全加密、TDE,保证数据资产的安全。我们在 OceanBase 4.0 上对多租户的能力及 DBPaaS 能力做了提升,帮助客户更好地进行资源整合。在 OceanBase 4.0 上,多租户有一个非常重大的 feature 发布,以前只支持 CPU 的隔离,接下来支持了 IOPS 的强隔离。
其次,对于公有云和多云上的客户,我们在 OceanBase 4.0 里坚定地支持了多云的策略,我们即将会发布在 AWS 上的 OceanBase 云服务,接下来也会发布腾讯云、华为云、Azure 等云厂商的支持。
OceanBase 面向全球化业务的支持能力
在全球化过程中,由于企业会遇到非常复杂的数据库和数据库基础设施的管理,我们在 OceanBase 4.0 里面对产品体系的国际化进行了全面升级,这个全面升级分两部分。
第一部分是整个产品能力的国际化升级。整个 OceanBase 的全系列产品包括OCP、ODC、OMS、OMA 所有的产品以及产品的相关文档进行了国际化,同时支持了多时区、多编码、多语言。为了更好地支持业务的国际化,OceanBase 也在和海外区域伙伴对 OceanBase 的整套产品进行安全合规认证,帮助客户更好地适应海外的监管需求。
第二部分是托管的云服务。目前我们在全球的 11 个 Region 提供了和中国大陆一样的云服务,且不同地区提供的云服务能力是等同的,接下来 OceanBase 会在全世界的 4 朵云上,13 个 Region 发布近 40 个可用区,帮助我们的海外用户更好地使用海外的云基础资源。
面向开发者和 DBA 能力提升
面向开发者以及运维生态,OceanBase 4.0 的核心目标是要让我们的伙伴更简单地使用数据库。
首先,用户和开发者关注的是 SQL 的兼容性和整个数据库的可调试性,在 SQL 兼容性方面,我们在 4.0 上发布了 35 个重大 feature:
- OceanBase 4.0 支持 GIS JSON 、支持超过 1TB LOB、且支持 DBlink 的写能力;
- 在 MySQL 模式下开始全面兼容 MySQL 8.0。业务在使用 MySQL 时遇到问题,可以很平滑地迁移到 OceanBase 4.0 上;
- 在 ODC 上提供了更好的面向开发者的 Debug 工具,用户可以对他的 SQL、PLSQL 在 ODC 上进行调试,我们支持 Intel 的芯片,也可以支持 ARM 的芯片。
其次,对于开发者以及开发者生态来说,会全面开放企业版MySQL的能力。我认为最关键的也是蚂蚁最关注的能力——就是 Encoding 的能力,帮助蚂蚁每年节省了近 10 亿的成本,还有在 AP 和向量化上的增强。OceanBase 4.0 会提供更多开放产品的支持,能够帮助客户或开源生态开箱即用——开箱即可以用到核心业务里,同时保证技术可靠。
第三,面向开放的生态,我们还在做更多事情。比如正在和整个开源生态、软件生态做了很多适配和对接;面向运维人员和运维生态,也在对接更多的开发语言,这是一个非常挑战的事情。
最后,我们在面向 DBA 等运维能力,在 4.0 也做了非常重大的改进。我们在 OceanBase 4.0 发布了 ASH 和实时 SQL 监控两个新的 feature,这两个 feature 可以帮助系统开发者和运维人员,很快地发现 SQL 运行问题,快速发现解决问题。
在运维能力上,我们发布了两个新能力——全链路追踪和数据库自治服务能力。
首先是可视化的全链路追踪能力。可以把业务发的一条 SQL 在 OceanBase 的全生命周期执行,所有的信息都会被记录下来,从 SQL 解析到分布式存储,所有这些信息都会被可视化地记录下来,帮助您发现系统中的瓶颈。同时全链路追踪能力也可以和 SOA 下的分布式追踪能力整合到一起,一个 RPC 服务到底访问了哪些数据库、访问了哪些 SQL、访问了哪些数据表,我们有标记,可以把全链路的分布式追踪整合到一套体系里。
其次是数据库自治能力。它源于蚂蚁集团的机器学习工程能力以及过去十年里OceanBase 在服务和支撑业务的实践经验整合而成。这套系统最核心的目的是帮助运维人员能更简单地使用 OceanBase,它能够帮我们自动处理告警、自动管理容量、自动做实时的应急。
给大家分享个例子,蚂蚁集团有数万个业务研发,但只有十几个 DBA。每天有近千次业务发布,所有的这些变化都可能会带来稳定性的问题,但是这十几个同学基本是不用做任何应急或故障处理策略的,我们的自治系统会帮助他们完成这件事。今天也会把 OceanBase 这些运维的优秀实践分享给业界的用户。
开放的 OceanBase 数据库产品体系
OceanBase 的产品体系非常开放,我们提供了丰富的 API,可以帮助大家把原来基于自己的数据库运维体系的产品和工具集成到 OceanBase 中,也可以把 OceanBase 现有的体系集成到已有系统中。为了让 OceanBase 能够和生态更加接近,我们做了很多兼容性的适配:比如 OceanBase 开始支持 MySQL binlog 的日志格式,使用 MySQL 的业务可以很容易、很轻松地把 MySQL 的生态工具对接到 OceanBase。此外,我们还支持了 HBase,TableAPI 的语义接口,客户可以把 HBase、MySQL、Oracle 整合到统一的一套 OceanBase 数据库里面,只运维一套数据库也可以服务非常多的业务。
我们对 OceanBase 的文档也做了比较大的升级。一方面希望用户通过我们的文档掌握使用 OceanBase 的所有知识,实现 Self-Service;另一方面是所有的文档都会逐步变成交互式文档,帮助大家在学习和实践中掌握 OceanBase 的基础能力;我们还会开放更多的企业级以及开源的产品,帮助开源客户像使用商业化工具或商业化产品一样使用 OceanBase 开源版数据库。
我今天给大家分享的产品就到这里,谢谢大家!