云数据库 GAUSSDB-怎么配置回滚段大小
怎么配置回滚段大小
一般情况下回滚段大小的参数使用默认值即可。为了达到最佳性能,部分场景下可调整回滚段大小的相关参数,具体场景与设置方法如下。
- 保留给定时间内的历史版本数据。
当使用闪回或者支撑问题定位时,通常希望保留更多历史版本数据,此时需要修改undo_retention_time。undo_retention_time默认值是0,取值范围为 0~3天。
调整的推荐值为900s,需要注意的是,undo_retention_time的取值越大,对业务的影响除了Undo空间占用增多,也会造成数据空间膨胀,进一步影响数据扫描更新性能。当不使用闪回或者希望减少历史旧版本的磁盘空间占用时,需要将undo_retention_time调小来达到最佳性能。可以通过如下方法选择更适合自己业务模型的取值。
查询guc参数undo_space_limit_size,查询视图gs_stat_undo,获取近期undo空间平均增长速度avg_space_increse_speed与当前undo占用空间curr_used_undo_size,计算undo_retention_time的建议值new_val = 0.5 * (undo_space_limit_size * 0.8 - curr_used_undo_size) / avg_space_increse_speed。
- 保留给定空间大小的历史版本数据。
如果业务中存在长事务或大事务可能导致Undo空间膨胀时,需要将undo_space_limit_size调大,undo_space_limit_size默认值为256GB,取值范围为800MB~16TB。
在磁盘空间允许的条件下,推荐undo_space_limit_size设置翻倍。同时undo_space_limit_size的取值越大则占用磁盘空间越大,可能降低性能。如果查询gs_stat_undo()的curr_used_undo_size发现不存在Undo空间膨胀,可以恢复为原值。
调整undo_space_limit_size后可相应提高单事务平均占用undo空间undo_limit_size_per_transaction的取值,undo_limit_size_per_transaction取值范围为2MB~16TB,默认值为32GB。设置时建议undo_limit_size_per_transaction不超过undo_space_limit_size,即单事务Undo分配空间阈值不大于Undo总空间阈值。
为了更准确设置该参数来达到最佳性能,建议采用如下方式进行计算。
- undo_space_limit_size:查询视图gs_stat_undo,获取近期undo空间平均增长速度avg_space_increse_speed和curr_used_undo_size,计算undo_space_limit_size的建议值new_val = 86400 * 30 * avg_space_increse_speed + curr_used_undo_size。
- undo_limit_size_per_transaction:查询gs_stat_undo(),获取单事务最大占用undo空间max_xact_space(503.2版本中扩展该列),建议该参数调整后不小于new_val = 10 * max_xact_space。
- 历史版本的保留参数的调整优先级。
在undo_retention_time、undo_space_limit_size、undo_limit_size_per_transaction中,先触发的空间阈值会先进行约束限制。
例如:Undo强制回收阈值参数undo_space_limit_size设置为1GB,Undo旧版本保留时间undo_retention_time为900s,如果900s内产生的历史版本数据不足1GB*0.8,则按照900s进行回收限制;否则按照1GB*0.8进行回收限制。遇到该情况时,如果磁盘空闲空间充足,则上调undo_space_limit_size,如果磁盘空闲空间紧缺,则下调undo_retention_time。
- GaussDB变更_云数据库GaussDB变更_高斯数据库变更-华为云
- 云数据库 GaussDB(for MySQL)与RDS for MySQL的区别
- GaussDB查看表大小_GaussDB查询表空间_高斯数据库查看表大小-华为云
- GaussDB数据库扩容与缩容_Gaussdb扩容_华为gaussdb_gaussdb在线扩容
- 云硬盘快照是什么_云硬盘快照应用场景_快照和备份的区别
- 关系数据库管理系统_云数据库_数据库应用
- GaussDB培训_GaussDB教程_高斯数据库培训-华为云
- GaussDB数据库安全_GaussDB收费吗_高斯数据库安全
- GaussDB怎么样_华为云数据库_高斯数据库怎么样-华为云
- GaussDB告警_GaussDB数据库告警事件_高斯数据库告警事件_华为云