GFS 備份保留政策說明
理想情況下,備份的目標在於能夠從任何過去的時間點恢復資料。最直接的方法是定期進行備份,通常是每日備份。然而,即使採用了節省空間的技術,例如永久增量備份、合成備份、資料壓縮和去重,這種做法仍需要無限的儲存容量,而幾乎沒有哪家公司能負擔得起。這就是為什麼會有備份保留政策,或稱備份輪替方案。
什麼是 GFS 備份保留政策?
GFS(祖父-父親-兒子)備份保留政策旨在達成兩個目標:最小化儲存空間並最大化還原點數量。簡而言之,我們的任務是利用最少的儲存空間來獲得最多的還原點。
目前存在多種複雜度與效率各異的備份輪替方案。最簡單的是"先入先出"(FIFO)。其運作原理很簡單:當備份媒體空間用盡時,最舊的備份將被刪除,並以新的備份取代其位置。FIFO 的優點在於其簡單性,而最大的缺點則是空間限制,因此採用 FIFO 方案時,您只能儲存有限數量的備份。 根據您備份虛擬機器的頻率以及備份儲存庫的大小,您可以覆蓋相對較短的時間區間。然而,這段時間區間會被完整地涵蓋。
所有公司都需要這種逐字逐句的備份覆蓋嗎?當然,有些機構(例如金融或政府機構)即使發生微小的資料遺失,也可能造成極其高昂的代價。沒有人會希望自己的銀行帳戶或社會保障金因資料中心的硬體故障而失效。 正因如此,這類組織才會投入巨資於備份儲存設備、磁帶歸檔系統等設施。
然而,多數企業對資料遺失的敏感度並未如此極端,因此可以實施一種備份輪替方案,無需將每日備份保留長達一年之久。此類備份保留政策能在資料可復原性與備份基礎設施成本之間取得合理的平衡。其中最常被採用的一種便是"祖父-父親-兒子"(GFS)輪替方案。
GFS 備份方案是如何運作的?
就像人類家庭一樣,兒子是最年輕的,父親年紀較大,而祖父則是最年長的。在備份的世界裡,兒子代表特定時間點的最新備份,祖父則代表最久遠的備份。通常,兒子是每日備份,父親是每週備份,祖父則是每月備份。不過,您可以在其中加入更多"親屬",例如每小時、每季或每年的備份。 舉例來說,Apple 的 macOS 內建了 Time Machine 備份工具,它採用 GFS 輪替方案,其中"兒子"代表每小時的作業系統備份,"祖父"則代表每個月的備份。

經典的 GFS 方案將每日備份稱為"兒子"、每週備份稱為"父親"、每月備份稱為"祖父"。週一進行的首次完整備份成為第一個"父親",隨後的每日增量備份則為"兒子"。該週的最後一次備份將成為下一個"父親"。
"兒子"備份採用先入先出(FIFO)輪替機制,因此最舊的"兒子"會被新的增量備份取代,並重複此循環。當月的最後一次備份則成為"祖父"。此後,"父親"備份也開始依照 FIFO 機制進行輪替。
在下圖中,您可以看到若我們在四月開始備份某台虛擬機器,截至六月底有哪些備份可用:藍色項目代表可用的備份,灰色項目則代表不可用的備份。

GFS 方案的缺點之一在於,較舊的備份會變得較不細緻。舉例來說,若您在 6 月第二週的星期一建立某個檔案,然後在隔天刪除它,該檔案便會永久遺失。
結論
根據貴組織的資料保護政策,您可以將每小時、每季或每年的備份加入 GFS 輪替方案中。搭配其他節省空間的技術,例如 永久增量備份透過合成備份、備份儲存庫的壓縮與去重技術,它能在無需在備份儲存基礎架構上投入巨額資金的情況下,提供合理的資料保護。