登录 注册
当前位置:主页 > 资源下载 > 48 > Greenplum 提供的用于释放AO表的SHELL脚本

Greenplum 提供的用于释放AO表的SHELL脚本

  • 更新:2024-07-07 18:57:02
  • 大小:31KB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:PostgreSQL - 数据库
  • 格式:ZIP

资源介绍

Greenplum支持行储存(HEAP储存)与列(append-only)储存,对于AO存储,虽然是appendonly,但实际上GP是支持DELETE和UPDATE的,被删除或更新的行,通过BITMAP来标记删除与修改。AO存储是块级组织,当一个块内的数据大部分都被删除或更新掉时,扫描它浪费的成本实际上是很高的。而PostgreSQL是通过HOT技术以及autovacuum来避免或减少垃圾的。但是Greenplum没有自动回收的worker进程,所以需要人为的触发。接下来就分析AO表与HEAP表的问题以及如何解答,执行空间的释放有3中方法分别是: 1、执行VACUUM。(当膨胀率大于gp_appendonly_compaction_threshold参数时),为共享锁。 2、执行VACUUM FULL。(不管gp_appendonly_compaction_threshold参数的设置,都会回收垃圾空间。),为DDL锁,需要慎用这个命令,会把CPU与IO沾满。 3、执行重分布。(不管gp_appendonly_compaction_threshold参数,都会回收垃圾空间。),为DDL锁