Greenplum 调优--VACUUM系统表

1、VACUUM系统表原因

Greenplum是基于MVCC版本控制的,所有的delete并没有删除数据,而是将这一行数据标记为删除,

而且update其实就是delete加insert。所以,随着操作越来越多,表的大小也会越来越大。对于OLAP

应用来说,大部分表都是一次导入后不再修改,所以不会出现这个问题。

但是对于数据字典来说,就会随着时间表越来越大,其中的数据垃圾越来越多。

2、Greenplum的VACUUM工具

Greenplum的VACUUM工具,可以回收已经删除行占据的存储空间。

语法:

vacuum table;

vacuum full table;

1)简单的vacuum table只是简单的回收空间且令其可以再次使用。可以缓解表的增长。

这个命令执行的时候,其他操作仍可以对标的读写并发操作,没有请求排他锁。

2)vacuum full执行更广泛的处理,包括跨块移动行,把表压缩到最少的磁盘块数目存储。

这个命令执行的时候,需要加排他锁。

3)PostgreSQL中,此功能是自动执行。但是Greenplum中大部分的表是不需要vacuum的,

所以vacuum的autovacuum是关闭的。

4)执行vacuum后,最好对表上的索引进行重建

Greenplum 调优--VACUUM系统表的更多相关文章

  1. 【Spark调优】大表join大表,少数key导致数据倾斜解决方案

    [使用场景] 两个RDD进行join的时候,如果数据量都比较大,那么此时可以sample看下两个RDD中的key分布情况.如果出现数据倾斜,是因为其中某一个RDD中的少数几个key的数据量过大,而另一 ...

  2. 【Spark调优】小表join大表数据倾斜解决方案

    [使用场景] 对RDD使用join类操作,或者是在Spark SQL中使用join语句时,而且join操作中的一个RDD或表的数据量比较小(例如几百MB或者1~2GB),比较适用此方案. [解决方案] ...

  3. Greenplum 调优--数据倾斜排查(二)

    上次有个朋友咨询我一个GP数据倾斜的问题,他说查看gp_toolkit.gp_skew_coefficients表时花费了20-30分钟左右才出来结果,后来指导他分析原因并给出其他方案来查看数据倾斜. ...

  4. Greenplum 调优--数据分布法则 - 分布列与分区的选择

    分布列选择黄金法则 由于Greenplum是一个分布式的数据库,数据是分散存储在各个数据节点的,所以需要告诉Greenplum数据应该如何分布. 短板效应 当用户请求QUERY时,Greenplum会 ...

  5. Greenplum 调优--数据倾斜排查(一)

    对于分布式数据库来说,QUERY的运行效率取决于最慢的那个节点. 当数据出现倾斜时,某些节点的运算量可能比其他节点大.除了带来运行慢的问题,还有其他的问题,例如导致OOM,或者DISK FULL等问题 ...

  6. Greenplum 调优--查看子节点SQL运行状态

    摘自<Greenplum企业应用实战> 重点: 使用gp_dist_random函数,将查询下发到每个Segement 创建查看子节点SQL运行状态视图 1)创建v_active_sql视 ...

  7. Sybase数据库应用系统调优的五大领域

    Sybase数据库应用系统调优的五大领域 2011/3/14/13:49来源:慧聪it网 本 文以“某大型商业银行的网上银行系统”这一很具有典型意义的企业级大型Sybase数据库应用系统为例,涉及了数 ...

  8. Linux系统调优相关工具

    一.系统调优概述 系统的运行状况: CPU -> MEM -> DISK*-> NETWORK -> 应用程序调优 分析是否有瓶颈(依据当前应用需求) 调优(把错误的调正确) ...

  9. MySQL 优化之 Linux系统层面调优

    MySQL 一般运行于Linux系统中.对于MySQL的调优一般分为Linux操作系统层面的调优和MySQL层面的调优(当然还有架构层面.业务层面.应用程序层面的调优).操作系统主要是管理和分配硬件资 ...

随机推荐

  1. Python进阶:生成器--懒人版本的迭代器

    从容器.可迭代对象谈起 所有的容器都是可迭代的(iterable),迭代器提供了一个next方法.iter()返回一个迭代器,通过next()函数可以实现遍历. def is_iterable(par ...

  2. PAT(B) 1057 数零壹(Java)字符串

    题目链接:1057 数零壹 (20 point(s)) 题目描述 给定一串长度不超过 10​5​​ 的字符串,本题要求你将其中所有英文字母的序号(字母 a-z 对应序号 1-26,不分大小写)相加,得 ...

  3. 二十二、DMA驱动

    一.DMA简介 DMA(Direct Memory Access,直接内存存取),DMA传输将数据从一个地址空间复制到另外一个地址空间.传输过程由DMA控制器独立完成,它并没有拖延CPU的工作,可以让 ...

  4. 在vue中使用ElementUI

    完整引用ElementUI: 安装:在需要使用到的vue项目目录下,使用npm下载安装: npm/cnpm i element-ui -S/--save <!-- 引入样式 --> < ...

  5. Spring的事件监听ApplicationListener

    ApplicationListener是Spring事件机制的一部分,与抽象类ApplicationEvent类配合来完成ApplicationContext的事件机制. 如果容器中存在Applica ...

  6. Gogs + Drone 实现CI/CD(CD)

    前文已经实现CI部分,本文继续以Asp.Net Core实现CD部分. 创建gogs仓库 首先在gogs创建一个空项目drone-ci-demo,本地新建一个asp.net core项目,并且在与.c ...

  7. 实现CodeFirst自动数据迁移无需手动执行命令

    本主题假设您掌握了实体框架中 Code First 迁移的基本知识. 借助自动迁移功能,您无需对您所做的每一个更改都在程序包管理器控制台中手动Update-Database . 启用迁移 只需执行一次 ...

  8. c++中配置多个环境的格式

    例:环境1=$(QTDIR)\bin 环境2=$(PATH) 环境3=E:\软件\办公\Vimba_2.1\VimbaCPP\Bin\Win64 具体配置为 PATH=$(QTDIR)\bin%3b$ ...

  9. ffmpeg 播放器原理

    1  播放器过程 线程1 : readPackets-------> audio_packets队列   video packets 队列 线程2: decodeAudio && ...

  10. springboot启动流程(目录)

    springboot出现有段时间了,不过却一直没有怎么去更多地了解它.一方面是工作的原因,另一方面是原来觉得是否有这个必要,但要持续做java似乎最终逃不开要去了解它的命运.于是考虑花一段时间去学习一 ...