騰訊云黃平中:TDSQL助力政企核心系統(tǒng)國產(chǎn)化 | GDCC 最強音
全球分布式云大會是分布式云技術和商業(yè)交流的旗艦級平臺,2023全球分布式云大會·北京站將于6月28日-29日正式召開,本次大會來自騰訊云、火山引擎、阿里云、華為云、百度智能云、螞蟻集團等云計算數(shù)字科技服務商,以及中國電信、中國移動、中國聯(lián)通三大運營商等數(shù)技術專家,從分布式云行業(yè)前瞻性發(fā)展趨勢,底層云計算基礎設施突破性關鍵技術,分享高尖精技術和實踐案例,共同打造云計算領域的饕餮技術盛宴。騰訊云數(shù)據(jù)庫高級架構師黃平中分享了題為《TDSQL助力政企核心系統(tǒng)國產(chǎn)化》的精彩分享。

?TDSQL產(chǎn)品發(fā)展路徑
早期騰訊并未像較多傳統(tǒng)企業(yè)一樣選擇如Oracle類型的純商業(yè)數(shù)據(jù)庫,而是從一開始就選擇開源路線。2002年騰訊成立第一個數(shù)據(jù)庫團隊,2004年騰訊內部啟動分布式數(shù)據(jù)庫項目,并一直持續(xù)至2012年,在該階段中,騰訊持續(xù)進行內部應用驗證,其中包含內部的金融業(yè)務,如騰訊充值財付通及騰訊游戲等業(yè)務。
2014年微眾銀行上線,微眾銀行是一家互聯(lián)網(wǎng)銀行,全行采用了自主設計金融級高可用單元化架構,適配改造銀行核心系統(tǒng),為金融行業(yè)提供自主可控的核心技術力。
此后,騰訊持續(xù)深耕騰訊云開放生態(tài),實現(xiàn)成熟的自研數(shù)據(jù)庫在云端的產(chǎn)品化;超過10萬客戶持續(xù)打磨;助力金融企業(yè)的信息化建設和數(shù)字化轉型。在2015年、2016年騰訊云陸續(xù)推出公有云版本與私有云版本。
當前,騰訊具備豐富的金融級業(yè)務系統(tǒng)建設經(jīng)驗,有能力為客戶建設合規(guī)、安全、可靠的IT基礎,已有大量的成熟案例,其中包含了部委、國有銀行等政企行業(yè)標桿用戶。
TDSQL:企業(yè)級智能數(shù)據(jù)管理平臺

