這是一個跟AP單位溝通的案例 |
依照底下的數據, 表格大小大約32GB, 裡頭可用空間應該佔了一半以上54% |
如果要把空間吐回給作業系統 |
那得透過vacuum full或者CTAS+DROP+RENAME 等方式來重整表格 |
依照Infra與AP部門間的默契, |
要怎麼處置該表得由貴單位自己決定,因為這是物件level的管理 |
DB Team 僅提供數據給你們參考 |
怎麼調出數據的語法如下 |
你們想看其他表格的數據只要替換掉表格名稱即可 |
它是透過掃表的方式來取得每一個資料頁內部的數據 |
所以會比較耗I/O, 但不會影響到一般的交易 |
除非碰到有session 進行table lock,才會受它運作時的影響 |
AP Leader 回問了autovacuum 的問題 |
因為他曾經幫我在客戶前說過話 |
我也就耐著性子回覆他所要的 |
Postgres 預設一定都會啟動autovacuum的功能 |
表格的可用空間54% |
就表示autovauum 是有在持續地收回deadtuple 的空間 |
但是如果要把空間歸還給作業系統 |
就得重整表格 |