PG的物理儲存結構、版本控制、空間回收

caohongfeng666發表於2019-06-06
  1. PG的物理儲存結構


     採用堆表的形式,區別於mysql的聚集索引組織表。


     2. PG的版本控制


實現MVCC的方法有兩種:

1)寫資料時,將舊資料移到一個單獨的地方,比如回滾段中,從回滾段把舊資料讀回來

2)寫資料時,舊資料不刪除,而是插入新資料,舊資料寫檔案。


MySQL,Oracle基本上是透過第一種方式操作,而PostGres則透過第二種操作,

針對第一種來說第二種的劣勢:舊版本的資料塊需要清理,舊版本的資料因為在檔案中,訪問可能會造成I/O及掃描更多的資料塊,


優勢:資料可以進行很多更新,不必擔心沒有回滾段或者回滾段裝不下資料,

         事物回滾可以立即完成,無論事物進行了多少操作,


針對多版本併發介紹幾個要的術語, 表中的隱含欄位:

oid tableoid ctid xmin xmax cmin cmax 後四個欄位實現控制資料行是否對使用者可見


        

    

     3. 空間回收


         vacuum整理空間


       

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25380026/viewspace-2646895/,如需轉載,請註明出處,否則將追究法律責任。

相關文章