開發與維運

守護你的數據庫:數據庫容災方案介紹(下)——阿里雲 MVP張新銘

【MVP時間】線上峰會,一鍵收藏

《數據庫容災方案介紹》精彩直播

查看文章,數據庫容災方案介紹(上)

(四)PolarDB高可用架構

除了以上一些傳統數據庫,現在一些比較流行的雲上數據庫也有自己的容災技術。PolarDB是阿里雲上一種計算和儲存分離架構的數據庫,其數據是多份、分佈式存儲的,其SQL節點是通過網絡(RDMA)的方式來訪問這些數據,其計算節點也做了多份冗餘,這樣子就從計算節點和存儲節點提供了雙重高可用保障,如下圖所示。
image.png

(五)OceanBase高可用架構

OceanBase是螞蟻金服自研的一個分佈式架構的數據庫,其數據同時存在於多個zone,也就是有了多個副本,所有數據通過分佈式協議抵達多個節點之間,少數副本故障不影響數據可用性,所以其RPO是0,且RTO也非常的小,在遇到數據風險的時候恢復也相當迅速,基本上是秒級恢復時間。其架構如下圖所示。
image.png

三、數據安全事故案例

我們需要注意的是,就算我們對數據庫做了備份或備庫,並不代表就一定不會出現問題了,高可用方案中也會存在一些陷阱,比如以下所介紹的幾個問題。

(1)多個容災節點之間存在物理依賴

如果在進行容災技術體系建設的時候做了多個備份、多個備庫,但是沒有考慮到進行節點之間的物理隔離,比如多個備份存在同一臺物理機上,那麼當這臺物理機出問題了之後,多個備份都無法使用,就會造成數據丟失。

(2)備份/備庫平時很少用到,出現問題難以發現

有時候我們做了相應的備份/備庫,但是很少用到,也沒有定期進行相應的檢查,在用的時候才發現出了問題,比如備庫配置不當,備庫失效,直到切換到備庫的時候才發現問題。

(3)人為失誤導致的問題

有時候人為導致的失誤是容災體系中最大的風險存在。比如運維或開發人員在進行日常維護時誤操作刪除生產環境的表,造成重大的業務影響;又比如工作人員在進行某些的操作的時候連到了多個終端,本來應該在測試環境執行的命令錯誤的到主庫執行,引起故障;又比如運維人員在進行庫的維護的時候操作順序不當,本來應該先備份數據再進行操作,卻先進行了刪除操作,引起故障。

四、數據庫容災體系建設

數據庫容災體系的建設是一個系統工程,我們除了從架構層面,還要從運維層面、監控層面去考慮,同時也要從制度上面去保障,比如企業內部不同崗位權限的定位、權限的隔離等,還要從業務層面重視這個問題,要定時進行演練,包括容災演練、恢復演練等,如下圖所示是張新銘老師分享的數據庫容災體系建設中的主要注意點。只有全方位重視數據庫容災體系的建設,才能真正做好數據庫容災體系的建設。

image.png

關鍵詞:數據庫、數據庫容災、數據安全、數據備份、數據恢復

《數據庫容災方案介紹》精彩直播

查看文章,數據庫容災方案介紹(上)

Leave a Reply

Your email address will not be published. Required fields are marked *