云数据库 GAUSSDB-长查询和长事务调优
长查询和长事务调优
长查询或长事务将影响autovacuum对旧版本的清理,数据更新操作产生的旧版本将不能被及时清理。
数据访问时,需要遍历旧版本进行可见性判断,以便确定对当前查询快照可见的版本。长查询或长事务持续的时间越久,不能及时清理的旧版本就越多,对访问性能的影响也越大。极端场景下,例如考察基于较小数据量的索引点查吞吐的场景,旧版本增多将导致吞吐下降明显,性能受损可能在50%以上。
另外,不能及时清理旧版本,也会导致额外的存储空间占用,出现表膨胀、索引膨胀现象,数据访问时,额外的IO增加,也将会对性能产生一定影响。
Astore索引和表数据都采用非原地更新,更新索引键或非索引键,将产生索引旧版本和数据旧版本。Ustore索引采用非原地更新、数据采用原地更新,更新索引键将产生索引旧版本和数据旧版本,更新非索引键只产生数据旧版本。
长查询和长事务会Astore和Ustore的访问性能都会产生影响。
用户在业务实现上,应尽量避免长查询或长事务,可通过访问pg_stat_activity、pg_running_xacts观察系统中是否存在长查询或长事务,然后利用pg_cancel_backend(pid int)、pg_terminate_backend(pid int)函数取消掉长查询或长事务。
- GaussDB数据库云备份_华为GaussDB_高斯数据库云备份
- GaussDB数据库参数调优_GaussDB版本_高斯数据库参数调优
- GaussDB下载免费版_GaussDB怎么样_高斯数据库下载
- GaussDB案例_gaussdb java_高斯数据库案例_华为云
- GaussDB数据库概念_openGauss_华为高斯数据库概念
- 华为数据库日期函数_GaussDB安装_高斯数据库日期函数
- GaussDB学习_gaussdb教程_高斯数据库学习_华为云
- GaussDB性能怎么调_华为gaussdb_gaussdb性能_gaussdb学习
- 文档数据库服务DDS性能调优_MongoDB性能调优_华为云
- GaussDB性能_Gaussdb数据库性能_高斯数据库性能-华为云