本文為您展示PolarDB PostgreSQL版(兼容Oracle)的堆表結(jié)構(gòu)圖。

堆表結(jié)構(gòu)
結(jié)構(gòu)說明
table files表文件,由一個或多個數(shù)據(jù)文件組成,文件數(shù)量與文件大小有關(guān),超過1 GB就會生成一個新的數(shù)據(jù)文件。
file數(shù)據(jù)文件,由多個數(shù)據(jù)塊組成。
page數(shù)據(jù)塊,由多個數(shù)據(jù)行組成。
page header數(shù)據(jù)塊頭,詳細(xì)信息請參見數(shù)據(jù)塊頭信息
tuple數(shù)據(jù)行。
tuple header數(shù)據(jù)行頭,詳細(xì)信息請參見數(shù)據(jù)行頭信息
表 1. 數(shù)據(jù)塊頭信息
結(jié)構(gòu)說明
pd_lsn最后修改這個塊的WAL的位點。
pd_checksum頁面校驗碼。
pd_flags標(biāo)志位。
pd_lower到空閑空間開頭的偏移量。
pd_upper到空閑空間結(jié)尾的偏移量。
pd_special到特殊空間開頭的偏移量。
pd_pagesize_version頁面大小和布局版本號信息。
pd_prune_xid頁面上最老未刪除的xmax,如果沒有則為0。
表 2. 數(shù)據(jù)行頭信息
結(jié)構(gòu)說明
t_xmin插入事務(wù)ID(XID)。
t_xmax刪除事務(wù)ID(XID)。
t_cid插入或刪除CID。
t_ctid當(dāng)前版本的頁面偏移量或者指向更新的版本。
t_infomask標(biāo)志位。
t_infomask2額外標(biāo)志位。
t_hoff到用戶數(shù)據(jù)的偏移量。
tuple data實際的數(shù)據(jù)。