多維度分析數據庫復制與存儲復制的架構差異_第1頁
多維度分析數據庫復制與存儲復制的架構差異_第2頁
多維度分析數據庫復制與存儲復制的架構差異_第3頁
多維度分析數據庫復制與存儲復制的架構差異_第4頁
多維度分析數據庫復制與存儲復制的架構差異_第5頁
已閱讀5頁,還剩18頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

多維度分析數據庫復制與存儲復制的架構差異

企業容災架構中,所謂的數據復制技術主要是指能夠將結構化數據進行復制,從而保證數據具備雙副本或者多副本分散在不同數據中心的技術。具體實現方式多種多樣,有基于數據庫層面的數據復制技術、基于系統層面的數據復制技術、基于存儲虛擬化實現的數據復制技術、基于存儲底層實現的數據復制技術等。每一種技術都有其實現的前提條件,也有各自的技術特點和實現的不同效果。本議題以金融行業為例,幾位專家針對數據庫復制技術和存儲復制技術兩種主流復制技術的應用場景、差異、技術路線選型幾個關鍵認識取得共識。存儲層實現數據復制主流存儲復制技術是一種依托存儲網關虛擬化技術將相同物理存儲卷做鏡像聚合之后提供給上層應用提供數據存儲服務。虛擬化是服務器與存儲間的一個抽象層用以實現存儲底層的虛擬化以及高可用鏡像,它是物理存儲的邏輯表示方法。如圖1所示:圖1虛擬網關模式的數據復制技術原理解析:存儲網關形成遠距離集群系統統一對外提供存儲卷服務,存儲網關將底層的物理存儲卷創建為虛擬化鏡像卷,數據寫入由應用端經過存儲網關的時候由單一寫入變為鏡像雙寫,從而保障數據在兩個數據中心均有保留。主備切換:無需人工切換,存儲服務不中斷,暫時由雙寫變為單寫。依賴條件:主備數據中心高速SAN網絡。容災目標:存儲也有同步復制/異步復制模式,下文中也介紹了異步復制。技術優劣:優勢在于RPO&RTO的保障,劣勢在架構復雜以及無法避免邏輯錯誤。數據庫層實現數據復制數據庫復制技術是一種基于數據庫事務日志傳輸復制,通過解析源數據庫日志獲得數據變化,再將這些變化應用到目標數據庫,使源數據庫與目標數據庫同步,以達到多站點間數據庫容災目的。如圖2所示:圖2日志解析模式的數據復制技術原理解析:SQL在目標數據庫執行并生成相應事務日志,事務日志被傳輸到遠端備庫,備庫將事務日志進行解析并應用到備庫,最終保障目標數據庫和備庫的數據達到一致狀態。主備切換:手動命令切換,服務地址切換為備庫地址,切換模式有failover&switchover。依賴條件:主備數據中心TCP/IP三層互通可達。容災目標:有同步、異步、近似同步三種模式,通常采用近似同步或者異步。技術優劣:優勢在于簡單安全以及邏輯錯誤的避免,劣勢在于RTO和RPO不夠極致。基于數據庫和存儲的兩種數據復制技術,行業選型應該考慮什么樣的因素?首先,從原理上分析,基于數據庫的數據復制技術主要依靠事務日志的解析捕獲目標數據庫曾經發生的數據變化,然后通過這些事務的應用實現備庫和主庫增量行為的一致性,最終保障數據的復制保護?;诖鎯Φ臄祿椭萍夹g主要在存儲落盤過程中依靠寫行為的鏡像拆分,將單寫行為轉化為雙寫行為,以Block為單位將結果同時保存于兩個鏡像卷。從原理上來講,前者依靠的是應用層面的事務行為,其他非數據庫應用導致的IO行為顯然不會被復制,劣勢在于它的應用范圍受限,優勢在于它不會復制其他原因導致的無效或者錯誤數據;后者依靠的是存儲層的IO行為,它沒有能力識別應用層的有效性及正誤性,所有可以下沉為存儲IO的數據行為都會被復制,劣勢在于它的無識別能力可能會復制錯誤數據,優勢在于它的應用范圍較廣。其次,從其所依賴的環境條件來看,數據庫層的數據復制技術所依賴的環境很簡單,只需要主備庫之間網絡3層互通可達即可,帶寬無苛刻要求,容災站點之間的距離可近可遠。而基于存儲網關的數據復制技術所依賴的環境就比較復雜了,需要高速SAN網絡互通,而且帶寬及穩定性要求極高,容災站點之間的距離只能是短距離(一般來講百公里以內)。再次,從容災的技術指標RTO和RPO來講,基于數據庫的數據復制技術雖然有同步模式,但是一般都會選擇異步或者近似同步模式,容災切換的時候雖然有自動化工具,但是一般需要人為干預,所以在RTO和RPO上不可能做到理論上的極致;基于存儲網關的數據復制技術從底層鏡像綁定雙寫,同步復制和容災切換都屬自動化模式,從RTO和RPO上可以做到相對的極致。以上從原理機制、架構復雜性以及容災目標等三個方面闡述了兩種數據復制技術的優劣。因此無論是哪個行業在進行容災技術架構選型的時候可以根據自己追求的目標來進行衡量(例如:如果RTO和RPO是硬關鍵目標,那么選擇后者)。但是還有一句金玉良言“越復雜的架構越不安全,可以用簡單架構解決的問題,絕對不用復雜架構!”因此,如果我們看中的是安全和風險控制,那么選擇前者。最后,如果企業容災的成本不是問題,那么不妨考慮金融行業通常追求的兩地三中心架構,在這個架構當中將兩種技術各取其優勢融合使用。

