首批通过分布式安全可靠测评,为关键业务系统打造
What's New
更新时间:2026-04-10 11:58:00
OceanBase V4.3.1 版本在 V4.3.0 的基础上带来了新功能与性能优化。本次升级引入了全文索引特性,提高了文档检索效率。新增的功能还包括实时物化视图、物化视图改写及主键物化视图等,进而满足了多场景的数据分析需求。此外,引入的分区管理新机制,如分区交换、外表分区及 MySQL 模式下分区键数据类型的扩展,显著提升了处理大规模数据集的能力。
本次版本更新同样针对多模特性(包括 JSON、XML、GIS)进行了升级,增加了对 JSON 多值索引和 JSON 部分更新的支持,进一步促进了异构数据的迁移和融合。为了提升逐步增长的入库需求,OceanBase V4.3.1 提供了增量旁路导入能力,并优化了在具有多局部索引的场景下的 DML 性能,提高了基础统计信息收集效率,并在行采样、小规格 TP 场景取得了显著的性能提升。
在资源利用方面,新版本通过引入 CLOG 日志缓存、SQL 临时结果和系统日志压缩特性,实现了更为高效的资源使用。通过补全 MySQL 权限体系和支持操作系统配置检查,加固系统安全。用户体验方面,OceanBase 继续提供高质量服务,提升了资源规格估算的能力,增强了备份的透明度,并加入了对 IPV6 格式的支持,以便于数据库管理和运维工作。
在确保与生态系统兼容性的同时,MySQL 与 Oracle 的兼容性也得到了持续增强,支持了 Lateral Derived Tables、MySQL 锁函数、Oracle 视图注释与远程 UDF 调用等特性,这进一步确保了 OceanBase 能够无缝融入现有生态。
您可以查看企业版 V4.3.1 版本发布记录或社区版 V4.3.1 版本发布记录,了解更多版本信息。
现在,让我们一起探索这个版本中的新亮点。
高性能
全文索引特性(实验特性)
OceanBase V4.3.1 版本推出了全新的全文索引功能,极大地简化了涉及大量文本的模糊查询过程。此前,文本数据的模糊查询依赖于全表扫描,效率较低,现在通过建立关键词索引,查询效率得到了显著提升。
虽然当前这一功能仍处于实验阶段,但我们期待后续版本将对其功能进行进一步的扩展,最终形成适用于生产环境的特性。此举从根本上解决了传统 B-Tree 索引在大文本数据查询场景下的局限性,为近似匹配、相关性排序等复杂查询提供了更强大的支持。
有关更多全文索引特性,参见全文索引。
物化视图能力增强
OceanBase V4.3.1 版本扩展支持了实时物化视图功能,提供基于物化视图和 MLOG 两部分数据的实时计算能力,适用于实时性要求较高的分析业务。新增物化视图主键约束,支持用户为物化视图指定主键,以此优化基于主键的单行查找、范围查询或关联场景性能。同时扩展支持了内连接场景物化视图的增量更新能力,提升部分场景的物化视图刷新性能。
进一步地,V4.3.1 版本还新增了物化视图的自动改写能力,在系统变量 QUERY_REWRITE_ENABLED 设置为 True 的情况下,创建物化视图并指定 ENABLE QUERY REWRITE,系统将能自动地将对原始表的查询改写为利用物化视图的查询,有效降低业务改造的工作量。
有关如何创建实时物化视图的详细信息,参见创建物化视图(MySQL 模式)或创建物化视图(Oracle 模式)的创建实时物化视图章节。
有关物化视图的自动改写的详细信息,参见物化视图查询改写(MySQL 模式) 和物化视图查询改写(Oracle 模式)。
分区管理增强
OceanBase V4.3.1 版本新增分区交换功能,通过修改数据字典中分区和表的定义,而无需进行数据的物理复制,可以将 A 表数据近乎瞬时地移动到 B 表某个分区下,实现表间数据的快速迁移,极大地提升了数据迁移的性能。
外部表分区功能允许以类似于常规表的 list 分区方式来管理数据,并支持自动和手动创建分区两种方式。指定自动创建分区时,系统将按照分区键的定义方式,将文件按照分区进行分组;指定手动创建分区时,需要用户指定每个分区对应的数据文件子路径。这种情况下,外表查询可以根据分区条件实现分区裁剪,减少扫描的文件数量,显著提升查询性能。
此外,OceanBase V4.3.1 在兼容 MySQL Range Columns 分区键类型的基础上,扩展支持了 double、float、decimal、timestamp 等类型作为 Range Columns 分区的分区键。
有关外表分区的详细信息,参见外表分区(MySQL 模式)、外表分区(Oracle 模式)、分区交换(MySQL 模式)和分区交换(Oracle 模式)。
多模特性
MySQL 模式 JSON 多值索引(实验特性)
OceanBase V4.3.1 在 MySQL 模式中兼容了 JSON 多值索引特性。通过这一新增功能,用户现在可以在包含多个元素的 JSON 数组字段上创建二级索引,增强复杂 JSON 数据结构的查询能力,同时保持数据模型的灵活性。此次更新将此功能定义为实验特性,我们致力于在未来版本中继续拓展此功能,使之演进为生产环境下可用的特性。
有关创建多值索引的详细信息,参见创建索引下创建多值索引章节。
MySQL JSON 功能新增与升级
新增支持 JSON_SCHEMA_VALID、JSON_SCHEMA_VALIDATION_REPORT 和 JSON_ARRAY_APPEND 表达式。
V4.3.1 版本新增支持 JSON 部分更新功能,当用户通过特定表达式(json_set、json_replace 和 json_remove)更新 JSON 文档的部分字段时,可以只对修改部分进行更新,无需全量覆盖更新,以此提高更新性能。有关 Json Partail Update 的详细信息,参见Json 部分数据的更新。
MySQL GIS 增强
继 V4.1.X 版本支持 MySQL GIS 数据类型及部分空间表达式的基础上,V4.3.1 版本进一步补齐空间数据存储和计算分析功能。新增支持 MySQL 兼容的 ST_Crosses、ST_Overlaps、ST_Difference、ST_Union、ST_SymDifference、ST_Length、ST_Centroid 和 ST_AsGeoJSON 等表达式。此外,为了满足 GIS 行业广泛使用的 PG 数据库用户,OceanBase 新版本也扩展补充了 _ST_Touches、_ST_Equals、_ST_MakeEnvelope、_ST_ClipByBox2D、_ST_GeometryType、_ST_IsCollection、_ST_NumInteriorRings、_ST_PointOnSurface、ST_AsMVTGeom 和 _ST_AsMVT 等表达式,同时支持了三维空间对象的存储能力。
Oracle JSON 增强
继 V4.2.1 版本在 PL 语句中已支持 JSON_OBJECT_T 和 JSON_ELEMENT_T 两种 JSON 数据类型后,V4.3.1 版本补充支持了 JSON_ARRAY_T 数据类型。
Oracle GIS 新增功能
为便利依赖位置信息服务的业务方存取和分析空间数据,V4.3.1 版本新增支持 SDO_GEOMETRY 数据类型,能够描述 point、linestring、polygon、multipoint、multilinestring、multipolygon 和 collection 7 种空间类型。同时支持通过成员函数 get_dims、get_gtype 和 st_isvalid 查询 SDO_GEOMETRY 空间对象的维度、类型及有效性,并通过 get_wkb、get_wkt 和 get_geojson 来将 SDO_GEOMETRY 转换为 Well-Known-Binary、Well-Known-Text 或 JSON 的数据格式。
兼容 XML 特性
- MySQL模式:兼容 ExtractValue、UpdateXML 表达式。
- Oracle 模式:兼容 XMLTABLE、INSERTCHILDXML、DELETEXML、XMLSEQUENCE 表达式。
增量旁路导入(实验特性)
V4.3.0 版本中,面对表数据需要多次导入的场景,每次导入都需要将表中已有数据重写一遍,影响了增量导入的性能。为了优化增量数据的导入效率,OceanBase V4.3.1 引入了增量旁路导入特性,可以专注于新增数据的处理而无需重写现有数据,实现了像初次导入一样的高性能。用户可以通过在 LOAD DATA 和 INSERT INTO SELECT 语句中使用 /*+ direct(need_sort, max_errors_allowed, load_mode)*/ Hint 来明确启用增量旁路导入,通过指定 load_mode 为 inc_replace 使用增量旁路导入方式。当前,该功能尚为实验阶段,但在不久的将来,我们期待其功能的不断扩展,并成為正式上线的特性。
有关增量旁路导入的详细信息,参见旁路导入概述 中增量旁路导入章节。
资源利用
日志缓存
OceanBase V4.3.1 版本新增 CLOG 日志缓存功能,允许日志消费者直读缓存中的日志信息,从而避免了对磁盘的重复读取,降低了日志盘的带宽占用。为监控日志缓存的效能,系统状态表 SYSSTAT 增加了 50065、50066 和 120010 三个统计项用于展示日志缓存命中与未命中情况,以及 CLOG 缓存的大小。
日志压缩
OceanBase V4.3.1 版本为 CLOG 日志引入了存储压缩功能,通过将事务提交的日志进行压缩,间接提高日志盘吞吐能力,提升日志盘可容纳的事务日志总量。同时,我们也推出了系统日志压缩,超过预设数量的日志文件会自动被压缩,以节省更多的存储空间。系统日志使用超过设定的磁盘限制时,将优先删除最旧的日志文件。通过启用高效的 zstd 压缩,预计存储容量相比未压缩状态可以增加 20 倍。
安全
MySQL PL 权限管理
MySQL 模式在新版本中增添了 PL 权限管理功能,专门针对存储过程和函数执行提供了新增的权限控制选项,如 CREATE ROUTINE、EXECUTE 和 ALTER ROUTINE。新增的内部表 mysql.procs_priv 可用于展示存储过程或函数授权信息。新建集群时该功能将自动开启,而已存在的集群则需手动进行激活。
MySQL 列级权限
OceanBase V4.3.1 版本也推出了 MySQL 列级权限控制,进一步细化对用户对于表中具体某几列的 SELECT、INSERT 或 UPDATE 操作的权限管理,使得数据管理更为精密且安全。
相关文档
请关注我们的版本发布记录,了解更多 OceanBase 各版本信息: