1 前言
万有引力是艾萨克·牛顿提出的定律。它揭示了万物之间的物理联系。而数据库,这颗计算机科学领域皇冠上的明珠,像太阳一样吸引着周边的星系围绕其运动。
4月20号,上海。一场数据库领域的盛会,围绕这个领域的一颗明珠OceanBase展开--第二届OceanBase开发者大会。
2 产品--OceanBase 4.3 版本发布
这次大会发布了OB4.3版本,这个版本增加了很多有用的能力。让我印象深刻的几个点:
2.1 AP能力提升
现场OB和CK同时跑分的场景让人惊讶。作为一款通用数据库,能与顶级AP产品在AP场景测试跑分上不分伯仲。
2.2 租户克隆
不仅提升了租户管理能力,还支持租户克隆,这个功能是对运维来说非常实用的功能。
2.3 新向量化引擎
OceanBase 在早期版本已经实现了基于 Uniform 数据描述方式的向量化引擎,性能较非向量化引擎有了明显提升,但在深度 AP 场景,还有一些性能上的不足。V4.3.0 版本实现了向量化引擎 2.0 版本,更改为 Column 数据格式描述,避免了 ObDatum 维护带来的内存使用、序列化和读写访问开销。基于数据格式描述重构,新版本也对一批常用算子和表达式进行了重新实现,如 HashJoin、AGGR、HashGroupBy、Exchange(DTL Shuffle) 等 10 余项算子,关系运算、逻辑运算、算数运算等 20 余项 MySQL 表达式。在后续的 V4.3.x 版本也会基于新的向量化引擎,持续补充完善其他算子和表达式的实现,以便获得 AP 场景更优性能。
2.4 物化视图
V4.3.0 版本新增物化视图(Materialized View)功能。物化视图是支撑 AP 业务的一个关键特性,它通过预计算和存储视图的查询结果,减少实时计算来提升查询性能,简化复杂查询逻辑,常用于快速报表生成和数据分析场景。
因为物化视图需要存储查询结果集来优化查询性能,而物化视图与基础表之间存在数据依赖关系,每当基础表数据发生变动时,物化视图中的数据必须进行相应更新以保持同步,所以新版本也引入了物化视图刷新机制,包括全量刷新和增量刷新两种策略。全量刷新是一种较为直接的方式,每次执行刷新操作时,系统会重新执行物化视图对应的查询语句,完整地计算并覆盖原有的视图结果数据,这种方式适用于数据量相对较小的场景。相对来讲,增量刷新仅需处理自上次刷新以来发生变更的部分。为了实现精确的增量刷新,OceanBase 实现了类似 Oracle MLOG(Materialized View Log)的物化视图日志功能,通过日志详细跟踪记录基础表的增量更新数据,从而确保物化视图能够进行快速增量刷新。增量刷新方式尤其适用于数据量庞大且变更频繁的业务场景。
2.5 自适应代价模型
OceanBase 历史版本代价模型是使用内部机器测算的常量参数来代表硬件系统统计信息,通过一系列公式与常量参数来描述每个算子的执行开销。而真实的业务场景中,不同硬件环境可能具备不同的 CPU 时钟频率、不同的顺序读或随机读的速度、不同的网卡带宽等,可能存在代价估算偏差,这些偏差会使得优化器无法在不同的业务环境总是生成最优计划。新版本优化代价模型实现,支持通过 DBMS_STATS 包来收集或设置系统统计信息系数,已达到代价模型自适应硬件的目的。同时也提供了 DBA_OB_AUX_STATISTICS 视图,用于展示当前租户的系统统计信息系数。
当然还有很多其他重要的内容,细节大家参考官方文档 https://www.oceanbase.com/product/oceanbase-database-rn/releaseNote#V4.3.0 。
3 人
这次有来自各行各业的参会嘉宾,有数据库内核开发、DBA、应用开发者等等,做了精彩的分享,线下的交流也不乏思想的碰撞。另一个方面,这次大会聚集了不同年龄段的朋友参会。从60后一直到00后,大家都是因为OB而聚在一起。这也是OB的吸引力之一。
4 生态
生态对于一款数据库产品来说,至关重要,就像万有引力定律揭示的一样,质量越大的物体对其他物体的吸引力越大。所以地球一直绕着太阳转,月亮一直绕着地球转。OB也吸引了众多生态厂商的加盟。不乏应用开发适配厂商、数据库服务厂商、SaaS厂商、企业客户等等的合作。名单我就不一一列举了。
5 开源
基础软件离不开开源,就像地球离不来太阳,太阳离不开银河系一样。OB现在已经做到开源版本和商业版本属于同一套代码。也有社区开发者提交了比如AI等有趣的feature。
OB CTO也在现场承诺OB是做真开源。
6 小结
度过了非常充实的一天,收获满满。我不仅学到了知识,也结识了更多的朋友。很多都是久仰大名的前辈。比如太保的林春老师,白鳝老师,盖国强老师,明叔等等,当然还有之前就见过的薛老师,总监,张震,肉哥等等,还有同龄也是老乡的小强,精通历史的司马辽太杰老师,PG一哥灿灿,我的群友某租车企业的dba朋友,还有很多朋友没有列出来,请大家原谅我。
再次感谢各位朋友,咱们下次见!