天天看點

英方軟體 | Oracle異構資料庫遷移實踐

作者:英方雲
英方軟體 | Oracle異構資料庫遷移實踐

資料庫作為資訊化業務系統的底層核心,其國産化應用是關鍵領域資訊化系統安全、國家安全的重要保障。資料庫異構遷移是行業極具挑戰性的工作,技術門檻高,安全性要求強,且實施環境嚴苛,但異構遷移又是極其常見的應用場景。基于此英方軟體采用邏輯層面的語義級複制技術,探索出了一套成熟的異構資料庫遷移的方案,供大家參考交流。

NO.1 異構資料庫的遷移需求

影響業務安全的系統性風險較多,在特殊的行業,如電力能源、金融業等,防範系統性風險是資訊安全的底線,是以監管要求對于資料安全與業務連續性的标準遠高于其他行業。目前,為完成資訊技術國産化和自主可控程序的目标,許多機關開始按計劃分階段完成核心或邊緣系統的國産化遷移工作。以某機關為例,規劃在某時間段實作全量資料遷移到國産資料庫上,且全部子產品在國産化環境平穩運作。

英方軟體 | Oracle異構資料庫遷移實踐

在遷移實踐中,團隊需要完成某業務系統十幾套 Oracle 資料庫、資料總量高達近幾十 TB 資料的遷移,且須確定遷移完成後資料無錯漏、不丢失、嚴格一緻。

根據上述整體建設需求,遷移方案需要滿足的四點要求:

(1)須支撐存量資料的遷移,遷移過程中不影響或者盡量小地影響生産運作。

(2)支援存量資料遷移過程中,生産運作不中斷,持續産生的增量資料可以實時複制到國産信創資料庫上。

(3)支援存量資料與增量資料的遷移可無縫銜接,保證增量資料的遷移無錯漏。

(4)遷移後需要進行多層次的資料校驗以及資料修複方案,保證資料割接準确無誤。

NO.2 基于日志分析的遷移方案

在行業内,CDC是指識别和捕獲對資料庫中的資料所做的更改(包括資料或資料表的插入、更新、删除等),然後将這些更改按發生的順序完整記錄下來,并實時傳送到下遊流程或系統的過程。通過這種方式,CDC能夠向下遊資料庫提供高效、低延遲的資料傳輸。

目前,主流的CDC方案分為三種:

一是基于查詢的CDC,需要不斷的查詢源資料庫表中的資料,以擷取更改的資料記錄;其對生産影響較大。

二是基于觸發器的CDC,當業務系統執行插入、更新、删除等SQL時,以激活資料庫的觸發器,使其對資料記錄進行變更捕獲,并将資料儲存在一個臨時表中,最後将變更資料從臨時表中抽取出來。

三是基于日志的CDC,當資料庫表完成一個新的DML(insert、update、delete)操作後,資料庫都會将它實時記錄到日志檔案中;通過解析資料庫記錄檔的方式,可以将插入、更新、删除的資料更改操作進行捕獲,并發送給下遊系統。

結合目前主流的機構生産環境,以及日常大量的技術積累和實踐經驗,在上述CDC方案的比較過程中,基于日志方式的CDC是目前較為流行的實作方式,其實時性高、無侵入性,對生産影響小,且能将所有的更改捕獲實時同步到目标端。

NO.3 異構資料庫安全遷移

英方軟體基于資料庫日志分析與資料共享技術的 i2Stream 産品方案,可以滿足行業異構資料庫間的庫級、schema 級、Table 級的資料同步要求,實作結構化資料的提取、複制、可視化管理等,且能夠提供異構資料庫的資料比對,嚴格保障資料一緻性。

另外,此方案對生産影響小,并有安全的回退和保障機制,且英方軟體團隊支援到位,經驗豐富,在銀行、保險、證券等金融領域和醫保大資料平台有廣泛的成功應用經驗,也能夠快速響應項目的現場需求。

英方軟體 | Oracle異構資料庫遷移實踐

在某機構的Oracle資料庫遷移過程實踐中,項目團隊根據現有的生産環境,經過嚴謹的技術方案研讨和嚴苛的性能測試,制定了兩種穩定可行的部署方案:

方案一:在生産環境遷移部署架構

方案采用分離部署的架構,工作節點機器為 i2Stream 同步主機,通過遠端抽取和遠端裝載的模式進行資料遷移。其中資料源采集節點為 Oracle RAC 備節點,不對業務主庫産生影響。且針對不同源的資料庫,采用多台同步主機同時進行資料庫遷移,提高遷移效率。

方案二:在災備環境遷移部署架構

方案在災備環境同樣采用分離部署的架構,工作節點機器為 i2Stream 同步主機,通過遠端抽取和遠端裝載的模式進行資料遷移。其中,資料源采集節點為 Oracle ADG 備庫,不對業務主庫産生影響。且針對不同源的資料庫,采用多台同步主機同時進行資料庫遷移,提高遷移效率。

NO.4 遷移的挑戰與收獲

方案的規劃實施

Oracle-國産資料庫遷移的方案,需要技術人員精通技術和業務特點,在關鍵環節,可以快速定位表的業務邏輯,避免了技術路線上的失誤。遷移過程如下:

第一步:測試驗證

在正式生産環境遷移之前,團隊制定了嚴謹科學的遷移方案,并在測試環境和準生産環境,分别做了兩輪完整的測試,積累了大量測試資料和經驗,并優化了部分遷移措施,找到了可能存在的風險點并逐一解決。

第二步:方案優化

經過前兩輪的測試驗證,技術團隊牽頭制定了更加全面的生産環境資料庫遷移方案。該方案從産品部署架構、網絡需求,資料庫版本基線、同步主機的資源配置、遷移規則的劃分、性能參數配置、監控方案、資料校驗方案、業務驗證方案、業務切換方案等做了全面的設計;最後将此方案落地成遷移計劃表,分别指定相對子產品負責人,每項進度精确到分鐘,由英方項目經理每天進行日報彙報,每天中午進行遷移進度交流,及時協調處理遷移過程中出現的問題,此方案為國産化資料庫遷移上線提供了強有力的保障。

第三步:遷移實施

根據遷移實施的關鍵裡程碑時間規劃,在完成方案可行性論證、災備環境測試後正式啟動生産遷移,并在完成全量資料遷移及檢核後,系統正式割接上線。

正式遷移從規定日期的晚上某個時間點開始,同一源庫的遷移規則進行串行啟動,避免高負載影響生産業務,後續每天晚上同一時間點啟動遷移規則,總體遷移耗時天數和總遷移資料量在規劃内;後續對每個規則進行資料校驗工作。資料校驗使用多元度校驗,每天進行 count 比對校驗,然後在規定的間隔的天數進行一次全量全字段校驗,持續校驗到項目正式割接上線。

第四步:運維保障

資料校驗是遷移後的保障,是資料遷移必不可少的一環。根據現場遷移情況和業務邏輯,經過規劃後制定了三個次元的資料比較政策:

(1)每天業務低峰期做 count 比對,保證資料的及時性。

(2)在規劃天數内做一次全字段細緻比對,確定資料的完整性和準确性。

(3)使用者内部做關鍵表的 count 比對和關鍵字段的 sum 比對,確定核心業務資料的準确性。

經過多輪的完整資料比對和每天的 count 比對。最終一次性割接成功,兩端資料完全一緻。

NO.5 結束語

在新的國際形勢下,實作關鍵資訊基礎設施的自主可控,是電力電信、能源、金融等行業使用者擺脫外部技術枷鎖,實作安全發展的首要任務。在極端情況,能夠安全将資料和業務平滑遷移到國産環境下,是考驗團隊技術實力和響應能力的關鍵。英方軟體在異構資料庫遷移方面,擁有經驗豐富的技術服務團隊和應用實踐,且與國内主流的資料庫進行了适配,能夠在較短時間内幫助使用者實作異構庫的成功遷移。相關成功遷移案例,也入選了《中國-上合組織國家數字領域合作案例集(2023)》。