導論章節簡要帶過後續所有敘事所依賴的主要資料庫概念。作者不期待讀者從中獲得太多新資訊,收錄它是為了讓整體圖像完整;對於從其他資料庫系統遷移過來的讀者,這份綜覽也特別有用。

本章涵蓋#

  • 資料組織——由外而內拆解 PostgreSQL 存放資料的層次:資料庫叢集與三個範本資料庫、描述一切物件的系統目錄、作為命名空間的綱要、決定實體佈局的表空間;接著進入「關聯」這個統稱,說明一個關聯如何在磁碟上被拆成多個分支(主分支、初始化分支、可用空間映射、可見性映射)與 1 GB 一段的檔案,最後以頁面(8 kB)為單位,並處理長列放不進單一頁面時的 TOAST 機制。
  • 行程與記憶體——PostgreSQL 的多行程架構:postmaster 如何衍生並監督其他行程、各背景行程(autovacuum、wal writer、checkpointer、writer 等)的職責,以及共享記憶體與緩衝快取的角色,最後點出故障時 RAM 資料全失、需要 WAL 來還原一致性。
  • 客戶端與主從協定——每個客戶端對應一個 backend 行程的代價、連線池為何必要,以及主從協定與認證的基本輪廓。

這三節建立的詞彙——分支、頁面、關聯、緩衝快取、WAL、backend——會貫穿本書其餘章節。若某個名詞在後面讀來陌生,回到這裡通常就能找到它的定義。