Greenplum 調優--VACUUM系統表


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后,最好對表上的索引進行重建


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM