中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用PG的pageinspect工具進行查看分析

發布時間:2022-01-04 10:36:49 來源:億速云 閱讀:310 作者:柒染 欄目:大數據

這期內容當中小編將會給大家帶來有關如何用PG的pageinspect工具進行查看分析,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

如果使用MYSQL 相對頁面的層次進行一些了解,估計你就的找大佬們的工具集合,并且為此膜拜大佬們,但PG并不需要這樣,PG自身自帶的pageinspect 工具,就可以讓你對頁面級別的層次來進行一個 “透心涼” 的查看和分析,并不在為此苦惱。

首先確認您是否擁有了 pageinspect 這個 extension ,下圖通過查看pg_extension這個表您可以確認,當前您的PG上已經安裝了這個extension.

如何用PG的pageinspect工具進行查看分析

如果沒有請 create extension pageinspect; 執行這條預計在您當前的數據塊中,如果還不行,請您確認您的PG 安裝與編譯是否正常。

select * from heap_page_items(get_raw_page('test',0)) order by lp_off desc;

如何用PG的pageinspect工具進行查看分析

通過上面的的圖,是可以推理出數據存儲是從頁尾開始的,數據的插入順序與步進之間的關系。

如何用PG的pageinspect工具進行查看分析

SELECT * from page_header(get_raw_page('test', 0));

如何用PG的pageinspect工具進行查看分析

lower = 72 , 通過這里可以獲知當前PG的表TEST 中曾經有過多少tumple(在這一刻),PG的每頁有28bytes 的頁頭,同時每個指針是4bytes ,(72 - 28)/4 = 11 ,證明當前的指針有11個。 

我們插入一條記錄

insert into test select generate_series(1,1), random()*100, random()*1, now();

如何用PG的pageinspect工具進行查看分析

從上圖可以看出,指針并未有變化,并通過查看數據和頁面的情況,看到新插入的記錄,使用了之前空出的 ctid (0,1) 位置,所以指針并不需要在重新分配。

我們繼續在插入兩條記錄,可以看出指針分配了4個字節,并且新的記錄也插入了未分配的空間,每行的偏移量是64bytes

如何用PG的pageinspect工具進行查看分析

我們刪除 ID > 5 的記錄 

如何用PG的pageinspect工具進行查看分析

然后 vacuum test表

如何用PG的pageinspect工具進行查看分析

通過命令我們也可以看到 vacuum 后的空間回收了,并且頁頭也重新標記了次頁面的容量,但指針是不在回收了。

如何用PG的pageinspect工具進行查看分析

通過上面幾個簡單的命令就可以,理解一些枯燥乏味的PG 某些原理,也是不錯的體驗。

如果還不理解上面的意思可以看下面這個圖(由于信息量太大,所以只能截斷成兩個圖)

如何用PG的pageinspect工具進行查看分析

如何用PG的pageinspect工具進行查看分析

這兩張圖拼在一起,呈現的就是一個完整的頁面上面28個字節頭,+ 每個指針  下面就是你存儲的每行數據,所以在此證明了頁面存儲的方式和邏輯中間的0 都是未占用的空間。

我想到此也就沒有什么人不在不理解 PG的頁面了,試問還有那個數據庫在不通過第三方的插件或軟件的情況下,能如此通透的展現一個頁面在你面前。

SELECT  get_raw_page::text FROM    get_raw_page('test', 0);

相關的頁面獲得的源代碼,將頁面的內容memcpy到buffer 然后給大家展現出來。

如何用PG的pageinspect工具進行查看分析

那如果有人問,你的數據到底占用了多少個頁面,我看看看怎么來通過某種方式來回答他。

1  一個頁面我有多少數據

2  一共有多少行數據

2 /1 約等于 多少頁面

我們看看上面的算法是不是可以應用到PG 中

如何用PG的pageinspect工具進行查看分析

如何用PG的pageinspect工具進行查看分析

如何用PG的pageinspect工具進行查看分析

從結果看,還是比較準確的。

上述就是小編為大家分享的如何用PG的pageinspect工具進行查看分析了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

pg
AI

和龙市| 化州市| 云霄县| 喜德县| 子洲县| 崇阳县| 甘南县| 紫云| 平远县| 涞源县| 孝义市| 绥德县| 翁源县| 台东县| 扶沟县| 错那县| 乾安县| 淅川县| 安塞县| 报价| 伊金霍洛旗| 贺州市| 女性| 石景山区| 莆田市| 松滋市| 赤峰市| 霍林郭勒市| 海阳市| 招远市| 万全县| 博客| 松潘县| 华容县| 曲周县| 望都县| 尼玛县| 萍乡市| 应用必备| 射洪县| 庆云县|