數據是企業重要的生產資料,一旦發生數據丟失,企業就會陷入困境:客戶資料、技術文件、財務賬目等客戶、交易、生產數據可能被破壞得面目全非。概括起來,數據丟失分三個層次:
? 邏輯錯誤:包括軟件bug、病毒攻擊、數據塊被破壞等。
? 物理損壞:包括服務器、磁盤損壞等。
? 自然災害:火災、地震等自然災害對數據中心的摧毀等。
為了應對數據丟失造成的損失,必須對數據進行災備保護,并且企業信息化程度越高,相關的數據災備恢復措施就越重要。
1.企業級數據庫災備體系
1.1. 災備定義
災備是指容災+備份:
? 備份的定義:指用戶為應用系統產生的重要數據(或者原有的重要數據信息)制作一份或者多份拷貝,以增強數據的安全。
? 容災的定義:指在相隔較遠的兩地(同城或者異地)建立兩套或多套功能相同的IT系統,互相之間可以進行健康狀態監視和功能切換。當一處系統因意外(天災、人禍)停止工作時,整個應用系統可以切換到另一處,使得該系統功能可以繼續正常工作。
1.1. 災備痛點
(1)備份痛點
? 備份失效
? 恢復速度慢
? 恢復有損
? 異地備份成本高
? 性價比低
(2)容災痛點
? 容災方案單一,無法滿足不同數據級別場景建設
? 缺少容災大盤能力,無法對容災鏈路監控、故障快速識別
? 災備不具備巡檢能力
? 故障恢復成本高,數據校驗、比對、訂正難以決策
? 多層容災工具切換難以協同
? 預案管控缺失,無法自動化運維
1.1. 落地方案
企業級數據庫災備體系要以業務需求為導向,基于多種因素考量選擇:RPO,RTO,成本,擴展性。還需要覆蓋數據庫災備的各種需求:災備環境搭建、災備數據同步、災備監控告警、災備演練、災備切換、數據校驗及修復等。
2.企業級數據庫災備核心產品
阿里云產品經多輪迭代具備比較完善的災備能力,使用以下核心產品可幫助企業應對不同場景及需求的數據庫災備方案設計。
? DBS:Database Backup Service,是為數據庫提供連續數據保護、低成本的備份服務。它可以為多種環境的數據提供強有力的保護,包括企業數據中心、其他云廠商。DBS提供數據備份和操作恢復的整體方案,具備實時增量備份、精確到秒級的數據恢復能力。在數據庫災備解決方案中可使用阿里云DBS實現各數據庫間的數據備份。
? DTS:Data Transmission Service,是阿里云提供的一種支持多種數據源之間數據交互的數據流服務。它提供了數據遷移、實時數據訂閱及數據實時同步等多種數據傳輸能力。在數據庫災備解決方案中,使用阿里云DTS可實現各數據庫間的數據遷移與實時同步,從而為數據庫災備打好最重要的基礎。
? HDM:Hybrid Cloud Database Management,是混合云數據庫管理平臺,幫助企業打通混合云數據庫架構,提供多環境統一管理、快速彈性、災備切換的能力。對于混合云災備場景下,使用阿里云HDM可便捷、快速的將本地IDC的數據同步至云上,并進行災備切換演練,故障發生時可通過HDM進行災備切換,保障數據庫的可用性。
在災備場景下,建議可搭配阿里云其他產品,例如DRDS、OSS,這些產品經阿里內外部驗證,均具有較高可靠性并可在災備場景下靈活應用。
3.典型應用場景
3.1.實時備份
當用戶對數據備份要求較高時,比如需要連續實時備份,且備份過程中不影響業務運行,此時可購置阿里云數據庫備份DBS服務,實現數據庫的熱備份,DBS可實現數據實時增量備份、精確到秒級的數據恢復能力。解決方案架構示例如下:
架構設計說明:
? 關鍵部件部署:
? 在用戶本地部署有兩套數據庫:生產數據庫和恢復庫,分別用于生產數據的存儲、故障后數據恢復。
? 在阿里云的兩個區域(例如:華南1、華北1)分別購置存儲服務,例如OSS對象存儲或者NAS文件存儲。
? 購置阿里云的DBS服務,用于用戶本地數據庫實時熱備份至云上存儲。
? 云下生產數據備份至云上:(可通過以下兩種方案中的任意一種將云下生產數據備份至云上)
? 用戶可在本地再部署一套存儲,將生產數據先備份至本地IDC的存儲,再通過本地IDC存儲災備拷貝至云上存儲。
? 用戶本地的生產數據庫與云上存儲之間通過阿里云DBS,將生產數據庫中的數據直接熱備份至云上兩個區域的存儲中。
? 數據恢復:
? 如果用戶本地IDC的生產數據庫發生故障,但本地IDC的存儲運行正常,可通過本地IDC的 存儲將數據恢復至本地IDC的恢復庫。
? 如果用戶本地IDC的生產數據庫和存儲均發生故障,或沒有部署本地存儲,則可通過DBS將云上存儲將數據恢復至本地恢復庫。
? 架構特點:
? 優點:技術要求高、一致性好,恢復時間短。
? 缺點:RTO隨著數據庫是來大小而變化。
? 應用場景:比較成熟的備份手段,適用于大部分的關系型數據庫。
3.2.異地多活
無論彈性容災上云、容災雙活/多活,還是兩地三中心,用戶都可以在企業級數據庫災備體系中找到解決方案,接下來以異地多活場景為例介紹解決方案。在用戶業務多點寫入場景下,如何具備數據級異地雙活,如何支持一鍵切換至另一個機房,實現靈活的彈上彈下和未來的線性擴展。
部署架構
? 應用配合進行單元化改造
? 通過 DTS 實現兩地/多地的數據庫的雙向同步,解決同城單點問題
? 通過 HDM 實現雙活/多活架構的監控和管理,并提供計劃內/計劃外切換的能力
? 雙數據中心支持讀寫分離,本地用戶就近讀取
4.新產品:數據庫備份DBS
數據庫備份DBS作為數據庫上云備份通道,與對象存儲OSS構建云數據庫備份解決方案,僅需5分鐘即可實現秒級RPO(Recovery Point Objective恢復點目標,通俗理解是當數據庫故障時,允許丟失多長時間數據,RPO越小越好)的實時備份。
數據庫備份DBS提供備份服務,在整個備份過程是無鎖的,不會阻塞數據庫上業務請求;用戶可以選擇整個實例備份,也可以選擇只備份一張表;一旦發生誤操作情況時,用戶都可以通過DBS進行任意時間點恢復,將整個實例或一張表的數據恢復到誤操作前1秒;DBS提供多種規格,可以滿足幾百MB到幾百GB的數據庫備份。
目前,數據庫備份DBS提供的備份系統時刻被海量用戶驗證,產品不僅擁有實時備份、秒級RPO的能力,同時還具備表級恢復能力,幫助用戶只恢復有價值的數據,RTO可降到分鐘級。
值得一提的是,實時備份經歷了歷年雙11的考驗,接下來,數據庫恢復DBS將會提供在線查詢能力,用戶無需等待數據恢復過程,備份任務完成后在查詢窗口上可以通過SQL立刻查詢備份數據,用戶還可以將查詢結果導出Excel、Word等通用格式,用于數據分析,也可以生成Insert、Replace語句,用于數據訂正