騰訊云數(shù)據(jù)庫致力于打造企業(yè)級數(shù)據(jù)管理平臺,從金融級高可靠高可用、領先的架構與性能、智能化運維管理及企業(yè)級數(shù)據(jù)安全合規(guī)等四方面賦能數(shù)字企業(yè),釋放數(shù)據(jù)生產(chǎn)力。
金融級的高可靠、高可用意味著數(shù)據(jù)庫作為一個重要的PaaS層軟件能持續(xù)支撐好業(yè)務,保障業(yè)務連續(xù)性,包含數(shù)據(jù)庫服務器故障或者出現(xiàn)機房級的故障時,避免出現(xiàn)數(shù)據(jù)丟失或業(yè)務停服太久等情況。騰訊云數(shù)據(jù)庫已做到99.999%以上可用性、支持跨區(qū)容災、兩地三中心、多地多中心、強同步復制、全局事務強一致性、故障自動恢復等,在高可靠、高可用方面滿足大型國有銀行核心系統(tǒng)建設需求。
第二是在架構和性能方面,在保障產(chǎn)品本身自主可控前提下,幫助產(chǎn)品實現(xiàn)較高性能的要求,今年三月,騰訊云TDSQL在TPC-C標準測試中性能達到每分鐘8.14億筆交易(tpmC),打破世界紀錄,成本僅為同類數(shù)據(jù)庫的1/3,在分布式計算、存儲及管控方面實現(xiàn)100%核心代碼自研;系列產(chǎn)品中包含首款全serverless架構云原生數(shù)據(jù)庫,多模多態(tài),滿足更多行業(yè)場景需求。
第三是智能化的運維管理,數(shù)據(jù)庫從傳統(tǒng)的集中式到目前的分布式后,服務器的臺數(shù)從一臺兩臺變成了十幾臺或幾十臺的集群模式,對于運維或對于管理的壓力是較大的,因此,騰訊云認為要通過智能化自動管理模式降低分布式場景的運維和管理操作中存在的壓力,通過界面化的智能運維管理平臺為用戶實現(xiàn)一站式的全集群運維管理服務,降低分布式數(shù)據(jù)庫的運維難度和使用門檻,提升用戶體驗。騰訊云TDSQL支持自動水平拆分、不停機彈性擴展、在線擴容業(yè)務無感知,支持全鏈路遷移及部署工具,助力業(yè)務平滑遷移,可視化操作和智能運維分析,可實現(xiàn)掌上一鍵管理,是企業(yè)去O的理想選擇。
最后是企業(yè)級數(shù)據(jù)管理中較為核心的訴求——數(shù)據(jù)的安全合規(guī)與安全保障。騰訊云TDSQL內核支持三權分立體系;數(shù)據(jù)庫防火墻、自動脫敏、強制訪問控制;支持物理獨享、加密、審計等系列安全方案;支持中國標準的商用密碼加密算法,符合等保3和密評相關要求。
TDSQL產(chǎn)品邏輯架構
DSQL產(chǎn)品邏輯架構拆分為三部分——工具區(qū)、運維區(qū)和業(yè)務區(qū),參照騰訊在公有云上運維經(jīng)驗而產(chǎn)生的架構設計。即通過一套運維管控平臺來實現(xiàn)大量節(jié)點服務器的納管操作,幫助最終用戶建立自身的數(shù)據(jù)庫 DBaaS,實現(xiàn)統(tǒng)一入口、統(tǒng)一納管,目前在純數(shù)據(jù)庫軟件部署的環(huán)境中已有一套管控管理多達 200+ 數(shù)據(jù)庫服務器節(jié)點數(shù)的生產(chǎn)案例。
業(yè)務區(qū)通過計算與存儲拆分的方式,提供多層次可擴展的高可用組件設計:計算層節(jié)點互相獨立且無狀態(tài)設計,便于在業(yè)務負載突增或故障情況下快速進行節(jié)點擴容提升集群的鏈接支撐能力;數(shù)據(jù)層通過騰訊自研的 MAR 并行多線程強同步機制實現(xiàn)數(shù)據(jù)的高可用管理,保障在故障時的數(shù)據(jù)不丟失,并且數(shù)據(jù)層也具備在線節(jié)點擴容能力,以應對負載提升的場景,保障在業(yè)務發(fā)展的過程中數(shù)據(jù)庫成本投入線性可控。業(yè)務層還具有列存引擎,通過內部同步機制對應用提供統(tǒng)一的數(shù)據(jù)視圖,增強了產(chǎn)品在部分 HTAP 場景中的復雜分析能力。

TDSQL:助力政企核心系統(tǒng)替換
在國產(chǎn)化整體建設過程中會遇到較多問題,如水平擴縮容、分布式事務處理、業(yè)務全鏈路分析、數(shù)據(jù)強一致性、產(chǎn)品組件全面高可用等問題。通過這些問題可以發(fā)現(xiàn),國產(chǎn)化建設有一個很重要的點:一旦做全?;慕ㄔO就將會面臨一個大風險——CPU用全新國產(chǎn)化芯片時要選擇的數(shù)據(jù)庫產(chǎn)品是一個全新的數(shù)據(jù)庫產(chǎn)品,這對于很多企業(yè)來說是一個大膽的舉動。
因此,騰訊云針對該場景完成分布式場景下數(shù)據(jù)強一致的雙軌運行方案。雙軌運行方案可一云多芯,支持通用X86與國產(chǎn)化資源混部;分布式實例可通過 MAR 技術實現(xiàn)數(shù)據(jù)副本集合內部出現(xiàn)故障后RPO為0;業(yè)務可以雙軌運行并按需切換,切換保障數(shù)據(jù)的強一致性,且整體架構設計不會影響當前經(jīng)典的兩地三中心架構。
此外,TDSQL高度兼容Oracle,核心系統(tǒng)替換主要有三個挑戰(zhàn):1.Oracle語法和功能需要做到全兼容;2.Oracle承載大量核心業(yè)務邏輯,遷移和適配代碼量巨大;3.業(yè)務適配和測試需要細致且全面。
騰訊云 TDSQL主要從三個層面兼容Oracle:1.內核兼容,內核與驅動層面做到Oracle語法兼容,做到應用層面不改代碼;2.性能兼容,復雜SQL與核心業(yè)務邏輯執(zhí)行性能對齊Oracle;3.習慣兼容,應用開發(fā)習慣于周邊工具做到兼容配合。


可以看出,騰訊云 TDSQL在某國有大行核心系統(tǒng)單元化架構的實現(xiàn),該系統(tǒng)替換的是大機+DB2,承載的客戶數(shù)約為億級別,整體的賬戶數(shù)達十億級別。這也是國內首家銀行做了核心全鏈路國產(chǎn)化的驗證,其中部分鏈路完全采用“TDSQL+中標麒麟+鯤鵬”全棧國產(chǎn)化建設的鏈路支撐。

另一個案例是攜手某保險共同攻堅核心系統(tǒng)深度去O,這是一套典型傳統(tǒng)企業(yè)的核心架構,其中約有近20T的數(shù)據(jù)庫,大量使用Oracle的特性,就是package,在代碼量上面約為300萬,共計16000多個對象。
在這之中,存儲過程涉及最長存儲過程約為幾萬行到十萬行左右,騰訊云在4個月中完成對應驗證(到目前為止),其應用代碼的修改僅僅只有不到2%的量級。通過代碼的兼容性測試可發(fā)現(xiàn),TDSQL與Oracle的兼容性,或者說經(jīng)過評估后需要做調整的代碼在該階段就已在5%以下了,可以說TDSQL能做到很高的Oracle兼容性,這也保障TDSQL在整個切換的過程中是平滑的遷移改造,最后更是將應用代碼的修改降低到2%以內的量級。
TDSQL產(chǎn)品特性小結

TDSQL在整體產(chǎn)品特性方面可以總結為4個維度。
1.世界領先的數(shù)據(jù)處理性能,TDSQL通過TPC-C官方極限性能測試,性能達到每分鐘8.14億筆交易(tpmC),排名世界第一,單位造價是友商的1/3,這也是得益于這些年來整體硬件軟件發(fā)展的成果。
2. 分布式數(shù)據(jù)庫能力,如高可靠、強一致、多中心多或、資源池化。
(1)高可用:數(shù)據(jù)庫各層組件均具備高可用特性,發(fā)生故障后自動切換,保障業(yè)務連續(xù)性。
(2)強一致:數(shù)據(jù)副本可以保障強一致性,在出現(xiàn)數(shù)據(jù)副本故障時,保障數(shù)據(jù)不丟失不錯亂。
(3)多中心多活:數(shù)據(jù)庫架構適配多中心多活架構,保障跨中心數(shù)據(jù)副本的安全性,中心級別故障自動切換。
(4)資源池化:支持資源池化管理,根據(jù)不同業(yè)務需求劃分對應規(guī)格實例,靈活管控物理資源投入。
3. 易用性——易開發(fā)、易運維、易遷移。從開發(fā)方面看,TDSQL優(yōu)勢在于符合SQL2016規(guī)范,兼容Oracle、MySQL、pg等開發(fā)習慣,便于上手。從運維方面看,TDSQL用圖形化監(jiān)控運維平臺,降低上手難度,而且其內核原理相通,可快速復用已有技術棧。從遷移方面看,DBbridge遷移工具支持Oracle、MySQL、DB2的兼容評估、遷移、校驗、回退。
TDSQL助力各行各業(yè)實現(xiàn)數(shù)據(jù)庫國產(chǎn)化
TDSQL案例墻:騰訊云在各個行業(yè)持續(xù)推動實現(xiàn)數(shù)據(jù)庫國產(chǎn)化,致力于協(xié)助政企客戶完成數(shù)據(jù)庫層重要鏈路國產(chǎn)化動作。
