MyGit

v4.3.1_CE_BETA

oceanbase/oceanbase

版本发布时间: 2024-05-22 14:43:30

oceanbase/oceanbase最新发布版本:v4.2.4_CE(2024-07-15 09:44:43)

Version information

Information Description
Release date May 22, 2024
Version V4.3.1_CE_BETA
Commit number bad90e8
RPM number oceanbase-ce-4.3.1.0-100000032024051615
Release note The Beta version resolved most of the issues and is becoming more and more stable. However, there may still be some minor issues or errors that need to be addressed in the final stable release, so we recommend that you use this version in a testing environment.

Overview

OceanBase Database V4.3.1, building on the foundation of V4.3.0, introduces the new feature of full-text indexing to enhance document retrieval efficiency, and expands features such as real-time materialized views, materialized view rewriting, and primary key materialized views to meet analytical needs across various scenarios. This version introduces a new partition management mechanism, including partition swapping, external table partitions, and an extension of data types for partition keys in MySQL mode, enhancing the processing capability for large-scale data. The multi-model features (including JSON, XML, and GIS) are also upgraded, adding support for multi-valued indexes for JSON data and partial updates of JSON, promoting the migration and integration of heterogeneous data. Compatibility with MySQL continues to be enhanced, supporting lateral derived tables and MySQL locking functions, facilitating integration into the ecosystem. Incremental direct load capabilities are provided, improving the performance of multiple import scenarios, while also optimizing DML performance in scenarios with multiple local indexes, improving the efficiency of basic statistical information collection, and achieving significant performance improvements in row sampling and small-scale TP scenarios. The new version further optimizes resource usage, supporting clog caching, storage compression, SQL temporary result compression, system log compression, and other features. It complements the MySQL privilege system and supports operating system configuration checks to strengthen system security. As always, OceanBase Database focuses on user experience, adding resource specification estimation capabilities, enhancing backup transparency, providing IPv6 format support, and empowering database management and operations.

V4.3.1 is positioned as a Beta version, recommended for testing in real-time data warehouses or online transaction processing businesses. A General Availability (GA) version recommended for production use will be released in the second half of the year.

Key features

Kernel enhancement

Multi-model features

Compatibility with MySQL

Performance improvements

Reliability improvements

Resource usage optimization

Security enhancements

Usability improvements

Compatibility changes

Product behavioral changes

The following table describes the changes made in this version.

Feature Description
Output of the SHOW PARAMETERS command In earlier versions, the SHOW PARAMETERS command returns all parameters, including hidden parameters. In V4.3.1, the command returns only non-hidden parameters and hidden parameters with non-default values. The DEFAULT_VALUE and ISDEFAULT columns are added to show the default value of a parameter and whether the current value is the default value.
Log size When the amount of data in a single row is large, the space for a single log is insufficient. To address this issue, OceanBase Database extends the size of a single log to 3.5 MB since V4.3.1. You can use the ob_admin tool to view the clogs.

View changes

The following table describes the changes made in this version.

