1、科技有國界如何做好大規模數據庫自主可控改造孔再華 民生銀行科技有國界目前,不僅互聯網巨頭互聯網巨頭谷歌、亞馬遜、微軟、Meta,流媒體巨頭網飛(Netflix)、Roku、Tiktok切斷了俄羅斯的傳播口徑,手機巨頭手機巨頭蘋果,PC巨頭惠普、戴爾、聯想,汽車巨頭寶馬、通用、沃爾沃等等都向俄羅斯斷供;向俄羅斯斷供;更深入的層面,包括Oracle、SAP這樣的企業云企業云服務商服務商,以及一切電子信息設備服務底層電子信息設備服務底層的芯片廠英特爾、AMD、臺積電等公司,都對都對俄羅斯采取限制行動。俄羅斯采取限制行動??萍脊炯娂娋砣攵窢?,雖然矛頭對準的不是中國,卻讓很多國人感到一種緊迫和??萍脊?/p>
2、司紛紛卷入斗爭,雖然矛頭對準的不是中國,卻讓很多國人感到一種緊迫和危機感機感科技公司原來是有國界的,當這一天發生在我們身上時,我們可否承受?科技公司原來是有國界的,當這一天發生在我們身上時,我們可否承受?25家科技巨頭“制裁”俄羅斯家科技巨頭“制裁”俄羅斯自主可控數據庫應用改造應用改造二二選型評估選型評估一一遷移上線遷移上線三三持續運維持續運維四四評估因素基本SQL語法兼容,ACID、備份恢復PITR,主從同步,JDBC、ODBC等開發支持滿足自身性能場景需求滿足自身性能場景需求,例如TP,AP,HTAP等性能場景?;A功能產品性能結合自身架構建設需求結合自身架構建設需求,評估產品架構方案。分
3、布分布式、集中式、云服務式、集中式、云服務等。高可用容災高可用容災能力;高可用方案,容災方案(成熟的方案、多活、主備、資源利用率問題);云原生支持(租戶隔離能力、風險隔離、資源利用效率提升)等。架構方案高可用方案代碼自主可控代碼自主可控,兼容支持國產軟硬件,操作系統等基礎設施。產品許可費用產品許可費用,IT硬件資源投入,技術人員投入等。產品應用透明度或改造難度等,對源數據庫的SQL兼容性(例如oracle兼容性),異構數據遷移等工具支持。信創支持遷移成本對于主流編程語言、開發框架、數據庫開發工具、運維工具的兼容兼容支持能力。在線維護在線維護類,如DDL,在線擴容(線性擴展的性能和便捷性),計算
4、節點均衡能力、數據按需均衡能力、集群在線擴容(縮容)能力等。生態兼容性可維護性周邊工具周邊工具等(用戶管理的便捷性,通過在線集中的線上管理能力;應用開發測試調試的工具,監控工具,問題溯源等),例如支持數據同步,兼容主流開發套件,遷移工具支持數據同步,兼容主流開發套件,遷移工具等。重要客戶,核心系統案例等,數據輸出的能力,時效性、穩定支持流式大數據分析??蛇\維性用戶案例論壇,用戶,熱度,成體系的培訓認證體系培訓認證體系,高校的合作,豐富的人才培養計劃和投入人才培養計劃和投入。廠商規模,研發團隊規模,研發投入,產品支持模式,成熟的支持體系,24*7全天后支持能力支持能力等。產品生態售后支持評估流程
5、制作評分表制作評分表設置評估項設置分值、權重設置否決條件測試調研測試調研基本功能、性能測試(POC)其他維度調研架構方案分析選型確認選型確認依據評分表評比過評審和招標等樣例:部分測試場景 性能WLM測試測試并發數并發數表數表數插入插入查詢查詢xxxxxxx10044萬5/25%(帶備機強同步)8萬5/40%(不帶備機)38萬/70%(sys 20%)熱點數據場景熱點數據場景并發數并發數TPSxxxxx646萬轉賬轉賬場景場景并發數并發數TPSxxxxx647萬12810萬TPCH測試測試容量容量導入時間導入時間模式模式CPU測試結果測試結果xxxxxxx10G13分鐘串行5%行存:18分鐘(無
6、主鍵索引:21分鐘)列存:4分鐘并行行存:50%列存:20%行存:5分鐘(Q1占時最長)列存:47秒(Q1占時最長)100G130分鐘串行5%行存:4.5小時列存:1小時樣例:部分測試場景 在線維護測試場景測試場景插入插入查詢查詢時長時長重組堵塞(150秒)堵塞(90秒)150秒統計分析不影響不影響幾秒增加索引堵塞不影響整個建索引過程,當前表30秒刪除索引不影響不影響瞬間增加列不影響連接斷開,10秒后恢復瞬間刪除列不影響連接斷開,10秒后恢復瞬間varchar字段縮短堵塞堵塞,連接斷開2分鐘varchar字段擴長不影響連接斷開,10秒后恢復瞬間char字段縮短堵塞堵塞3分鐘char字段擴長堵塞
7、堵塞3分鐘樣例:部分測試場景 功能測試場景測試場景測試結果測試結果主從切換主從數據同步,提供正常切換和異常切換方法。日志歸檔歸檔功能可用。支持PITR分區表支持分區表使用,操作維護方式和其他數據庫類似,沒有明顯差距。列存和壓縮行表壓縮,列存壓縮。列存并發插入和查詢不如行存。備份恢復支持PITR和增量備份。其他邏輯備份和物理備份以及恢復都沒有問題。支持遠程備份。WDR報告可以生產性能報告,內容有待豐富。監控具有豐富的性能視圖,基本與xxx原生監控相當??臻g回收測試可以通過vacuum實現空間的回收。臨時表測試支持臨時表。應用改造應用改造二二選型評估選型評估一一遷移上線遷移上線三三持續運維持續運維
8、四四應用改造工作量應用代碼量應用代碼量除了連接方式的變化,如何獲取全量需要改寫的sql代碼應用代碼應用代碼sql兼容性兼容性存儲過程存儲過程sql兼容性兼容性需要評估待遷移的sql在目標庫的兼容率.存儲過程存儲過程使用存儲過程的遷移會非常困難獲取全量sql的方法 sql代碼掃描工具 sql審核平臺記錄 sql全日志、JDBC全日志 網絡包解析 數據庫sql視圖抓取評估sql轉換量 sql轉換工具:連接數據庫驗證語法,部分sql自動轉換。獲取全量sql兼容率 使用函數不兼容:參考函數轉換列表 語法不兼容 參考轉換案例樣例:遷移轉換平臺評估評估SQL來源來源 評估方式多樣:應用后臺獲取去重、文本評
9、估、自定義語句評估 自動化配置SQL探針 未來將對接監控系統,豐富遷移評估數據源SQL轉換對比轉換對比轉換評估能力轉換評估能力整理遷移規則實時語法轉換,直接獲取轉換后SQL不合規SQL審核評估報告詳盡:可輔助評估遷移改造工作量數據對象遷移 對象遷移 列類型轉換 表、索引、視圖、序列、約束 觸發器、函數 存儲過程 數據遷移 類型轉換 MTK遷移工具遷移指導文檔 異構數據庫兼容列表 測試官方文檔全量類型、函數、sql語法等兼容性 相關規則持續改進sql轉換工具和mtk遷移工具 異構數據庫遷移指導 連接新數據庫 典型應用場景遷移 注意事項 新數據庫開發規范應用改造應用改造二二選型評估選型評估一一遷移
10、上線遷移上線三三持續運維持續運維四四遷移上線遷移方案遷移方案離線遷移、增量遷移、數據同步遷移方案遷移方案運行方案運行方案回退方案回退方案運行方案運行方案獨立運行、并行運行、主備運行回退方案回退方案應用回退、全量回退、增量回遷遷移方案 預遷移 在線遷移,不關注一致性,關注 業務測試驗證 正式遷移 離線遷移 全量遷移 增量遷移 基于時間、業務分片等 在線遷移 基于數據同步 數據比對 比對工具:全量、抽樣等運行方案 單獨運行 應用和數據庫回退比較麻煩 并行運行 分片遷移 共同運行,承載不同業務 回退方案涉及數據反寫 數據雙寫 承載全部任務,回退簡單 主備運行 數據反向同步 CDC 回退方案簡單回退方
11、案 應用回退方案 全量回退 單獨業務功能回退 數據庫回退方案 方案一:離線遷移全量數據 方案二:離線遷移增量數據 需要定義好增量規則,例如時間、業務分片等查詢過濾出增量數據 方案三:反向數據庫同步方案 需要CDC類工具支持應用改造應用改造二二選型評估選型評估一一遷移上線遷移上線三三持續運維持續運維四四持續運維自動化是對標準化的進一步提升,通過自動化腳本和程序,進一步控制標準化的執行,對安裝部署、監控預警、變更管理、上線審核和問題處理等標準流程全部實現自動化處理。自動化自動化數據庫產品逐漸收斂;流程固定;規范固定。標準化標準化集中化將各種自動化工具集中起來,通過統一的界面、接口、流程暴露給用戶。
12、集中化集中化智能化是未來數據庫運維的重要方向,需要借助人工智能來應對海量的數據庫和海量的運維指標,提高問題定位的準確性和預測能力,加快解決問題的速度。智能化智能化標準化 標準化運行環境 國產化硬件、虛擬機、容器云 標準化架構方案 高可用方案、逃生庫方案 標準化設置參數 系統參數、數據庫參數 標準化運維腳本 監控腳本、應急腳本自動化 部署 基于ansible的全自動部署框架。與工單系統聯動,實現了端到端的自動化全流程。自動判斷系統架構,全面支持新數據庫架構。自動部署高可用軟件,安裝后可自動進行高可用驗證。根據工單自動化建庫、建用戶、賦權,可生成高強度密碼直接發送給申請人,避免了DBA密碼泄露的風
13、險。自動化 運維自動化安裝自動化安裝虛擬機主從自動化安裝部署自啟動腳本虛擬機重啟驗證物理機主從自動化安裝自動化災備演練自動化災備演練物理機災備演練虛擬機災備演練升級:可升級到任意版本升級同時更新系統參數支持多套雙機集群并發升級HA高可用工具升級:參數更新:所有已上線的集群統一更新參數設置自動化升級、更新自動化升級、更新集中化 dbpaas集中化 dbpaasSEQUENCE的cache過小SEQUENCE即將到達上限SQL存在表掃SQL開銷比過大SQL語句沒有參數化SQL運行時間較長大表沒有索引表空間啟用文件系統緩存表沒有索引表容量過大表溢出率較高等待時間占比過高訪問的數據量過大分區表表分區一
14、個月內到達上限隔離級別過高活動日志使用量大禁止使用外鍵排序溢出率過高平均CPU消耗過多平均邏輯讀過大平均物理讀過大失效索引索引超過一年未使用有效讀比例低生產生產生產生產生產生產生產生產生產生產生產生產生產生產生產生產生產生產生產生產分布式監控引擎分布式監控引擎數據庫運行指標數據庫數據庫運行指標數據庫性能容量分析平臺性能容量分析平臺問題規則引擎問題規則引擎問題管理系統問題管理系統分析問題的工具發現和管理問題的工具100多個問題項覆蓋數據庫資源、性能、容量和安全性各個方面智能化 aiops實時計算引擎智能算法庫智能運維服務運維數據中臺集中監控AIOPS監控PAAS監控天眼日志元數據CMDBAIOP
15、S發現天旦系統應用調用鏈知識庫產品文檔AIOPS問題產品缺陷庫智能場景流計算數據采集異常檢測實時告警圖計算告警聚類根因分析大數據分析模型訓練相關性分析智能算法指標異常檢測關系異常檢測智能場景聚類容量預測日志異常檢測故障預測告警收斂根因定位系統畫像監控數據集中監控AIOPS監控PAAS監控天眼日志CMDBAIOPS發現天旦系統應用調用鏈產品文檔AIOPS問題產品缺陷庫智能場景實時告警基礎軟件深度運維DB2OracleKAFKAWeblogic自助服務定義指標定義關系定義服務自助推送MysqlRedisJVMTomcatOS 智能調度智能化監控告警優化監控告警優化使用動態閾值,提高告警準確性和相關意義產品深度智能運維產品深度智能運維異常檢測,根因分析,智能場景,故障預測,系統畫像,容量預測日志異常檢測日志異常檢測通過比對日志和知識庫來報告問題和分析解決問題智能告警分析智能告警分析實時分析相關告警,定位核心問題