41.19. pg_largeobject

pg_largeobject 資料表保存那些標記著"大對像"的資料。 一個大對象是使用其建立時分配的 OID 標識的。 每個大對象都分解成足夠小的小段或者"頁面"以便以行的形式儲存在 pg_largeobject 裡。 每頁的資料定義為LOBLKSIZE(目前是BLCKSZ/4,或者通常是 2K 字元)。

Table 41-19. pg_largeobject 字串

名稱類型引用描述
loidoid 包含本頁的大對象的標識符
pagenoint4 本頁在其大對像資料中的頁碼 從零開始計算
databytea  儲存在大對像中的實際資料。 這些資料絕不會超過LOBLKSIZE字元,而且可能更少。

pg_largeobject 的每一行保存一個大對象的一個頁面, 從該對像內部的字元偏移(pageno * LOBLKSIZE)開始。 這種實現允許鬆散的儲存:頁面可以丟失,而且可以比LOBLKSIZE 字元少 — 即使它們不是對象的最後一頁。大對像內丟失的部分讀做零。