成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

PostgreSQL 主流壓縮表工具推薦

數據庫 PostgreSQL
出現表一直膨脹,該如何處理?開源社區的魅力就在于很多大神會提供很多工具來解決對應的問題,而本問題則有2種主要的工具:Pg_repack和Pgcompacttable。

PostgreSQL數據庫表在刪除數據后磁盤空間未釋放,該怎么辦?
主流的壓縮表工具有哪些?該如何選擇?

1、從空間未釋放說起

近期生產環境出現一張表占用size已達2T,且會定期刪除記錄,但是,空間一直未釋放,是何原因?

原因就在于vacuum,而vacuum怎么存儲,清理數據的可參考官方文檔進行查看。https://www.postgresql.org/docs/current/routine-vacuuming.html?。

出現表一直膨脹,該如何處理?開源社區的魅力就在于很多大神會提供很多工具來解決對應的問題,而本問題則有2種主要的工具:pg_repack和pgcompacttable。

2、工具對比

(1)pg_repack

pg_repack的處理方式是創建一張新表,再將歷史數據從原表中拷貝一份到新表。在拷貝過程中為了避免表被鎖定,會創建了一個額外的日志表來記錄原表的改動,并添加了一個涉及INSERT、UPDATE、DELETE操作的觸發器將變更記錄同步到日志表。當原始表中的數據全部導入到新表中,索引重建完畢以及日志表的改動全部完成后,pg_repack會用新表替換舊表,并將原舊表Drop掉。此工具過程簡單且靠譜,單需要額外的磁盤空間來報錯臨時創建的中間表。

(2)pgcompacttable

pgcompacttable利用了PostgreSQL的一個有趣特性:在執行INSERT和UPDATE操作時,會將所有新版本的行移到表最開始的可用空間。此為pgcompacttable工具的關鍵,因為如果從末端反向開始更新所有行,最終所有可用空間被這些行填充,并將表尾部的空間全部釋放以便讓定期vacuum進行truncate。這樣一來,pgcompacttable通過批量更新和vacuum強制移動,最終整個表被重新整理,達到壓縮的效果。此工具對磁盤空間要求低,且性能影響可控。

(3)對比

為了便于大家選擇工具,簡單做了一個對比說明供參考。


pg_repack

pgcompacttable

是否需要保證性能

是否移動表/索引

是否有足夠空間

壓縮速率是否高

小結:因很多場景下磁盤空間有限,因而經常選擇使用pgcompacttable較多,下面就記錄一下pgcompacttable的安裝及使用。

3、pgcompacttable部署及使用實例

(1)添加pgstattuple

pgcompacttable工具使用過程中需要依賴pgstattuple,因此需先添加pgstattuple。如果是源碼安裝的postgresql,則源碼里包含了postgresql-contrib,因此,進行編譯及安裝即可。

yum install perl-Time-HiRes perl-DBI perl-DBD-Pg -y
cd contrib/
make
make install

編譯完成后會產生幾個文件。

lib/pgstattuple.so。

share/extension/pgstattuple*。

之后在所需要使用的數據庫里添加pgstattuple。

psql -d testdb
testdb=# create extension if not exists pgstattuple;
CREATE EXTENSION

(2)部署pgcompacttable

下載依賴及安裝包后即可使用。

# yum install perl-Time-HiRes perl-DBI perl-DBD-Pg -y
# su - postgres
$ git clone https://github.com/dataegret/pgcompacttable.git

(3)pgcompacttable使用

pgcompacttable可以對database級別、schema級別、table級別進行壓縮。

./pgcompacttable -h localhost -U postgres -d testdb
./pgcompacttable -h localhost -U postgres -d testdb -n public
./pgcompacttable -h localhost -U postgres -d testdb -n public -t test_table1
責任編輯:姜華 來源: 今日頭條
相關推薦

2020-11-17 08:58:32

開源工具報表

2021-01-04 09:52:35

Git開源報表工具

2020-12-24 07:49:28

報表工具JimureportFinereport

2017-02-14 11:28:29

互聯網 報表

2021-02-07 09:00:00

PostgreSQL數據庫工具

2009-07-31 12:59:21

Java報表工具

2023-11-30 16:29:16

PostgreSQL數據庫Kubernetes

2017-08-17 14:57:57

大數據Python數據圖表工具

2017-02-14 20:03:34

報表工具敏捷BI定制化

2017-02-28 19:34:57

報表工具APP前端

2016-05-25 14:50:34

Linux文件壓縮工具

2017-09-14 10:45:47

PostgreSQL日志分析pgBadger

2012-09-17 11:12:24

網絡監控工具網絡監控

2024-01-29 00:10:00

2020-11-17 16:22:45

開源工具報表

2016-09-19 14:42:12

大數據SQLPig

2009-05-27 08:52:05

2020-07-28 23:18:41

Java開源IDE工具

2016-02-23 11:37:38

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 完全免费在线视频 | 国产精品一区二区三区在线 | 欧洲高清转码区一二区 | 成年人视频在线免费观看 | 国产精品入口麻豆www | 日本不卡高清视频 | 亚洲精品一区二区三区蜜桃久 | 久久精品国产久精国产 | 久久久久久久久中文字幕 | 国产精品日韩欧美一区二区三区 | av资源网站| 99精品久久久 | av在线一区二区三区 | 国产精品国产三级国产aⅴ原创 | 日韩精品一区二区三区 | 一区二区三区电影网 | 一级黄色片免费 | 国产成人精品一区二 | 在线免费国产视频 | 国产电影一区二区在线观看 | 久久亚洲一区 | 国产精品自拍啪啪 | 国产美女自拍视频 | 精品国产一区久久 | av色站| 色视频网站 | 久久久tv| 欧美午夜精品 | 午夜激情国产 | 亚洲综合大片69999 | 国产91久久精品一区二区 | 九九热精品视频 | 午夜电影在线播放 | 欧美在线一区二区视频 | 欧美成人免费在线视频 | 亚洲国产精品一区 | 国产真实精品久久二三区 | 久久久精品一区 | 日本午夜网 | 日本一区二区三区免费观看 | 久久久www成人免费无遮挡大片 |