View Change type Description
CDB_OB_BACKUP_TASKS Modified The DATA_PROGRESS, LOG_FILE_COUNT, FINISH_LOG_FILE_COUNT, and LOG_PROGRESS columns are added for recording the data backup progress and supplemental log backup progress.
DBA_OB_BACKUP_TASKS Modified The DATA_PROGRESS, LOG_FILE_COUNT, FINISH_LOG_FILE_COUNT, and LOG_PROGRESS columns are added for recording the data backup progress and supplemental log backup progress.
[G]V$OB_TENANT_RESOURCE_LIMIT New Displays the resources such as log streams and tablets on an OBServer node for each tenant. You can query the information about all tenants from the sys tenant, and the information only about the current tenant from a user tenant.
[G]V$OB_TENANT_RESOURCE_LIMIT_DETAIL New Displays the resource limits on an OBServer node for each tenant, such as the number of log streams, tenant memory size, and clog disk size. You can query the information about all tenants from the sys tenant, and the information only about the current tenant from a user tenant.
[G]V$OB_SESSION New Displays information about the current session.
[G]V$OB_PROCESSLIST Modified The TOTAL_CPU_TIME column is added to show the CPU time.
mysql.role_edges New Displays the relationships between roles and users who are granted the roles. This view is applicable in MySQL mode.
mysql.default_roles New Displays the roles that are enabled for users by default. This view is applicable in MySQL mode.
mysql.columns_priv New Displays the column-level privileges of users. This view is applicable in MySQL mode.
DBA_OB_TRANSFER_PARTITION_TASKS New Displays all ongoing partition transfer tasks in the current tenant.
CDB_OB_TRANSFER_PARTITION_TASKS New Displays the ongoing partition transfer tasks of all tenants. You can query this view only in the sys tenant.
DBA_OB_TRANSFER_PARTITION_TASK_HISTORY New Displays all historical partition transfer tasks executed in the current tenant.
CDB_OB_TRANSFER_PARTITION_TASK_HISTORY New Displays the historical partition transfer tasks executed in all tenants. You can query this view only in the sys tenant.
[G]V$OB_PARAMETERS Modified The DEFAULT_VALUE and ISDEFAULT columns are added to show the default value of the parameter and whether the current value is the default value.
DBA_OB_SYS_VARIABLES New Displays values of system variables of the current tenant.
CDB_OB_SYS_VARIABLES Modified The DEFAULT_VALUE and ISDEFAULT columns are added to show the default value of the system variable and whether the current value is the default value.
[GV$OB_PL_CACHE_OBJECT] New Displays information about cached objects in the PL cache.
[G]V$OB_SQL_AUDIT Modified The PL_TRACE_ID column is added to show the outer PL trace ID for association with SQL statements in PL procedures. The PLSQL_EXEC_TIME column is added to show the PL execution time in μs, excluding the SQL execution time.
[G]V$SQL_WORKAREA Modified The DB_ID column is added to show the ID of the database to which the request connection belongs.

Parameter changes

The following table describes the changes made in this version.

Parameter Change type Description
syslog_disk_size New The total disk space available for system logs. It is a cluster-level parameter. The default value is 0M, indicating that the entire disk is available for system logs, which is the same as in earlier versions.
syslog_compress_func New The compression algorithm for system log files. Valid values are none, zlib_1.0, zstd_1.0, and zstd_1.3.8. It is a cluster-level parameter. The default value is none, which specifies not to compress system log files.
syslog_file_uncompressed_count New The number of system log files that triggers log compression for a specific log type. It is a cluster-level parameter. The default value is 0.
json_document_max_depth New The maximum nesting depth allowed for a JSON document. It is a tenant-level parameter. The default value is 100.
ha_diagnose_history_recycle_interval New It is a new cluster-level parameter that specifies the interval for clearing historical transfer diagnostic statistics. The default value is 7 days.
data_disk_write_limit_percentage New The data disk usage that triggers an error for user write requests. When the specified value is reached, you can drop tables to urgently release storage space to avoid cluster faults. It is a cluster-level parameter. The value of this parameter must be greater than that of data_disk_usage_limit_percentage. We recommend that you set this parameter to the value calculated by the following formula: (1 - memstore_limit_size/data_disk_size) × 100%.The default value is 0, which specifies not to stop user write requests.
strict_check_os_params New It is a new startup option that specifies whether to check operating system parameters in strict mode at startup. The default value is False. When operating system parameters do not meet the requirements, a warning is displayed without affecting the normal start of the OBServer node.
log_storage_compress_all New Specifies whether to enable clog compression for storage. It is a tenant-level parameter. The default value is False, which specifies not to enable clog compression for storage.
log_storage_compress_func New The compression algorithm for clogs. Valid values are lz4_1.0, zstd_1.0, and zstd_1.3.8. It is a tenant-level parameter. The default value is lz4_1.0.
spill_compression_codec New The compression algorithm for operators whose temporary results need to be materialized. It is a tenant-level hidden parameter. The default value is none, which specifies not to compress the temporary results of operators.

System variable changes

The following table describes the changes made in this version.

