v4.2.1_CE_BP7
版本发布时间: 2024-06-06 19:09:59
oceanbase/oceanbase最新发布版本:v4.2.4_CE(2024-07-15 09:44:43)
Version information
Information | Description |
---|---|
Release date | June 6, 2024 |
Version | V4.2.1_CE_BP7 |
Commit number | 69b64b8 |
RPM number | oceanbase-ce-4.2.1.7-107000162024060611 |
Enhanced features
-
Operating system compatibility
The 8U operating system is supported.
-
CPU architecture compatibility
The ppc64le architecture is supported. #1917
-
Intermediate data compression enabled by default for direct load
During direct load process, if the intermediate data consumes excessive space, it may lead to disk space exhaustion and result in import failure. The new version introduces the intermediate data compression feature for direct load, which can be controlled by the tenant-level parameter
_ob_ddl_temp_file_compress_func
to determine whether to enable and use the compression algorithm.By default, it is set to
NONE
, indicating no compression is enabled, suitable for scenarios with sufficient disk space and a preference for higher import performance. Based on business requirements, it can be modified toZSTD
orLZ4
to specify the corresponding compression algorithm for enabling intermediate data compression, or set toAUTO
for adaptive compression enablement. -
S3, OBS, and GCS supported as the backup media
The new version supports Amazon Simple Storage Service (S3) and S3-compatible object storage services such as Huawei Cloud Object Storage Service (OBS) and Google Cloud Storage (GCS) as the log archive and data backup destination types. You can also use backup data on S3 and S3-compatible object storage services for physical restore.
-
Physical restore at the set or piece level
In actual business scenarios, second backup is required to manually migrate data backup sets or archive log pieces to a new path. The new version provides the set- and piece-level physical restore feature. You can use the
ADD RESTORE SOURCE
command to load the data backup sets or archive log pieces in the new path to restore the data to a specified point in time. -
Optimization of selecting the migration source
The new version defines the regional relationships between OBServer nodes as follows: in the same IDC, in the same region but different IDCs, and in different regions. It also provides the
choose_migration_source_policy
parameter for you to specify the prioritizing mode for selecting the source replica for migration. You can preferentially select a nearby follower to improve the migration efficiency and reduce the pressure on the leader. -
Physical restore progress statistics
To allow you to learn about the running status and progress of a physical restore task, and estimate the remaining time required for the restore task, the new version provides the physical restore progress statistics feature. You can query the
CDB/DBA_OB_RESTORE_PROGRESS
view for the restore progress in real time. -
Optimization of minor compaction scheduling for transaction data tables in a large-sized tenant
The new version improves the minor compaction timeliness for transaction data tables in large-sized tenants by speeding up the scheduling of minor compactions of transaction data tables, thereby further optimizing the performance of buffer tables.
-
Global CPU resource isolation for foreground and background tasks
OceanBase Database of previous versions allow you to configure different unit configs for tenants to implement CPU resource isolation between the tenants. In addition, OceanBase Database provides the
DBMS_RESOURCE_MANAGER
system package for you to configure CPU resource isolation within a tenant. The new version supports global CPU resource isolation for foreground and background tasks. You can limit the CPU resources available for background tasks on an overall basis, which is more convenient and easier than using theDBMS_RESOURCE_MANAGER
system package to separately configure resource isolation for each tenant. -
Response time histograms
OceanBase Database of previous versions provide statistics on the average response time and maximum response time in different SQL categories, which lack fine-grained statistics that reflect the SQL execution performance at a certain percentile. The new version supports response time histograms. You can query and monitor response time statistics of a specific SQL type at a certain percentile, such as P90 or P95, by using the
[G]V$OB_QUERY_RESPONSE_TIME_HISTOGRAM
view. -
Partition balancing strategy optimization
The new version optimizes the partition balancing strategy. You can scatter continuous partitions when you create a partitioned table. For a user table that contains a LONGTEXT or LOB column or a local index, the system also calculate associated tables for partition disk balancing, contributing to more balanced disk usage.
-
OBCDC startup acceleration
The new version optimizes the startup performance of OceanBase Change Data Capture (CDC) and helps improve the synchronization performance of downstream binlog tools.
-
Extension of the JSON nesting depth
In OceanBase Database of previous versions, the maximum nesting depth of a JSON document is 100. The new version allows you to use the
json_document_max_depth
parameter to adjust the nesting depth limit as required. -
HBase PageFilter
The OB-HBase model adopted by the new version supports row restriction by PageFilter in HBase and returns the specified number of rows.
-
Backup performance optimization
During backup in OceanBase Database of previous versions, a continuity check is performed to make sure that the baseline version number is greater than the minor compaction version number, which ensures data integrity. However, the continuity check involves reading data from the backup media and executing operations during which the operated data needs to be locked, compromising the backup performance. The new version reduces the performance overhead caused by a continuity check during backup. You can use the
ha_low_thread_score
parameter to control the number of threads used for backup, thereby effectively improving the backup performance.
Product behavioral changes
-
Default value of
optimizer_features_enable
changed to 4.2.1.7OceanBase clusters created by using OceanBase Database V4.2.1 BP7 or later support new features of the optimizer. However, if you upgrade OceanBase Database from V4.2.1 BP6 or earlier to V4.2.1 BP7, the setting of the system parameter
optimizer_features_enable
of the optimizer remains the same as that before the upgrade. In V4.2.1 BP6 or earlier, the default value of the system parameter is empty for the optimizer. That is, the optimizer features of V4.2.1.0 are used. -
Removing limitations on major compactions upgrades
The limitations on major compactions are removed for upgrades from minor versions of OceanBase Database V4.2 to V4.2.1 BP7.
Parameter changes
Parameter | Change type | Description |
---|---|---|
choose_migration_source_policy | New | The strategy for selecting the migration source. It is a tenant-level parameter. Two strategies are supported:
idc . |
json_document_max_depth | New | The maximum nesting depth for a JSON document. It is a tenant-level parameter. The default value is 100, and the maximum value is 1024. |
log_storage_warning_trigger_percentage | New | The write performance threshold in percentage for triggering a log disk fault. It is a cluster-level parameter.
|
sql_plan_management_mode | New | Specifies whether to enable the SQL plan management (SPM) feature. It is a tenant-level parameter. The default value is Disable , indicating that the SPM feature is disabled. You can use either this parameter or the system variable optimizer_use_sql_plan_baselines to enable the SPM feature. However, we recommend that you use this parameter to enable SPM, which eliminates the need to restart the business application or OceanBase Database Proxy (ODP) for SPM to take effect. |
System variable changes
System variable | Change type | Description |
---|---|---|
optimizer_features_enable | Default value changed |
|
View changes
View | Change type | Description |
---|---|---|
CDB/DBA_OB_RESTORE_PROGRESS | Columns modified | The RECOVER_SCN , RECOVER_SCN_DISPLAY , RECOVER_PROGRESS , TABLET_COUNT , FINISH_TABLET_COUNT , and RESTORE_PROGRESS columns are added to show the physical restore progress. |
[G]V$OB_QUERY_RESPONSE_TIME_HISTOGRAM | New | This view is added to display SQL response time histograms by SQL category. It is a tenant-level view. |
CDB_TAB_COL_STATISTICS | Content modified | The index table information is no longer displayed. |
Bug fixes
-
Fixed the issue where the column specified in the
select count (column) from table [where];
DDL statement, which added more than two columns to the end of a table, was not the last column in the table. If dump data was involved, the query results had more issues. #1952 -
Fixed the issue where the parallel execution of
TRUNCATE TABLE
got stuck. -
Added a check on the slog disk space to the restart process.
-
Fixed the issue of PlTemp memory bloat in retries upon an open cursor failure.
-
Fixed the issue where multiple rows were queried at a time in a pushdown scenario.
-
Fixed the issue of repeated SQL retries due to the contention check on the large transaction lock.
-
Fixed the issue of data disk space exhaustion caused by statistics collection for hybrid histograms.
-
Fixed the issue where the outline could not be bound when an index contained a special character.
-
Fixed the issue of a QPS or TPS drop in the migration and replication process.
-
Fixed the issue of a core dump caused by direct load using OBLOADER.
-
Fixed the issue of a high memory usage caused by MemTable occupation during backup.
-
Fixed the issue of a core dump caused by the concurrence of direct load and DDL execution.
版本信息
项目 | 描述 |
---|---|
发布日期 | 2024-06-06 |
版本号 | V4.2.1_CE_BP7 |
Commit 号 | 69b64b8 |
OBServer RPM 版本号 | oceanbase-ce-4.2.1.7-107000162024060611 |
特性增强
-
操作系统适配支持
新增 8U 操作系统适配支持。
-
CPU架构适配支持
新增 ppc64le架构支持。#1917
-
旁路导入中间数据支持开启压缩 旁路导入过程中,中间数据占用空间过大时,可能会导致磁盘空间满,进而导致导入失败。新版本增加旁路导入中间数据压缩功能,通过租户级配置项
_ob_ddl_temp_file_compress_func
控制是否开启及使用的压缩算法。默认为
NONE
,表示不开启压缩,适用于磁盘空间足够,希望获得更高导入性能的场景。根据业务需要可修改为ZSTD
或LZ4
,来指定对应的压缩算法开启中间数据压缩,或设置为AUTO
自适应开启压缩。 -
备份恢复支持 S3/OBS/GCS
新增支持 S3 协议,可将 S3/OBS/GCS 作为日志归档和数据备份的目的端,同时支持使用 S3/OBS/GCS 上的备份数据进行物理恢复。
-
SET/PIECE 级物理恢复
实际业务中存在二次备份场景,需把数据备份集或归档日志手动搬迁到新的路径。新版本增加了 SET/PIECE 级物理恢复功能,提供
ADD RESTORE SOURCE
命令来加载新路径的数据备份集 SET 或日志归档 PIECE,支持按需恢复到指定时间。更多信息请参见 执行指定路径的恢复。 -
迁移复制源端选择优化
新版本将各 Server 按照地域信息划分为同 IDC、同 Region 不同 IDC、跨 Region 三种区域关系,同时提供
choose_migration_source_policy
配置项,用于迁移复制场景下,指定源端的选择模式,以便优先考虑地理位置就近因素以及 Follower 副本来提升迁移效率、降低 Leader 压力。更多信息请参见 choose_migration_source_policy。 -
物理恢复进度统计
为了用户在使用物理恢复功能时可以了解恢复任务的运行状态和进度,并预估完成时间,新版本增加了物理恢复进度统计功能。用户可通过
CDB/DBA_OB_RESTORE_PROGRESS
视图实时查看恢复进度,获得更好的使用体验。更多信息请参见 查看物理恢复进度。 -
大规格租户事务数据表转储调度优化
优化大规格租户下事务数据表转储不及时的问题,加快事务数据表的转储调度,进一步优化 Buffer 表性能。
-
全局 CPU 前后台任务隔离
在之前版本,OceanBase 数据库已实现通过租户 Unit 规格来配置租户间的 CPU 资源隔离,提供
DBMS_RESOURCE_MANAGER
系统包来配置租户内的 CPU 资源隔离。新版本支持全局 CPU 前后台任务隔离,可以在整体层面上限制后台任务的可用资源,相对租户内使用DBMS_RESOURCE_MANAGER
单独配置更加方便易用。更多信息请参见 使用全局 CPU 资源的前后台隔离。 -
新增响应时间统计直方图
在之前版本,OceanBase 数据库已支持基于不同 SQL 类别的平均响应时间/最大响应时间指标,但缺乏更细粒度的反映某个分位 SQL 执行性能的指标展示。新版本增加响应时间直方图功能,可基于
[G]V$OB_QUERY_RESPONSE_TIME_HISTOGRAM
系统视图计算和监控不同类型 SQL 的 P90/P95 之类的响应时间统计。更多信息请参见 GV$OB_QUERY_RESPONSE_TIME_HISTOGRAM、V$OB_QUERY_RESPONSE_TIME_HISTOGRAM。 -
分区均衡策略优化
新版本优化了分区均衡策略,支持在创建分区表时连续分区打散。当用户表存在 longtext/lob 列或局部索引时,分区磁盘均衡也会计算关联表,使磁盘使用更加均衡。更多信息请参见 租户内均衡。
-
OBCDC 启动加速
新版本优化了 OBCDC 启动性能,协助提升下游 Binlog 工具的同步性能。
-
JSON 可嵌套层数扩展
历史版本限制 JSON 文档的可嵌套最大深度为 100,新版本提供
json_document_max_depth
配置项,允许用户根据需求调整嵌套深度。对于超过 100 的 JSON 嵌套层数需求,用户可适当调大该配置。更多信息请参见 json_document_max_depth. -
支持 HBase PageFilter 功能
OB-HBase 模型下, 支持使用 HBase 中的 PageFilter 对 Row 进行限制, 返回指定数量的 Row。
-
备份性能优化
OceanBase 数据库在备份过程中,通过连续性校验确保基线版本大于转储版本来保证数据完整。然而,连续性检查涉及读取备份介质上的数据并执行带锁操作,因此会影响备份性能。新版本优化了备份过程中连续性校验操作带来的性能开销,支持通过
ha_low_thread_score
控制备份使用的线程数,从而有效提高备份性能。更多信息请参见 ha_low_thread_score。
产品行为变更
-
优化器版本调整默认值为 "4.2.1.7"(optimizer_features_enable)
V4.2.1 BP7 开始,新建的集群可以使用新版优化器能力,但从 V4.2.1 BP6 及以下版本升级到 V4.2.1 BP7 依然会保留之前的系统参数配置值。V4.2.1 BP6 及以下版本,默认值都为空,表示使用 V4.2.1.0 的优化器能力。
-
升级合并限制放开
从 OceanBase 数据库 V4.2 的各版本升级到 V4.2.1 BP7 时,升级过程中放开了合并的限制。
配置项变更
配置项 | 变更类型 | 描述 |
---|---|---|
choose_migration_source_policy | 新增 | 新增租户级配置项,用于控制迁移源端的选择策略。提供 2 种选择:
|
json_document_max_depth | 新增 | 新增租户级配置项,用于设置 JSON 文档中允许的最大嵌套层数,默认为 100,可修改嵌套层数上限至 1024。 |
log_storage_warning_trigger_percentage | 新增 | 新增集群级配置项,用于设置触发日志盘故障的写入性能百分比阈值。
|
sql_plan_management_mode | 新增 | 新增租户级配置项,用于控制是否开启 SPM 功能。默认为 Disable,表示关闭 SPM 功能。 此配置项与系统变量 optimizer_use_sql_plan_baselines 都可以控制 SPM 功能的开启,两者任一打开都可以开启 SPM 功能。推荐使用此配置项开启 SPM,可以避免重启业务应用或 ODP 才能使 SPM 生效的步骤。 |
系统变量变更
系统变量 | 变更类型 | 描述 |
---|---|---|
optimizer_features_enable | 默认值调整 |
|
视图变更
视图 | 变更类型 | 描述 |
---|---|---|
CDB/DBA_OB_RESTORE_PROGRESS | 新增列 | 新增 RECOVER_SCN 、RECOVER_SCN_DISPLAY 、RECOVER_PROGRESS 、TABLET_COUNT 、FINISH_TABLET_COUNT 、RESTORE_PROGRESS 6 列,用于展示物理恢复进度。 |
[G]V$OB_QUERY_RESPONSE_TIME_HISTOGRAM | 新增 | 各租户新增视图,用于展示不同类别的 SQL 响应时间直方图信息。 |
CDB_TAB_COL_STATISTICS | 视图内容变更 | 新版本不再展示索引表相关信息。 |
缺陷修复
-
修复通过 DDL 在表尾部加多个列 (>=2) 后,若
select count (指定列) from table [where];
中指定列不是最后加的列,如果有转储数据,查询结果可能出现比预期多的问题。 #1952 -
修复 OBKV 执行
check_and_upsert
操作时,CDC 异常处理导致 OMS 误订到 Delete 操作的问题。 -
修复 V4.2.1 BP5 之前的版本升级至 V4.2.1 BP5 及之后版本期间,可能会出现迁移、复制、Rebuild 失败的问题。
开源鸣谢
在此版本发布中,特别感谢社区伙伴的贡献:
感谢浪潮商用机器李松青 @DBres4Power 在ppc64le架构适配上的贡献。
1、 oceanbase-ce-4.2.1.7-107000162024060611.el7.aarch64.rpm 78.96MB
2、 oceanbase-ce-4.2.1.7-107000162024060611.el7.x86_64.rpm 96.44MB
3、 oceanbase-ce-4.2.1.7-107000162024060611.el8.aarch64.rpm 78.98MB
4、 oceanbase-ce-4.2.1.7-107000162024060611.el8.x86_64.rpm 96.5MB
5、 oceanbase-ce-4.2.1.7-107000162024060611.nonlse.el7.aarch64.rpm 78.98MB
6、 oceanbase-ce-4.2.1.7-107000162024060611.nonlse.el8.aarch64.rpm 79.05MB
7、 oceanbase-ce-cdc-4.2.1.7-107000022024053117.el7.aarch64.rpm 88.31MB
8、 oceanbase-ce-cdc-4.2.1.7-107000022024053117.el7.x86_64.rpm 105.89MB
9、 oceanbase-ce-cdc-4.2.1.7-107000022024053117.el8.aarch64.rpm 89.44MB
10、 oceanbase-ce-cdc-4.2.1.7-107000022024053117.el8.x86_64.rpm 107.07MB
11、 oceanbase-ce-libs-4.2.1.7-107000162024060611.el7.aarch64.rpm 143.91KB
12、 oceanbase-ce-libs-4.2.1.7-107000162024060611.el7.x86_64.rpm 154.61KB
13、 oceanbase-ce-libs-4.2.1.7-107000162024060611.el8.aarch64.rpm 150.75KB
14、 oceanbase-ce-libs-4.2.1.7-107000162024060611.el8.x86_64.rpm 159.33KB
15、 oceanbase-ce-libs-4.2.1.7-107000162024060611.nonlse.el7.aarch64.rpm 143.94KB
16、 oceanbase-ce-libs-4.2.1.7-107000162024060611.nonlse.el8.aarch64.rpm 150.78KB
17、 oceanbase-ce-sql-parser-4.2.1.7-107000162024060611.el7.aarch64.rpm 965.64KB
18、 oceanbase-ce-sql-parser-4.2.1.7-107000162024060611.el7.x86_64.rpm 993.48KB
19、 oceanbase-ce-sql-parser-4.2.1.7-107000162024060611.el8.aarch64.rpm 969.94KB
20、 oceanbase-ce-sql-parser-4.2.1.7-107000162024060611.el8.x86_64.rpm 997.78KB
21、 oceanbase-ce-sql-parser-4.2.1.7-107000162024060611.nonlse.el7.aarch64.rpm 966.1KB
22、 oceanbase-ce-sql-parser-4.2.1.7-107000162024060611.nonlse.el8.aarch64.rpm 970.4KB
23、 oceanbase-ce-utils-4.2.1.7-107000162024060611.el7.aarch64.rpm 67.48MB
24、 oceanbase-ce-utils-4.2.1.7-107000162024060611.el7.x86_64.rpm 82.85MB
25、 oceanbase-ce-utils-4.2.1.7-107000162024060611.el8.aarch64.rpm 67.53MB
26、 oceanbase-ce-utils-4.2.1.7-107000162024060611.el8.x86_64.rpm 82.91MB
27、 oceanbase-ce-utils-4.2.1.7-107000162024060611.nonlse.el7.aarch64.rpm 67.52MB
28、 oceanbase-ce-utils-4.2.1.7-107000162024060611.nonlse.el8.aarch64.rpm 67.53MB