資料備份還原 - 第一原則 資料分層
聊聊 NAS 的一些心得,整理 Facebook 寫的草稿。
討論 NAS 這種「解決方案」之前,應該先好好想清楚,資料對於自己而言,到底有多重要?
NAS 對我來說核心價值就是 備份資料
與 還原資料
,所以對於「資料」的存放,過去從早期用光碟備份資料,到後來使用 NAS,這麼多年的經驗累積下來之後,我設計了一些原則,定義備份與還原資料的原則,如下圖,第一原則
:資料分層原則
(如圖)
第一原則:資料分層
Tier#1: 存放在使用設備的資料
使用設備 包含 PC / Laptop / Mobile 等設備,像是 iMac, MacBook, iPhone … etc,這些設備都是日常使用頻率很高,但幾年就會汰換,或者可能因為硬體故障、意外故障 … 等。
這些資料通常也都是溫度較高的,存取率比較多。當然這是我個人的原則,我知道很多人不是這樣。
Tier#2: 存放 T#1 備份的實體設備
通常是 T#1 的外接儲存設備,放在固定的位置,壽命略高於 T#1,但還是會故障、損毀。
外接儲存設備就是一個單一的外接硬碟,或者光碟,這也是早期最常備份資料的方法。通常會定期 (Monthly / Weekly) 備份一次。 Mac 的 TimeMachine 也是這樣的概念。
進階一點的外接儲存設備就是 NAS (Network Attached Storage)
,當資料數量到一定程度之後,才會採購的設備。
Tier#2.5: 備份 Tier#2
這是 T#2 的同地方的複本,像是把 T#2 再做一次備份的概念,地理位置是放在同一個地方 (空間),但是可以隨意帶到不同地理位置的方式。這個概念大概就是像另一顆硬碟,或者另一台 NAS or 容量足夠大的硬碟。
#T#1, #2 都會故障 / 壞掉 / 丟失,所以只有這兩個是不夠的。
Tier#3: 存放在非本地的複本
T#3 是 T#2 的距離延伸,只要地理位置不一樣就算了。
T#3 現在其實很多人在用,像是 Google Drive, DropBox, … 等 都算是。另外一種像是利用公有雲 AWS S3 / GCP Storage … 等也都是。如果把 T#2.5 帶到不一樣的地理位置,其實也可以成立,像是資料的異地備份。
NAS 本質還是資料儲存,所以基本上都專注在,怎麼 #保存資料 以及 #怎麼還原 這兩件事情。所以如果沒有一個資料存放的原則,買什麼設備其實都一樣,最後只要災難發生,資料就不見了,那就沒意義了。
設計原則: Durability
Tier 背後設計的概念是 Durability
,就是從時間上來看,資料可用以及正確的持久性。
做系統設計的人,可能會聯想到這張圖 (出自 AWS Summit Series 2016 - Big Data Architectural Patterns and Best Practices on AWS),這其實是我背後的底層邏輯:
下一篇,整理 第二原則。