System variable Change type Description
QUERY_REWRITE_ENABLED New Specifies whether to enable query rewrite based on materialized views. This variable is available both at the global and session levels. The default value is False, which specifies to disable the feature.
QUERY_REWRITE_INTEGRITY New Specifies whether to rewrite queries based on real-time or non-real-time materialized views. This variable is available both at the global and session levels. When QUERY_REWRITE_INTEGRITY is set to enforced, queries are rewritten only based on the real-time materialized view. After the rewrite, the real-time materialized view is expanded to ensure that the result of the rewritten query is the same as that of the original query. When the system variable is set to stale_tolerated, queries can be rewritten based on the non-real-time materialized view. After the rewrite, the query result may be different from that of the original query. In this case, the real-time materialized view is not expanded even if you rewrite the query based on the real-time materialized view.The default value is enforced.
activate_all_roles_on_login New Specifies whether to activate all roles of a user when the user logs on. It is a global-level system variable available only in MySQL tenants.
lc_time_names New The language in which the date and month names and their abbreviations are displayed. This variable is available both at the global and session levels. The default value is en_US.

Function/PL package changes

Function/PL package Change type Description
CURRENT_ROLE New Displays the roles activated in the current session. This function is applicable in MySQL mode.
GET_LOCK New Obtains the specified lock. This function is applicable in MySQL mode.
IS_FREE_LOCK New Checks whether the specified lock is idle. This function is applicable in MySQL mode.
IS_USED_LOCK New Checks whether the specified lock is in use, and returns the ID of the connection that holds the lock, if the lock is in use. This function is applicable in MySQL mode.
RELEASE_ALL_LOCKS New Releases all user locks. This function is applicable in MySQL mode.
RELEASE_LOCK New Releases the specified lock. This function is applicable in MySQL mode.
DBMS_OB_LIMIT_CALCULATOR New Calculates the minimum amounts of physical resources required in different scenarios. This package is available in the sys tenant.

Syntax changes

Recommended versions of tools

The following table lists the recommended versions of tools for OceanBase Database V4.3.1_CE.

Tool Version
ODP V4.2.3
OCP V4.2.2_CE_HF1
OBD V2.8.0
ODC V4.2.4 BP2
OBCDC V4.3.1_CE_BETA
OMS V4.2.3_CE
OBClient V2.2.3
LibOBClient V2.2.3

Upgrade notes

版本信息

项目 描述
发布日期 2024-05-22
版本号 V4.3.1_CE_BETA
Commit 号 bad90e8
RPM 版本号 oceanbase-ce-4.3.1.0-100000032024051615
版本说明 Beta 版本解决了大部分缺陷,并趋于稳定。推荐测试环境使用。

版本概览

OceanBase V4.3.1 在 V4.3.0 基础上,新增全文索引特性提升文档检索效率,扩展实时物化视图、物化视图改写、主键物化视图等功能以满足多场景的分析需求。引入分区管理新机制,如分区交换、外表分区、MySQL 模式分区键数据类型扩展等,提升大规模数据的处理能力。多模特性(含 JSON、XML、GIS)功能升级,增加 JSON 多值索引、JSON 部分更新的能力支持,促进异构数据的迁移与融合。MySQL 兼容性持续增强,支持 Lateral Derived Tables、 MySQL 锁函数等,以便融入生态。提供增量旁路导入能力,提升了多次导入场景的入库性能,同时优化了多局部索引场景下的 DML 性能,提高了基础统计信息收集效率,并在行采样、小规格 TP 场景取得了显著的性能提升。新版本也进一步优化了资源使用,支持了 CLOG 日志缓存、SQL 临时结果压缩、系统日志压缩等特性。补充完善了 MySQL 权限体系、支持了操作系统配置检查,加固系统安全。一如既往地关注用户体验,增加资源规格估算能力,增强备份透明度,提供 IPV6 格式支持,赋能数据库管理与运维。

V4.3.1 定位为 Beta 版本,推荐实时数仓或联机交易业务测试使用,下半年将发布推荐用于生产的 GA 版本。

关键特性说明

内核增强

多模特性

MySQL 兼容

性能提升

可靠性提升

资源使用优化

安全强化

易用性提升

兼容性变更

产品行为变更

新增如下变更:

