TDSQL進入第四階段。
作者|趙健
作為三大基礎軟件之一,國產數據庫一直是備受關注的領域。
【資料圖】
3月30日,騰訊云數據庫TDSQL宣布了最新進展:在國際事務處理性能委員會(TPC,Transaction Processing Performance Council)的TPC-C基準測試中打破了世界紀錄。
TPC-C是全球數據庫廠商公認的性能評價標準,是OLTP數據庫(交易型數據庫)里唯一的國際權威榜單,被譽為數據庫領域的“奧林匹克”。它模擬超大型高并發的極值場景,同時有一套嚴格的審計流程和標準,對數據庫系統的軟硬件協同能力要求極高。
此前,該基準測試的世界紀錄保持者為螞蟻集團旗下的自研數據庫OceanBase。
消息宣布之后,「甲子光年」也受邀采訪了騰訊云數據庫技術負責人潘安群、騰訊云數據庫總經理王義成,來了解下騰訊云數據庫本次打榜背后的故事。
刷新世界紀錄,對騰訊云數據庫意味著什么?
1.新的世界紀錄如何誕生?
TPC-C模擬的是電商交易系統,核心指標有兩個:tpmC(每分鐘的處理事務數)與性價比。騰訊云數據庫技術負責人潘安群介紹,本次打榜有四個亮點。
一是tpmC成績刷新世界紀錄,每分鐘交易量達到8.14億筆。
每分鐘8.14億是什么概念?以中國工商銀行、中國農業銀行、中國銀行、中國建設銀行四大行為例,業務系統峰值預計在4小時內產生大約20億筆交易。如果換算成每分鐘,只有800萬左右,離8.14億還有很大的差距。換句話說,這個性能足以支撐中國所有大規模應用性能的要求。
二是顯著的成本優勢,單筆交易的價格為1.27元,接近同類產品的1/3。
潘安群提到了降低價格的三個方式:首先,TDSQL通過軟件優化提升單機性能,降低硬件成本;其次,使用公有云的彈性資源進一步降低成本;同時,公有云上系統自動化和規模化的運營也能幫助降低成本。
單純的實現高性能并不難,只需要不停地疊加機器就好了,難的是保證高性能的同時也能降低成本。TDSQL這一次同時實現了兩個指標的世界第一。
三是在超大規模集群下的性能穩定性。
騰訊云這次構建了將近2700臺機器(包含1650臺物理機、1000臺虛擬機),在此基礎上持續運行8個小時,tpmC的波動率一直處在0.2%以下,遠遠低于官方要求的2%,保障了超過8600億總事務、4萬億條訂單詳細信息不出錯。
潘安群介紹道,用200臺機器測試,數據不會出任何問題;但如果擴展到一兩千臺機器,理論上會發現各種各樣的硬件問題。按照經驗,在整個騰訊集團百萬臺服務器里,每2000臺服務器持續工作8小時,就會產生1~2臺的故障率。
打榜時,騰訊云數據庫團隊一共做了12輪8小時的壓力測試,只有最后三輪沒有出現故障,前面都在做優化,“最后幾天攻堅時上廁所都是跑著去的”,并最終實現了0.2%的波動率。
潘安群表示:“這是一個非常震撼的數據,因為公開資料中其他數據庫廠商大概能做到1%左右。這也體現了這么多年騰訊云數據庫在產品架構、分布式、水平擴展、資源調度方面的優勢。”
最后一點是在超大規模集群下的高可用和分布式容災能力。
1個小時的容災場景測試,進行了2次隨機斷電物理機器和1次destroy騰訊云實例的模擬故障,模擬故障之后,18秒完成HA(高可用性)切換,大盤整體影響微乎其微。
HA切換是指當數據庫系統出現故障時,可以在很短時間內自動切換到備份系統,以保證業務的正常運行。金融行業對數據庫的要求一般是分鐘級切換,如果一家全國性銀行故障時間超過30分鐘,銀行的技術負責人必須去銀保監會解釋原因。
騰訊云數據庫總經理王義成表示:“對于金融機構的核心系統故障切換,一般公有云廠商對外承諾的時間是30秒。對比而言,騰訊云數據庫的18秒,意味著完全滿足中國現階段金融級核心系統災難恢復管理規范的要求。”
2.為什么要現在打榜?
騰訊云數據庫為什么選擇在這個時間點打榜?要回答這個問題,首先要了解下騰訊云數據庫TDSQL的發展歷程。
騰訊云數據庫技術負責人潘安群將TDSQL總結為三個階段。
第一階段為支撐騰訊自身業務。TDSQL誕生于2007年,彼時騰訊業務爆發式增長,開源的MySQL已經越來越捉襟見肘,服務于計費業務、增值業務,定位于金融場景的TDSQL應運而生。
當時潘安群對團隊提出的要求是“安心喝咖啡”,業務上線時所有DBA(數據庫管理員)和開發人員都不用因為解決擴容等問題而手忙腳亂。同時,團隊也支撐了Q幣業務,做到銀行級的賬戶系統,每一分錢都不出錯。
2009年,騰訊推出開放平臺,騰訊云對外提供服務,TDSQL也走出內部,服務產業互聯網,開始進入第二階段。
此后,TDSQL先后做了微眾銀行、第七次全國人口普查政務系統、數字廣東、騰訊會議、99公益等標桿項目,逐漸形成銀行級高可用、極致彈性伸縮、雙引擎計算、智能運營等能力。
2014-2020年,從第一家銀行客戶微眾銀行開始,TDSQL進入第三階段——攻堅金融標桿客戶。
互聯網公司跨界到金融場景是一件非常困難的事情,TDSQL秉承從周邊系統到核心系統、從小銀行到大銀行逐步遞進的策略。“我們不希望一口吃成大胖子,最后可能自己吃不下。”潘安群表示。
潘安群現在還記得當年服務微眾銀行的場景。“第一次溝通時,我們提出了基于互聯網的完整分布式架構方案,客戶的CTO跟我們爭論了將近兩個小時,誰也說服不了誰,最后留下一句’你們不懂銀行!‘最后通過不斷地互相了解,終于才達成了一致的方案。”
2018年,張家港農商銀行傳統核心Sybase for AIX替換為TDSQL,成為TDSQL在國內完成的首家傳統銀行數據中心國產化的案例。2020年,平安信用卡從IBM大型機替換為TDSQL,是業內首例銀行核心系統從IBM大型機下移至國產分布式架構的案例。
2021年9月,騰訊云宣布TDSQL金融核心系統客戶已經超過20家,客戶涵蓋平安銀行、張家港銀行、昆山農商行等頭部銀行和廣泛的金融行業機構。
時間來到今天,騰訊云數據庫TDSQL已經進入規模化復制的第四個階段。
潘安群表示:“兩年之前,我們投入了大量資源做大行的攻堅,優先解決客戶的交付,而沒有急于向外界證明自己。而到了新的階段,是時候對我們的自身能力做一個階段性總結和展示了,也就是我們選擇此時打榜的原因。”
3.規模化復制,具體怎么做?
目前,騰訊云TDSQL已經服務了了國內排行前十的銀行中的7家,助力20多家金融機構完成核心系統的替換。從去年年底開始,TDSQL開始步入到全面復制的階段。
但是具體到不同的細分領域,TDSQL的業務節奏并不完全一致。
在金融行業,又可以細分為銀行、資管、保險與泛金融四個領域。
首先,泛金融對于數據庫的需求并非國產替代,而是一些偏互聯網屬性的金融企業。騰訊在十年前剛開始做騰訊云的時候,對于泛金融客戶接觸就較多,這是一個穩定增長的過程。
在銀行領域,國有大行(6家)和股份制銀行(14家)投入更早,在過去兩年基本已經完成了整體框架的技術選型。比如,某銀行在2015年就開始招標做第一輪的POC,在經過7輪POC之后,騰訊云數據庫才擊敗了將近20家廠商,終于在2020年中標并開始交付。
騰訊云數據庫總經理王義成介紹道:“騰訊云數據庫在大行和股份制銀行的數量還是相對占優的。我們更多是自己不犯錯,然后提升產品穩定性、交付能力、技術能力。大行和股份制銀行在選型時一般不會只選一家,我們更多是做好自己,把今天能拿下的核心戰場做扎實,不給競爭對手留機會。”
而在規模較小、數量更多(200多家)的農商行、城商行體系,大多數還沒有完成國產數據庫替換的選型。
“今年我們大批量復制就是盯著城商行、農商行市場,我們也在和前線銷售團隊、ISV(獨立軟件開發商)等做好聯動、產品適配與方案引導,實現全面覆蓋。”王義成表示。
在保險領域,國產化的進程與銀行并不一樣。銀行在十幾年前就上線了核心系統,近幾年在國產替代的趨勢下進行核心系統的改造,加上數據庫的替換,使得國產數據庫公司趕上東風。但保險公司的國產替代并不替換核心系統,只是替換數據庫,大多數保險公司都在Oracle數據庫的體系之下,因此對國產數據庫的要求基本上是兼容Oracle。
王義成表示:“在保險領域我們是要在兼容性上投入重兵,把Oracle兼容性的能力做得更豐富,圍繞數據遷移體系、Oracle評估體系做產品演進。”
在金融資管領域,不僅重視Oracle的兼容性,又很重視ISV,因此騰訊云數據庫會加大在ISV的投入,投入重兵做前序適配。
王義成表示,打標桿階段可以投入幾十人死磕,但真正到了業務復制階段,要比拼誰的業務質量更高、誰的效率更高。從去年下半年開始,騰訊云數據庫開始大力投入關于精細化運營、質量打磨升級的方案,進入全面復制產品的階段,并且在金融行業起到了初步的效果。
在金融行業之外的其他行業賽道,騰訊云數據庫更多還是打標桿為主,比如能源、發電輸電、交通領域,對于行業理解和認知,目前還是在學習階段。
責任編輯:Rex_03