首批通过分布式安全可靠测评,为关键业务系统打造
default_table_merge_engine
更新时间:2026-03-17 20:40:59
说明
- 对于 OceanBase 数据库 V4.3.5 版本,该配置项从 V4.3.5 BP3 版本开始引入。
- 对于 OceanBase 数据库 V4.4.x 版本,该配置项从 V4.4.0 版本开始引入。
功能描述
default_table_merge_engine 配置项用于指定用户租户默认创建表的 merge_engine。
权限要求
查询配置项
sys租户和所有用户租户均可以使用SHOW PARAMETERS语句或视图GV$OB_PARAMETERS查询该配置项。修改配置项
sys租户和用户租户均可修改该配置项。
属性说明
| 属性 | 描述 |
|---|---|
| 参数类型 | String |
| 默认值 | partial_update |
| 取值范围 |
|
| 是否可修改 | 是,支持通过 ALTER SYSTEM SET 语句修改。 |
| 是否重启 OBServer 节点生效 | 否,设置后立即生效。 |
使用说明
配置项 default_table_merge_engine 只会影响用户租户创建主表的默认格式,meta 租户和 sys 租户不影响。并且只在建表语句中没有显示指定 merge_engine 的情况下生效,若用户显式指定了表的 merge_engine,最终表的 merge_engine 按用户指定格式进行解析。
该配置项可以设置为以下两个值:
default_table_merge_engine = partial_update:若建表语句中没有指定merge_engine,用户租户建表的merge_engine = partial_update。部分更新模式,每次更新仅记录修改的列,存储更省,适用于 OLTP 场景。default_table_merge_engine = delete_insert:若建表语句中没有指定merge_engine,用户租户建表的merge_engine = delete_insert。全列更新模式,每次更新写入完整行,支持 Delta SSTable Skip Index,查询时可对增量数据进行过滤下推,适用于 OLAP 场景。
配置示例
用户租户创建表默认
merge_engine = partial_update,在建表语句中自动添加merge_engine = partial_update。obclient> ALTER SYSTEM SET default_table_merge_engine = 'partial_update';用户租户创建表默认
merge_engine = delete_insert,在建表语句中自动添加merge_engine = delete_insert。obclient> ALTER SYSTEM SET default_table_merge_engine = 'delete_insert';