功能 变更说明
SHOW PARAMETERS 展示内容变更 老版本 SHOW PARAMETERS 会展示包含隐藏配置项在内的所有参数,V4.3.1 对 SHOW 的展示规则做了调整,仅展示非隐藏参数 + 非默认值的隐藏参数。同时也增加了 default_valueisdefault 两列用于展示配置项默认值和当前设置是否为默认值的信息。
单条日志大小扩展为 3.5 MB 为解决单行数据量较大情况下,单条日志空间不足的问题,V4.3.1 将单条日志大小扩展为 3.5 MB。需使用配套的 ob_admin 工具来查看 CLOG 内容。

视图变更

新增如下变更:

视图 变更类型 变更说明
CDB_OB_BACKUP_TASKS 新增列 新增 DATA_PROGRESSLOG_FILE_COUNTFINISH_LOG_FILE_COUNTLOG_PROGRESS 列用于记录数据和补偿日志的备份进度。
DBA_OB_BACKUP_TASKS 新增列 新增 DATA_PROGRESSLOG_FILE_COUNTFINISH_LOG_FILE_COUNTLOG_PROGRESS 列用于记录数据和补偿日志的备份进度。
[G]V$OB_TENANT_RESOURCE_LIMIT 新增 用于展示 OBServer 上每个租户的资源情况,资源包括:日志流、tablet 等。系统租户可以查看所有租户信息,普通租户只能查看本租户信息。
[G]V$OB_TENANT_RESOURCE_LIMIT_DETAIL 新增 用于展示 OBServer 上每个租户各种资源的限制详情,如:日志流个数受限于配置项、租户内存大小、clog 盘大小等。系统租户可以查看所有租户信息,普通租户只能查看本租户信息。
[G]V$OB_SESSION 新增 用于记录当前 Session 信息。
[G]V$OB_PROCESSLIST 新增列 新增 total_cpu_time 字段表示 CPU 使用时间。
mysql.role_edges 新增 MySQL 模式视图,用于展示角色和用户的授予关系。
mysql.default_roles 新增 MySQL 模式视图,用于展示用户默认启用的角色。
mysql.columns_priv 新增 MySQL 模式视图,用于展示用户拥有的列级权限。
DBA_OB_TRANSFER_PARTITION_TASKS 新增 展示本租户下所有正在处理的 Transfer Partition 任务。
CDB_OB_TRANSFER_PARTITION_TASKS 新增 展示所有租户当前正在处理的 Transfer Partition 任务。仅适用于 SYS 租户。
DBA_OB_TRANSFER_PARTITION_TASK_HISTORY 新增 展示当前租户下所有执行 Transfer Partition 的任务历史。
CDB_OB_TRANSFER_PARTITION_TASK_HISTORY 新增 展示所有租户执行 Transfer Partition 的任务历史。仅适用于 SYS 租户。
[G]V$OB_PARAMETERS 新增列 新增 DEFAULT_VALUEISDEFAULT 字段,用于展示配置项的默认值信息。
DBA_OB_SYS_VARIABLES 新增 展示当前租户的系统变量配置。
CDB_OB_SYS_VARIABLES 新增列 新增 DEFAULT_VALUEISDEFAULT 列信息。记录系统变量的默认值。
[G]V$OB_PL_CACHE_OBJECT 新增 展示 PL 相关的缓存对象信息。
[G]V$OB_SQL_AUDIT 新增列 新增 PL_TRACE_ID 列,用于记录外层 PL 的 trace_id,使其可以与 PL 内部 SQL 关联。新增 PLSQL_EXEC_TIME 列,用于记录 PL 执行耗时(不包括 SQL 执行时间),单位为 us。
[G]V$SQL_WORKAREA 新增列 新增 db_id 列,用于描述该请求的连接所属的数据库 ID。

配置项变更

新增如下变更:

