前一篇我們以2種資料庫復原策略──Flash Recovery Area與Data Guard,來探討資料庫系統復原策略在設計上的差異,與應用上的差異。除了復原策略,「備份」也是規畫資料庫災難回復機制必須考量的重點。
備份是資料庫系統基礎建設規畫必備的要素,以避免任何因天災、人為因素、或軟/硬體故障,所造成的資料庫服務停止。因此在思考整個資料庫服務系統的架構時,無論最後資料庫系統是採用何種架構,「備份規畫」是我們最應該優先思考的。接下來我們以Flash Recovery Area來探討備份媒體的選擇。
Flash Recovery Area搭配的儲存媒體十分有彈性,任何種類的儲存媒體、任何種類的檔案系統,或者是ASM叢集檔案系統(Automatic Storage Manager,一種Oracle資料庫的叢集檔案系統),只要是作業系統可辨識的儲存媒體,基本上就可以做為Flash Recovery Area的資料儲存空間。
在預算有限的情況下,當然選擇成本低廉的儲存媒體。在預算允許的前題下,資料庫管理師可以從下面幾個方向來思考儲存媒體的規畫,以強化資料庫備份策略的品質。
儲存空間大小的考量
Flash Recovery Area簡單的說,就是用來存放一組完整的資料庫檔案備份的儲存區域,因此Flash Recovery Area所需要的儲存空間就不能小於資料庫檔案的容量大小,因為還要加上預估資料庫成長的空間,以及其它功能會占用的空間(當然,若不需要這些功能,就可以再省點儲存空間)。
Flash Recovery Area的儲存空間通常位於磁碟系統,因此為了保險起見,建議再定期將Flash Recovery Area中的備份資料庫檔案,定期備份至磁帶保存,以備不時之需。
暫時或永久的考量
Flash Recovery Area可以在資料庫儲存媒體的災難發生時,藉由轉換(Switch)的功能,將資料庫目前所使用的儲存媒體轉換為Flash Recovery Area的儲存媒體,待原本使用的儲存媒體修復完成後,再轉換回原本所使用的儲存媒體上。
資料庫轉換的功能雖然可以縮短資料庫的停機時間,並不代表這樣的做法可以避免停機的產生,甚至當資料庫要做一次完整轉換動作時,資料庫系統的服務必須先停止,每一次完整的轉換即代表一次停機的產生。
因此探討儲存媒體等級之前,我們首先要思考的是:當災難發生,並且我們以Flash Recovery Area為儲存媒體時,如果原來使用的儲存媒體修復後,企業是否可以接受資料庫系統「再」一次停止服務,讓資料庫系統所使用的儲存空間由Flash Recovery Area轉換回原來所使用的儲存空間?如果答案為「否」,Flash Recovery Area儲存媒體此時所扮演的角色,就會是營運中(Production)的儲存媒體(一直到下次的災難發生)。因此在概念上,這樣的轉換即是一個永久性的轉換,而非暫時性的,待命中的儲存媒體在資料庫轉換的當下就變成營運中的儲存媒體。
如果你會遇到上述的狀況,備援的儲存媒體有可能成為營運中的儲存媒體,那麼備援儲存媒體的可用性等級,就必須比照原來營運中儲存媒體,以便在災難發生後,資料庫系統轉換為使用備援儲存媒體,並以此長期營運下去的話,其可用性仍可達到正常營運的要求。
效能及穩定性的考量
如果儲存媒體損毀後,企業允許資料庫短暫服務停止的話,原本的儲存媒體完成修護後,資料庫系統的儲存媒體就可以轉換回原本使用的儲存媒體之中,此時Flash Recovery Area的儲存媒體只是一個「暫時」性的儲存媒體,因此在儲存媒體的規劃上,可以評估服務中儲存媒體修復所需要的時間,而考慮採用低價位的儲存媒體來做為Flash Recovery Area的空間,降低企業成本的支出。
不過這樣一個「暫時性」的儲存空間規畫,還要是要考量災難發生後,資料庫系統採用這個備援儲存媒體的效能。就穩定性而言,雖然Flash Recovery Area 只是一個暫時的儲存空間,但它勢必有可能成為一個暫時性的營運資料庫,因此就一個營運資料庫儲存媒體的要求,在磁碟陣列硬體的規畫上,建議至少要有RAID 1或RAID 5等級的保護。
而在I/O效能的考量上,資料庫服務系統的I/O要求本來就比較高,不過站在一個備援儲存空間的立場,Flash Recovery Area平常是不需要太高的I/O效能。但是要思考的並不是平常的I/O效能,而是當它成為一個營運中的儲存媒體時,是不是可以負荷企業當下的I/O?硬碟的轉速、I/O的速度,以及是否需要在原本的架構中再加一層RAID 0?就必須依照企業平常資料庫I/O的負荷量,以及災難發生後可接受的I/O負荷來規畫。必要時,資料庫管理師可以調整Resource Manager中的設定,分散掉次要但I/O荷負大的工作,相對的這些被分散的工作效能就會受影響。
多組營運中資料庫的考量
由於Flash Recovery Area 是一個備援儲存媒體,因此平時的I/O負荷會比較少,I/O處理的負擔是在災難發生後,轉變成為營運中儲存媒體的時候。因此有多座資料庫服務系統,而這些資料庫服務系統各自使用的儲存媒體又不會「同時」損毀,這個情況下就可以考慮讓各別資料庫系統的Flash Recovery Area儲存區域,位於同一個儲存媒體。在I/O的評估上,則只需要考量單一個資料庫系統儲存媒體損毀轉換後所須要的最高I/O效能,而不需累加所有資料庫的I/O效能,儲存媒體等級要求較底,就可以減少企業成本的支出。
結論
在Flash Recovery Area儲存媒體的規畫上,企業可以先預想當災難發生並轉換儲存媒體後,資料庫系統應該達到什麼樣的服務品質等級,據此來決定選擇何種等級的儲存媒體。
在成本許可的情況下,備援儲存媒體最好是採用與營運中資料庫系統所使用的儲存媒體相同等級,以減少轉換所需的停機,但在成本的考量下,企業需依照災難發生後所期許的效能與穩定性來規畫,不過相對的,轉換回去時的停機就不可避免。而在多資料庫服務系統的環境中,企業可依照資料庫服務系統的數量,以及每座資料庫I/O荷負需求,規畫一組共用的Flash Recovery Area儲存空間,減少成本支出。
《作者簡介》杜奕鋒
艾群科技技術顧問,畢業於中央大學。
專精於商業流程設計、資料庫管理、T-SQL及軟體整合,通過OCP(8i/9i)、RHCE、SCSA、SCNA認證。曾任職於104人力銀行,負責eHRPortal及WorkFlow系統整合;曾任職於紡拓會,負責紡織業ERP系統導入;亦曾擔任臺灣護理學會系統整點導入顧問。並曾任教於關渡基督書院、永達技術學院。
熱門新聞
2025-01-15
2025-01-13
2025-01-14
2025-01-14
2025-01-13