共計(jì) 592 個(gè)字符,預(yù)計(jì)需要花費(fèi) 2 分鐘才能閱讀完成。
本篇內(nèi)容主要講解“怎么理解 PG 的物理存儲(chǔ)結(jié)構(gòu)、版本控制、空間回收”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓丸趣 TV 小編來帶大家學(xué)習(xí)“怎么理解 PG 的物理存儲(chǔ)結(jié)構(gòu)、版本控制、空間回收”吧!
PG 的物理存儲(chǔ)結(jié)構(gòu)
采用堆表的形式,區(qū)別于 mysql 的聚集索引組織表。
2. PG 的版本控制
實(shí)現(xiàn) MVCC 的方法有兩種:
1)寫數(shù)據(jù)時(shí),將舊數(shù)據(jù)移到一個(gè)單獨(dú)的地方,比如回滾段中,從回滾段把舊數(shù)據(jù)讀回來
2)寫數(shù)據(jù)時(shí),舊數(shù)據(jù)不刪除,而是插入新數(shù)據(jù),舊數(shù)據(jù)寫文件。
MySQL,Oracle 基本上是通過第一種方式操作,而 PostGres 則通過第二種操作,
針對(duì)第一種來說第二種的劣勢(shì):舊版本的數(shù)據(jù)塊需要清理,舊版本的數(shù)據(jù)因?yàn)樵谖募校L問可能會(huì)造成 I / O 及掃描更多的數(shù)據(jù)塊,
優(yōu)勢(shì):數(shù)據(jù)可以進(jìn)行很多更新,不必?fù)?dān)心沒有回滾段或者回滾段裝不下數(shù)據(jù),
事物回滾可以立即完成,無論事物進(jìn)行了多少操作,
針對(duì)多版本并發(fā)介紹幾個(gè)要的術(shù)語,表中的隱含字段:
oid tableoid ctid xmin xmax cmin cmax 后四個(gè)字段實(shí)現(xiàn)控制數(shù)據(jù)行是否對(duì)用戶可見
3. 空間回收
vacuum 整理空間
到此,相信大家對(duì)“怎么理解 PG 的物理存儲(chǔ)結(jié)構(gòu)、版本控制、空間回收”有了更深的了解,不妨來實(shí)際操作一番吧!這里是丸趣 TV 網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!