配置项/系统变量 变更类型 变更说明
syslog_disk_size 新增 新增集群级配置项,用于控制系统日志可使用的总磁盘空间。默认为 0M,即兼容老版本默认行为,可使用整块磁盘。
syslog_compress_func 新增 新增集群级配置项,用于控制系统日志文件压缩算法,可选 nonezlib_1.0zstd_1.0zstd_1.3.8。默认为 none,表示不压缩系统日志文件。
syslog_file_uncompressed_count 新增 新增集群级配置项,用于控制每种日志不压缩的系统日志文件数量。默认为 0。
json_document_max_depth 新增 新增租户级配置项,用于控制 JSON 文档中允许的最大嵌套深度。默认为 100。
ha_diagnose_history_recycle_interval 新增 新增集群级配置项,用于控制 Transfer 诊断统计历史信息的清理时间间隔。默认为 7 天。
data_disk_write_limit_percentage 新增 新增集群级配置项,用于控制数据盘达到设置的水位后,用户写入报错的问题,发现问题以后,可以通过删表的方式紧急释放空间,避免集群故障。该配置项应该大于data_disk_usage_limit_percentage,开启时建议配置:(1 - memstore_limit_size / data_disk_size) * 100%。默认值为 0,表示不开启停止用户写入的功能。
strict_check_os_params 新增 新增启动项,用于指定启动时对 OS 参数进行宽松模式还是严格模式检查。默认为 False,表示不符合 OS 参数要求时,报 warning,不影响 OBServer 正常启动。
spill_compression_codec 新增 新增租户级隐藏配置项,用于指定需要临时物化的算子选用的压缩算法。默认为 NONE,表示不进行压缩。

系统变量变更

新增如下变更:

系统变量 变更类型 变更说明
QUERY_REWRITE_ENABLED 新增 新增 GlobalSession 级系统变量,用于控制是否开启物化视图改写能力。默认为 False,表示关闭。
QUERY_REWRITE_INTEGRITY 新增 新增 GlobalSession 级系统变量,用于控制使用实时物化视图或非实时物化视图进行改写。当 QUERY_REWRITE_INTEGRITY 设置为 enforced 时,只使用实时物化视图进行改写,改写后的实时物化视图会进行展开,保证改写后的查询结果与原查询相同。设置为 stale_tolerated 时,允许使用非实时物化视图进行改写,改写后的查询结果可能会与原始查询不同。此时,即使使用实时物化视图进行改写,也不会执行实时物化视图展开。默认为 enforced,表示只使用实时物化视图进行改写。
activate_all_roles_on_login 新增 新增 MySQL 租户下 GLOBAL 级系统变量,用于控制用户登录时是否激活所有角色。
lc_time_names 新增 新增 GlobalSession 级系统变量,用于控制日期/月份或缩写的名称展示使用哪种语言。默认为 en_US。

函数/PL包变更

函数/PL包 变更类型 变更说明
current_role 新增函数 适用于 MySQL 模式,用于展示当前 Session 激活的 Role
GET_LOCK 新增函数 适用于 MySQL 模式,用于获取指定名字的锁。
IS_FREE_LOCK 新增函数 适用于 MySQL 模式,用于判断指定名字锁是否空闲。
IS_USED_LOCK 新增函数 适用于 MySQL 模式,用于判断指定名字锁是否正在使用,如果正在被使用返回持锁 connection_id
RELEASE_ALL_LOCKS 新增函数 适用于 MySQL 模式,用于释放所有用户锁。
RELEASE_LOCK 新增函数 适用于 MySQL 模式,用于释放指定名字的锁。
DBMS_OB_LIMIT_CALCULATOR 新增系统包 系统租户新增 DBMS_OB_LIMIT_CALCULATOR 系统包,用于计算不同场景下系统所需的最小物理资源。

语法变更

周边配套

OceanBase 数据库 V4.3.1_CE 推荐使用的平台工具版本如下:

组件 版本
ODP V4.2.3
OCP V4.2.2_CE_HF1
OBD V2.8.0
ODC V4.2.4-bp2
OBCDC V4.3.1_CE_BETA
OMS V4.2.3_CE
OBClient V2.2.3
LibOBClient V2.2.3

升级说明

相关地址:原始地址 下载(tar) 下载(zip)

1、 oceanbase-ce-4.3.1.0-100000032024051615.el7.aarch64.rpm 93.99MB