社區專家主張趙海主編:本議題由民生銀行數據庫架構師孔再華、某農信資深技術經理雷智、江蘇農信存儲工程師康建國、成方金融信息技術服務有限公司高級工程師賀東杰分別主張議題下的相關關鍵點,幾位專家的主張在青島航空系統架構師戰學超、寧夏銀行技術經理陳明福及我的復議下,最終形成一定的共識供同行參考??自偃A民生銀行數據庫架構師:存儲復制技術和數據庫復制技術都是比較適用的災備建設手段。存儲復制方案具有較高的成熟穩定性和通用性,更偏向于標準化建設。而數據庫復制技術具有較好的性能和適應性、經濟性等,更適用于進階型選擇。金融行業數據中心的災備建設是非常重要的課題。在典型的兩地三中心建設中,通常同城雙中心要求RPO=0,所以是數據同步的狀態。而異地災備中心因為時延問題,數據是異步復制。數據庫復制技術和存儲復制技術是數據中心災備建設中常用的兩種方法。下面就這兩種方法圖解(圖3和圖4,圖片可點擊放大)說明其特點,作為災備建設方案的選擇依據。圖3存儲復制圖4數據庫復制在容災建設中,數據庫系統最重要,因為數據基本都是存放在數據庫中。數據庫里的重要文件主要包含數據文件和日志文件。因為性能的關系,數據庫的數據文件通常緩存在內存里,所以數據文件在磁盤上并不是最新的狀態。因此數據庫的恢復不僅需要數據文件,還需要日志文件來進行回放,從而達到最終的PITR一致性。數據庫的數據文件寫磁盤存在寫放大的問題。因為即便是改一條數據,對于數據文件來說,最小的IO是page或者extend級別(不同的數據庫可能有不同的術語)。因此實際磁盤的IO其實要比真正寫入的數據量要大很多。下面比較下在不同復制方案下的優缺點如表1。表1存儲復制與數據庫復制對比分析存儲復制是通過底層存儲廠商的容災技術,實時將主中心數據庫使用的文件實時復制到災備中心。這里包含數據文件和日志文件。災備存儲對于災備服務器是處于不可用的狀態,只有發生切換的情況下,才會掛載文件系統,然后啟動數據庫提供服務。因此在存儲復制方案里,災備中心的服務器處于冷備狀態。存儲復制技術成熟穩定,并且通用性強,適合任何一種數據庫或者是數據存儲需求。數據庫復制技術是通過在主備數據庫之間實時同步日志文件,備機時刻重做日志,達到和主庫保持數據一致的狀態。這里的日志復制是走以太網,對于硬件環境沒有強依賴。因為僅僅傳輸日志文件,所以網絡帶寬需求也比存儲復制少很多。數據庫備機還可以提供只讀的能力,為提高資源利用提供了更多可能性。如需切換,因為備機處于熱備狀態,因此RTO相對更小,實現分鐘級切換。從對比結果來看,存儲復制技術和數據庫復制技術都是比較適用的災備建設手段。存儲復制方案具有較高的成熟穩定性和通用性,更偏向于標準化建設。而數據庫復制技術具有較好的性能和適應性,經濟性等,更適用于進階型選擇。雷智某農信資深技術經理:基于數據庫的數據復制在細粒度數據容災、廣域云化容災領域仍然具有廣闊的應用前景;基于存儲的復制技術非常適合主機或業務系統多且復雜的環境。在企業級容災技術體系規劃實踐中,可以根據業務系統特點及業務連續性要求,單獨或組合使用。數據庫復制與存儲復制是當前業界常用的成熟容災技術。從目前業界發展來看,可以實現數據復制的技術多種多樣,有基于數據庫層面的數據復制技術,例如Oracle公司的ActiveDataGurad、IBM公司的DB2HADR等;有基于存儲虛擬化實現的數據復制技術,例如EMC公司VplexStretchCluster、IBM公司SVCSplitCluster、NetAPP公司MetroCluster等;也有基于存儲底層實現的數據復制技術,例如IBM公司的DS8000PPRC技術、EMC公司的SRDF技術、HP公司的CA技術等等。本文以OracleADG與華為HyperMetro為例,介紹數據庫與存儲復制的技術原理,并從實踐中需重點關注的多維度功能點進行對比分析。基于數據庫的數據復制技術基本概念基于數據庫的數據復制技術是對數據庫級別、表級別容災的基礎技術,通常采用日志復制功能,依靠本地和遠程主機間的日志歸檔與傳遞來實現兩端的數據一致。這種復制技術對系統的依賴性小,有很好的兼容性。缺點是本地復制軟件向遠端復制的是日志文件,這需要遠端應用程序重新執行和應用才能生產可用的備份數據。雖然該方式的RTO趨于零,但是支持的應用有限,而且日志傳輸速度受服務器性能和網絡帶寬的影響。前提條件容災站點之間需要有三層以太網連通,軟件層面需要數據庫的集群軟件模塊(OracleActiveDataGurard)或者是DB2pureScaleHADR。服務器層面需要至少兩套服務器系統分別部署于兩個數據中心。存儲層面需要兩套存儲空間分別部署于兩個站點作為主庫存儲和備庫存儲,他們之間互相獨立。復制原理對于主站點的數據庫來講,客戶端的數據更新請求首先要由日志寫入進程寫到重做日志當中,然后由數據寫進程再周期性地寫入數據文件當中。重做日志當中以SCN為數據庫獨有的時間戳序列來記錄所有數據庫更新的先后順序,從而保障數據庫恢復能夠按照正確的順序執行保障數據一致性和完整性。對于配置了ActiveDataGuard的數據庫讀寫的完成在以上所述過程中,日志寫進程在本地日志文件寫入過程的同時,日志傳輸進程會將緩存里面的重做日志通過ADG傳輸給災備站點的備庫實例,備庫實例的日志接收進程根據接收到的重做日志在備庫上重新執行數據庫的更新操作,從而保證主庫和備庫的事務性更新行為一致性,最終保證數據的一致。ADG在啟用前,必須保證備庫的數據保持與主庫的某一固定時間點的完整副本,需要靠傳統數據備份技術來實現備庫的初始數據復制。因為事務復制的本質是行為復制,那么行為作用的初始數據副本必須保持一致,才能保證最終兩副本的一致性。對于事務日志的復制技術,根據主庫IO周期特點可以分為絕對同步模式、近似同步模式和異步模式三種。絕對同步模式是指主庫的一個完整更新事務的結束既要包括主庫的重做日志落盤也要包括備庫的重做日志落盤,即備庫重做日志落盤之后返回給主庫,主庫才能執行下一個事務。近似同步模式是指在傳輸正常情況下保持與絕對同步模式一樣的模式,在網絡傳輸超時的情況下,剝離備庫重做日志的過程,需保證主庫重做日志落盤即可。異步模式是指主庫只保證本地重做日志落盤,并不會等待備庫重做日志落盤的返回信號。在后兩種模式下,當主備庫傳輸管理剝離之后,主庫會主動通過以下兩種方式探測并嘗試重新和備庫建立聯系。第一是歸檔日志進程會周期性ping備庫,成功情況下,會根據獲得的備庫控制文件的記錄的最后歸檔點和自己的歸檔日志決定向備庫推送哪些歸檔日志。第二是日志發送進程會在重做日志準備發生歸檔的時刻點主動去ping備庫日志接受進程并把剩余的重做條目發送給備庫接受進程。圖5OracleActiveDataGuard原理基于存儲系統的數據復制技術基本概念通過存儲系統內建的固件或操作系統、IP網絡或光纖通道等傳輸介質鏈接,將數據以同步或異步的方式復制到遠端,從而實現生產數據的災難保護。前提條件對于物理存儲底層的塊復制技術來講,對于環境要求主要在于存儲層。容災站點之間需要SAN環境聯通,主備兩端存儲一般要求型號一致并且配置有專門的存儲復制軟件以及相關許可。復制原理基于存儲的數據復制技術,對上層應用相對透明,主要是依靠存儲層兩個節點來完成源到目標的復制。當上層應用將數據寫入存儲的時候,那么由存儲將這一IO請求再以塊的方式傳輸到另外一個存儲上,從而保證存儲設備在塊級別上的一致性副本。對于同步復制來講,需要應用端的IO請求等到存儲層的復制完畢之后才會正常返回,對于異步復制來講,應用IO請求跟底層復制無關,無須等待復制結果。對于這種復制技術來講,兩個數據副本僅僅是數據內容相同,在上層沒有任何邏輯捆綁或者是虛擬化,所以上層應用也是完全隔離的兩套應用,一旦存儲發生故障,無論上層應用節點及網絡節點是否可用都需要發生站點級切換實現業務連續性,存儲本身不能隔離開應用發生切換?;诖鎯ο到y的數據復制,其核心是利用存儲自身磁盤之間的數據塊復制技術實現對生產數據的遠程拷貝,從而實現災難保護。當生產中心故障時,災備中心可直接提供運營支撐環境,保障業務連續;同時,利用災備中心的數據恢復生產中心的業務,滿足企業對RPO和RTO的要求。通常有兩種方式:同步復制如圖6和異步復制如圖7。同步復制可以做到主/備集群的數據同步更新,前端應用的I/O寫入主集群的存儲卷,主集群同時將寫I/O寫入備集群,備集群確認后,主集群才向前端返回“寫完成”信息。圖6基于存儲系統的數據復制技術(同步復制)異步復制是在應用系統的I/O寫入主集群的存儲卷后,主集群立即返回“寫完成”信息,前端應用可繼續進行其他的讀寫操作。同時,主集群利用自身機制將該I/O寫入備集群,實現異步的復制。圖7基于存儲系統的數據復制技術(異步復制)數據復制技術對比基于上述兩種數據復制技術原理,結合容災管理實踐中需關注的重點內容進行了對比分析如表2。表2數據復制技術對比總結基于數據庫與存儲的兩種數據復制技術各有其技術特點與應用場景,它們均在企業容災解決方案中廣泛使用?;跀祿斓臄祿椭剖菍祿煊涗浖墑e、表級別容災高可用的基礎技術,提高了系統應用的靈活性,可實現數據庫應用多活,主要應對數據庫邏輯錯誤,在細粒度數據容災、廣域云化容災領域仍然具有廣闊的應用前景?;诖鎯Φ膹椭萍夹g主要應對的是存儲等硬件級故障,不依賴于主機平臺和應用,不消耗主機資源;適用性強,非常適合主機或業務系統多且復雜的環境,實施難度??;雖然要求主備中心的存儲設備統一品牌,但能夠提供更好的硬件擴展性,對上層業務及主機端透明,維護成本也更低。在企業級容災技術體系規劃實踐中,可以根據業務系統特點及業務連續性要求,單獨或組合使用兩種數據復制技術??到▏K農信存儲工程師:數據庫復制技術適合單個系統進行容災設計時考慮,需要根據對應數據庫產品在數據復制方面的功能是否全面、應用是否可以進行對應改造等方面去進行考慮。目前企業數據中心使用的數據復制技術大概可分為五類,分別是:基于應用的復制、基于數據庫的復制、基于主機的復制、基于存儲網關的復制和基于存儲系統的復制。每種復制技術的實現原理不盡相同,其中基于數據庫的復制和基于存儲系統的復制是目前業界最流行的選擇,今天我們就來簡單分析比較一下這兩種復制技術的架構差異。兩種技術介紹數據庫復制技術是一種基于數據庫log(日志)的結構化數據復制技術,它通過解析源數據庫在線log或歸檔log獲得數據的增、刪、改變化,再將這些變化應用到目標數據庫,使源數據庫與目標數據庫同步,以達到多站點間數據庫可雙活甚至多活,實現業務連續可用和容災的目的。存儲復制技術是基于存儲磁盤陣列之間的直接鏡像,通過存儲系統內建的固件(Firmware)或操作系統,利用IP網絡或光纖通道等傳輸界面連結,將數據以同步或異步的方式復制到遠端。一般情況下是在等存儲品牌的同等型號或者接近型號的存儲系統控制器之間實現。目前各個主流品牌的高端存儲都具備成熟的數據復制功能。兩種技術差異數據庫復制技術包括物理復制和邏輯復制兩種方式。邏輯復制是利用數據庫的重做日志、歸檔日志,使用日志分析技術(logminer)將主本所在站點的日志傳輸到副本所在站點,通過重做SQL的方式實現數據復制。邏輯復制技術的典型代表是OracleGoldenGate軟件,它可以抽取分析主庫的日志中的SQL,然后傳輸應用到備庫中去。既支持同構數據庫之間復制,也支持異構數據庫之間復制。圖8數據庫日志復制物理復制不是基于SQLApply操作來完成復制,而是通過redolog日志或者歸檔日志在副本站點的同步或者異步持久化寫(dbrecover)來實現復制功能,同時副本站點的數據可以提供只讀功能。物理復制技術的典型代表有OracleDataGuard/OracleActiveDataGuard等,一般使用在同構數據庫之間。下面以比較常見的同城雙中心架構下OracleADG和存儲復制架構為例,比較兩種復制技術的架構主要差異。圖11OracleADG同城容災架構1)數據庫復制技術依靠數據庫軟件實現;存儲復制技術依靠存儲設備實現。2)數據庫復制技術主要使用IP協議在以太網中傳輸主備數據庫之間的日志數據;存儲復制技術通常是使用FC協議在SAN網絡中傳輸存儲復制數據。3)數據庫復制架構中的備庫可以提供對外查詢服務;存儲復制架構的備端存儲通常是不對外提供業務功能。4)數據庫復制架構中主庫抽取和傳輸日志需要消耗主端服務器一定資源,備端數據庫需要重新執行和應用日志才能生產可用的備份數據,也需要消耗備端主機和應用的開銷。相對而言,存儲復制架構不依賴于主機平臺和應用,不消耗主機資源,并且部署相對簡單和快速。兩種技術使用建議數據庫復制和存儲復制這兩種技術目前使用得都很廣泛,各個企業需要根據自身業務系統的重要性等級、系統規模,結合對業務恢復RPO、RTO的要求進行選擇。數據庫復制技術適合單個系統進行容災設計時考慮,需要根據對應數據庫產品在數據復制方面的功能是否全面、應用是否可以進行對應改造等方面去進行考慮。存儲復制技術的應用應該是當前選擇較多的一種復制技術,該方案不依賴于主機平臺和應用,適用性強,非常適合主機或業務系統多且復雜的環境,實施難度小??梢詫崿F遠距離容災,適合數據中心在設計同城容災或兩地三中心的整體容災架構時考慮使用。賀東杰成方金融信息技術服務有限公司高級工程師:實際生產系統在規劃過程中不止使用一種數據復制技術,往往多種數據復制結合,多管齊下從而達到更高數據保護效果。數據復制是保護數據安全的重要技術手段,數據復制技術有力的保障了業務數據完整性和有效性,從而使數據中心更為靈活地應對各種故障或災難場景。業界較為常見的數據復制技術包括基于主機的數據復制技術、基于應用和中間層的數據復制技術、基于數據庫的數據復制技術、基于存儲系統網關的數據復制技術和基于存儲介質的數據復制等。實際生產系統在規劃過程中不止使用一種數據復制技術,往往多種數據復制

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論