2、 oceanbase-ce-4.3.1.0-100000032024051615.el7.x86_64.rpm 116.01MB

3、 oceanbase-ce-4.3.1.0-100000032024051615.el8.aarch64.rpm 93.95MB

4、 oceanbase-ce-4.3.1.0-100000032024051615.el8.x86_64.rpm 116.01MB

5、 oceanbase-ce-4.3.1.0-100000032024051615.nonlse.el7.aarch64.rpm 94.02MB

6、 oceanbase-ce-4.3.1.0-100000032024051615.nonlse.el8.aarch64.rpm 93.98MB

7、 oceanbase-ce-cdc-4.3.1.0-100000082024051609.el7.aarch64.rpm 106.5MB

8、 oceanbase-ce-cdc-4.3.1.0-100000082024051609.el7.x86_64.rpm 128.57MB

9、 oceanbase-ce-cdc-4.3.1.0-100000082024051609.el8.aarch64.rpm 108.18MB

10、 oceanbase-ce-cdc-4.3.1.0-100000082024051609.el8.x86_64.rpm 130.23MB

11、 oceanbase-ce-libs-4.3.1.0-100000032024051615.el7.aarch64.rpm 143.9KB

12、 oceanbase-ce-libs-4.3.1.0-100000032024051615.el7.x86_64.rpm 154.59KB

13、 oceanbase-ce-libs-4.3.1.0-100000032024051615.el8.aarch64.rpm 150.74KB

14、 oceanbase-ce-libs-4.3.1.0-100000032024051615.el8.x86_64.rpm 159.32KB

15、 oceanbase-ce-libs-4.3.1.0-100000032024051615.nonlse.el7.aarch64.rpm 143.93KB

16、 oceanbase-ce-libs-4.3.1.0-100000032024051615.nonlse.el8.aarch64.rpm 150.77KB

17、 oceanbase-ce-sql-parser-4.3.1.0-100000032024051615.el7.aarch64.rpm 1.94MB

18、 oceanbase-ce-sql-parser-4.3.1.0-100000032024051615.el7.x86_64.rpm 1.97MB

19、 oceanbase-ce-sql-parser-4.3.1.0-100000032024051615.el8.aarch64.rpm 1.94MB

20、 oceanbase-ce-sql-parser-4.3.1.0-100000032024051615.el8.x86_64.rpm 1.98MB

21、 oceanbase-ce-sql-parser-4.3.1.0-100000032024051615.nonlse.el7.aarch64.rpm 1.94MB

22、 oceanbase-ce-sql-parser-4.3.1.0-100000032024051615.nonlse.el8.aarch64.rpm 1.94MB

23、 oceanbase-ce-table-4.3.1.0-100000032024051615.el7.aarch64.rpm 52MB

24、 oceanbase-ce-table-4.3.1.0-100000032024051615.el7.x86_64.rpm 51.1MB

25、 oceanbase-ce-table-4.3.1.0-100000032024051615.el8.aarch64.rpm 51.99MB

26、 oceanbase-ce-table-4.3.1.0-100000032024051615.el8.x86_64.rpm 51.06MB

27、 oceanbase-ce-table-4.3.1.0-100000032024051615.nonlse.el7.aarch64.rpm 52.05MB

28、 oceanbase-ce-table-4.3.1.0-100000032024051615.nonlse.el8.aarch64.rpm 52.03MB

29、 oceanbase-ce-utils-4.3.1.0-100000032024051615.el7.aarch64.rpm 81.46MB

30、 oceanbase-ce-utils-4.3.1.0-100000032024051615.el7.x86_64.rpm 101.25MB

31、 oceanbase-ce-utils-4.3.1.0-100000032024051615.el8.aarch64.rpm 81.46MB

32、 oceanbase-ce-utils-4.3.1.0-100000032024051615.el8.x86_64.rpm 101.18MB

33、 oceanbase-ce-utils-4.3.1.0-100000032024051615.nonlse.el7.aarch64.rpm 81.5MB

34、 oceanbase-ce-utils-4.3.1.0-100000032024051615.nonlse.el8.aarch64.rpm 81.44MB

查看:2024-05-22发行的版本