国产数据库领域屡次率先突破,腾讯TDSQL亮相CNCC 2019!
生活随笔
收集整理的這篇文章主要介紹了
国产数据库领域屡次率先突破,腾讯TDSQL亮相CNCC 2019!
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一款的優(yōu)秀國產(chǎn)分布式數(shù)據(jù)庫應(yīng)該表現(xiàn)如何?盡管你可能沒有察覺,但領(lǐng)先的數(shù)據(jù)庫產(chǎn)品已經(jīng)在產(chǎn)業(yè)化的道路上越走越遠、越走越深入,助力行業(yè)數(shù)據(jù)庫實現(xiàn)全面自主可控。日前,CCF主辦的2019 中國計算機大會(CNCC 2019)在蘇州落下帷幕。會上,騰訊金融級分布式數(shù)據(jù)庫TDSQL負責(zé)人潘安群分享了TDSQL的15年研發(fā)演進歷程。
早在2009年,騰訊TDSQL就已經(jīng)實現(xiàn)了系統(tǒng)7*24小時高可用、高數(shù)據(jù)一致性和彈性擴容等功能。目前,騰訊TDSQL已具備了強一致、高可用、全球部署架構(gòu)、分布式水平擴展、高性能、企業(yè)級安全等特性,以及較完善的產(chǎn)品服務(wù)體系。除了提供穩(wěn)健高效的數(shù)據(jù)庫遷移服務(wù)TDSQ多源同步解決方案,2018年,TDSQL還實現(xiàn)了原創(chuàng)性提出的全面地解決讀一致性的算法,使得分布式事務(wù)的一致性和分布式系統(tǒng)的一致性統(tǒng)一在一起。而在業(yè)界頗為頭疼的云數(shù)據(jù)庫運維問題上,TDSQL還提供了兩大利器:“赤兔”運營管理平臺和“扁鵲”智能DBA診斷系統(tǒng)。
而在歷史時態(tài)數(shù)據(jù)的處理方面,TDSQL與中國人民大學(xué)合作,創(chuàng)新性地提出并實現(xiàn)了全時態(tài)數(shù)據(jù)庫系統(tǒng)(T-TDSQL)。該系統(tǒng)在保證OLTP性能的前提下,提供了輕量級的全時態(tài)數(shù)據(jù)管理功能和全時態(tài)數(shù)據(jù)的事務(wù)處理能力,以及集當(dāng)前態(tài)數(shù)據(jù)于生產(chǎn)系統(tǒng)、集歷史態(tài)數(shù)據(jù)于分析型系統(tǒng)的集群架構(gòu),構(gòu)成了全時態(tài)數(shù)據(jù)的完備解決方案。2019年,該研發(fā)成果被國際數(shù)據(jù)庫學(xué)術(shù)頂會之一VLDB收錄。
TDSQL Inside:從騰訊的分布式數(shù)據(jù)庫能力到行業(yè)的能力目前,TDSQL的用戶已經(jīng)覆蓋了金融、政務(wù)、物聯(lián)網(wǎng)、智慧零售、互聯(lián)網(wǎng)等行業(yè),擁有大量的分布式數(shù)據(jù)庫最佳實踐。
2014年,是TDSQL關(guān)鍵的一年。這一年,TDSQL正式對外開始商用,第一個外部合作客戶就是微眾銀行。微眾銀行是國內(nèi)第一家其核心交易系統(tǒng)以分布式架構(gòu)來搭建的互聯(lián)網(wǎng)銀行?;ヂ?lián)網(wǎng)架構(gòu)的高可擴展性,使得微眾銀行的服務(wù)能力具備很高的彈性,足以輕松應(yīng)對普惠金融浪潮。到了2015年末,TDSQL上線騰訊云,標(biāo)志著騰訊內(nèi)部金融級分布式數(shù)據(jù)庫能力全面開放。2019年,TDSQL的一個舉措再一次推動了國產(chǎn)數(shù)據(jù)庫助力產(chǎn)業(yè)數(shù)字化創(chuàng)新的發(fā)展。今年,TDSQL成功助力張家港行成功率先將銀行傳統(tǒng)核心系統(tǒng)由集中式數(shù)據(jù)庫存儲改造為分布式數(shù)據(jù)庫存儲,打破了該領(lǐng)域?qū)鈹?shù)據(jù)庫的長期依賴。這是在國內(nèi)銀行首次在傳統(tǒng)核心業(yè)務(wù)系統(tǒng)場景下,采用國產(chǎn)分布式數(shù)據(jù)庫。而采用TDSQL搭建的新一代核心系統(tǒng)性能也表現(xiàn)優(yōu)異:高頻賬戶類交易耗時在300毫秒之內(nèi),20秒內(nèi)可以完成1萬筆批量代發(fā)代扣業(yè)務(wù)……而架構(gòu)成本降至1/5甚至更低。妥妥實現(xiàn)降本增效。
當(dāng)前,金融日交易量最高3.46億+的微眾銀行、大型銀行機構(gòu)中國銀行、日均使用量超150萬人次的深圳地鐵乘車碼系統(tǒng)等超過500家金融政企機構(gòu),都是采用騰訊TDSQL數(shù)據(jù)庫的服務(wù)。這是最好的時機,也是全新的起點潘安群表示,國產(chǎn)數(shù)據(jù)庫經(jīng)過十?dāng)?shù)年自主可控發(fā)展,沉淀了成熟的分布式數(shù)據(jù)庫技術(shù)能力,同時,云計算的蓬勃發(fā)展為傳統(tǒng)行業(yè)的業(yè)務(wù)轉(zhuǎn)型帶來了許多新的機遇,這是業(yè)務(wù)創(chuàng)新與底層技術(shù)架構(gòu)轉(zhuǎn)型升級融合發(fā)展的最佳時期。“促進國產(chǎn)分布式數(shù)據(jù)庫發(fā)展,同時也將促進我國產(chǎn)業(yè)數(shù)字化轉(zhuǎn)型發(fā)展。而行業(yè)應(yīng)用發(fā)展也將為技術(shù)創(chuàng)新發(fā)展提供新的機遇。當(dāng)下是產(chǎn)業(yè)數(shù)字化升級最好的時機,也正是國產(chǎn)數(shù)據(jù)庫發(fā)最好的時機。”
而未來,核心技術(shù)挑戰(zhàn)攻堅、前沿技術(shù)生態(tài)融合等,在繼續(xù)推動整個數(shù)據(jù)庫基礎(chǔ)技術(shù)和工業(yè)生態(tài)逐步成熟上都是值得我們思考探索的問題。潘安群指出,在自主可控的基礎(chǔ)上,同時具備更多未來性創(chuàng)新探索和生態(tài)開放交流,才能讓技術(shù)研發(fā)的價值更具有意義,推動國產(chǎn)數(shù)據(jù)庫進一步創(chuàng)新發(fā)展。騰訊也將加大投入,促進我國數(shù)據(jù)庫產(chǎn)學(xué)研合作,推進國產(chǎn)數(shù)據(jù)庫技術(shù)提升和生態(tài)完善。
以下是潘安群在CNCC 2019的演講精要:大家好,很榮幸今天有機會在這里和各位前輩同行交流國產(chǎn)數(shù)據(jù)庫的發(fā)展。騰訊TDSQL是孵化于騰訊內(nèi)部業(yè)務(wù)場景的分布式數(shù)據(jù)庫,從2014年開始正式對外商用。回顧2014年,TDSQL第一個外部合作客戶就是微眾銀行。微眾銀行是國內(nèi)第一家其核心交易系統(tǒng)以分布式架構(gòu)來搭建的互聯(lián)網(wǎng)銀行。互聯(lián)網(wǎng)架構(gòu)的高可擴展性,使得微眾銀行的服務(wù)能力具備很高的彈性,足以輕松應(yīng)對普惠金融浪潮。
而在今年與張家港行的合作,我們認為也是一次國產(chǎn)數(shù)據(jù)庫以及銀行科技創(chuàng)新的重要突破。為了完成首次銀行傳統(tǒng)核心系統(tǒng)的數(shù)據(jù)庫遷移,我們和人民銀行、網(wǎng)信辦等都經(jīng)過了多輪的溝通,最終的成功遷移和性能、成本等實施效果獲得了大家的一致認可。作為首家在傳統(tǒng)核心應(yīng)用國產(chǎn)分布式數(shù)據(jù)庫的銀行,張家港行在獲得分布式架構(gòu)的優(yōu)勢特性的同時,同等TPS下硬件成本僅為傳統(tǒng)商業(yè)數(shù)據(jù)庫的1/5。TDSQL演進三部曲TDSQL前身在2004年開始啟動研發(fā),至今已經(jīng)持續(xù)積淀了十?dāng)?shù)年。回顧它整個演進歷程,可以分為幾個階段。
當(dāng)時,還是互聯(lián)網(wǎng)IT的早期,少有公司會愿意投入底層技術(shù)的研發(fā)。而作為一家互聯(lián)網(wǎng)科技公司,為何不用技術(shù)來解決技術(shù)問題?于是,從2004年開始,騰訊內(nèi)部開始基于開源體系MySQL進行研發(fā),以實現(xiàn)高數(shù)據(jù)一致和系統(tǒng)高可用等,這也是TDSQL的前身。也是在這樣的背景下,TDSQL就逐步誕生了。所以騰訊金融類業(yè)務(wù)從一開始就沒有Oracle,沒有“IOE”。
基于MySQL來發(fā)展這樣一套系統(tǒng)架構(gòu),在后來的經(jīng)歷中也驗證了,這是一件非常困難的事情,但也驗證了當(dāng)初的巨大投入所帶來的技術(shù)價值。
最初,我們沒有對MySQL本身去做一些優(yōu)化的工作,更多的是在效率的迫切要求下,結(jié)合CAP原理,在應(yīng)用層去解決這些問題。后來我們發(fā)現(xiàn),在應(yīng)用層做工作,解決第一個系統(tǒng)問題時是快速的,但對于后續(xù)大規(guī)模應(yīng)用開發(fā)時,和業(yè)務(wù)應(yīng)用緊耦合的形式難以將這些數(shù)據(jù)一致性、高可用的解決方案推廣到其他業(yè)務(wù)系統(tǒng)來應(yīng)用。因為它對于業(yè)務(wù)層、應(yīng)用層而言,改造成本太大了,因為在業(yè)務(wù)快速發(fā)展的過程中,業(yè)務(wù)本身歷史包袱越來越重,不太可能要來適應(yīng)新的架構(gòu)改造。
需求自然是迫切的,當(dāng)時業(yè)務(wù)面臨著業(yè)務(wù)拆分,以及上百臺設(shè)備集群管理問題,所帶來的數(shù)據(jù)一致性、數(shù)據(jù)準(zhǔn)確可靠性等問題。
因此我們開始考慮,我們必須將這些容災(zāi)、數(shù)據(jù)一致性等邏輯,全部下沉到數(shù)據(jù)庫層面來開發(fā)構(gòu)造,讓應(yīng)用層只需要專注在業(yè)務(wù)邏輯,而不需要管理容災(zāi)等邏輯。
從開發(fā)的角度講,這也是一件相對而言投入更大、難度更高的事情,然而那時大家有預(yù)感,我們將會創(chuàng)造一個全新的事物。
也因為這樣,對未來事物的好奇戰(zhàn)勝了困難的阻礙。2007年的數(shù)據(jù)庫開發(fā)中,團隊幾個人閉關(guān)在一個小黑屋里面,開始了瘋狂的代碼構(gòu)建,主攻解決計費等公司級敏感業(yè)務(wù)高可用、核心數(shù)據(jù)的零流失、核心交易的零錯賬等問題。針對金融類業(yè)務(wù)的特點,TDSQL技術(shù)團隊目標(biāo)很明確,包括以下幾個要點: 而在解決這些問題后,整個技術(shù)團隊開始思考未來的技術(shù)發(fā)展方向,并且對技術(shù)架構(gòu)設(shè)計有了新的想法——我們希望做一套新的系統(tǒng)。在把數(shù)據(jù)一致性、可靠性等特性從應(yīng)用層整合到數(shù)據(jù)庫層過程中,基于業(yè)務(wù)騰飛的預(yù)判,我們認為,數(shù)據(jù)庫層還需要具備分布式水平擴展的特性。
于是,團隊開始對這個數(shù)據(jù)庫架構(gòu)進行重構(gòu)。非常幸運的是,就在TDSQL完成分布式水平擴展的自研開發(fā)時,大約到了2009年,騰訊馬上迎來了騰訊開放平臺時代。那個時候,互聯(lián)網(wǎng)開始了真正意義的社交應(yīng)用爆發(fā)的階段,誕生了如開心農(nóng)場等產(chǎn)品。而這個TDSQL的雛形,正很好地以高可擴展性、數(shù)據(jù)一致性、可靠性、高可用性等,支持了當(dāng)時的開放浪潮。直至到今天,TDSQL經(jīng)歷過了數(shù)百億個賬戶的場景驗證,具備了完善的支持金融級場景和監(jiān)管要求的能力。
逐漸地,隨著對金融行業(yè)應(yīng)用更深刻的洞察,TDSQL逐步完善了分布式事務(wù)、分布式查詢等能力,在性能和應(yīng)用性之上持續(xù)發(fā)展,目標(biāo)就是把TDSQL打造成一個類似單機版的關(guān)系型分布式數(shù)據(jù)庫。我們知道,金融行業(yè)對事務(wù)處理的需求極高,轉(zhuǎn)賬、扣費,無一不是使用事務(wù),而騰訊是少數(shù)幾個將分布式事務(wù)處理,分布式查詢用于金融核心系統(tǒng)的企業(yè)。
作為一款Shared-Nothing架構(gòu)的分布式數(shù)據(jù)庫,從能力上講,TDSQL比當(dāng)前流行HTAP更進一步,它重新定義了一種綜合型的數(shù)據(jù)庫解決方案,也可以分配Noshard實例、分布式實例和分析性實例,同時支持JSON/RockDB等方案。當(dāng)然,TDSQL最主要的特點在于其具備shard架構(gòu)能力。
持續(xù)積累,用時間錘煉出一款自主可控的數(shù)據(jù)庫經(jīng)過十?dāng)?shù)年的積累打磨,在持續(xù)地優(yōu)化分布式、高可用、高性能等特性,以及不斷完善滿足客戶的需求過程中,TDSQL作為產(chǎn)業(yè)化自主可控數(shù)據(jù)庫,持續(xù)在行業(yè)保持領(lǐng)先。而TDSQL演進到今天的能力規(guī)模,來源于騰訊自身業(yè)務(wù)場景的驅(qū)動和錘煉。一款金融級分布式數(shù)據(jù)庫,必須要經(jīng)過多年產(chǎn)品生態(tài)體系的積淀,以及海量業(yè)務(wù)場景的錘煉。TDSQL架構(gòu)的迭代演進,正因為從騰訊海量用戶場景、復(fù)雜交易的業(yè)務(wù)實踐中來,才能更好地滿足廣大客戶數(shù)據(jù)庫技術(shù)和業(yè)務(wù)柔性的需求。
舉個例子,在產(chǎn)品的質(zhì)量保障方面,TDSQL版本發(fā)布會經(jīng)歷嚴格的流程,最終才推廣到客戶場景中:首先是計費團隊(技術(shù)孵化團隊)使用驗證,繼而推廣應(yīng)用到騰訊公司其他業(yè)務(wù)團隊,而在這些內(nèi)部場景中,我們都能較好地控制和修復(fù);在這兩個階段后,新版本發(fā)布才經(jīng)歷騰訊公有云用戶的驗證,最后發(fā)布在私有云上。另一方面,在產(chǎn)品化過程中,TDSQL結(jié)合實際應(yīng)用和客戶反饋,充分考慮數(shù)據(jù)庫整個應(yīng)用生產(chǎn)流程,來不斷完善產(chǎn)品服務(wù)體系,包括運營體系、數(shù)據(jù)庫多源同步遷移等配套設(shè)施。
基于這樣的產(chǎn)品化打磨,騰訊具備開放的技術(shù)生態(tài)基因。開放并不是說一定要開源,而是提供開放的標(biāo)準(zhǔn)、完善的服務(wù),比如數(shù)據(jù)庫多源同步遷移,以及自主可控的開源生態(tài),支持良性競爭,讓客戶免于被綁定風(fēng)險。
未來,如何與Oracle兼容、與AI和異構(gòu)計算等前沿技術(shù)融合等等,都是值得思考的挑戰(zhàn)和創(chuàng)新問題。TDSQL將持續(xù)通過產(chǎn)研結(jié)合、產(chǎn)用結(jié)合的方式進行研發(fā)突破,并開放商用更多特性,擁抱開源社區(qū)。
關(guān)于國產(chǎn)數(shù)據(jù)庫的更多介紹,可以點擊下方鏈接到知乎查看:
據(jù)了解,在十?dāng)?shù)年的積累打磨中,TDSQL持續(xù)地優(yōu)化分布式、高可用、高性能等特性,以及不斷完善滿足客戶的需求。而統(tǒng)計數(shù)據(jù)顯示,作為一款自主可控數(shù)據(jù)庫,TDSQL持續(xù)在行業(yè)保持領(lǐng)先,目前客戶已經(jīng)超過500家金融政企機構(gòu),并且在國產(chǎn)數(shù)據(jù)庫的基礎(chǔ)技術(shù)研發(fā)和產(chǎn)業(yè)化等領(lǐng)域?qū)覍覍崿F(xiàn)率先突破!
走在技術(shù)浪潮的前端騰訊是較早開始投入金融級分布式數(shù)據(jù)庫自主研發(fā)的企業(yè)。從2004年開始,基于騰訊計費、財付通等復(fù)雜業(yè)務(wù)場景,騰訊以“開源定制化+自研”為策略,推出了TDSQL,以解決金融系統(tǒng)中高可用、數(shù)據(jù)一致性、水平伸縮問題,助力我國產(chǎn)業(yè)核心技術(shù)自主可控、業(yè)務(wù)技術(shù)數(shù)字化轉(zhuǎn)型創(chuàng)新。早在2009年,騰訊TDSQL就已經(jīng)實現(xiàn)了系統(tǒng)7*24小時高可用、高數(shù)據(jù)一致性和彈性擴容等功能。目前,騰訊TDSQL已具備了強一致、高可用、全球部署架構(gòu)、分布式水平擴展、高性能、企業(yè)級安全等特性,以及較完善的產(chǎn)品服務(wù)體系。除了提供穩(wěn)健高效的數(shù)據(jù)庫遷移服務(wù)TDSQ多源同步解決方案,2018年,TDSQL還實現(xiàn)了原創(chuàng)性提出的全面地解決讀一致性的算法,使得分布式事務(wù)的一致性和分布式系統(tǒng)的一致性統(tǒng)一在一起。而在業(yè)界頗為頭疼的云數(shù)據(jù)庫運維問題上,TDSQL還提供了兩大利器:“赤兔”運營管理平臺和“扁鵲”智能DBA診斷系統(tǒng)。
而在歷史時態(tài)數(shù)據(jù)的處理方面,TDSQL與中國人民大學(xué)合作,創(chuàng)新性地提出并實現(xiàn)了全時態(tài)數(shù)據(jù)庫系統(tǒng)(T-TDSQL)。該系統(tǒng)在保證OLTP性能的前提下,提供了輕量級的全時態(tài)數(shù)據(jù)管理功能和全時態(tài)數(shù)據(jù)的事務(wù)處理能力,以及集當(dāng)前態(tài)數(shù)據(jù)于生產(chǎn)系統(tǒng)、集歷史態(tài)數(shù)據(jù)于分析型系統(tǒng)的集群架構(gòu),構(gòu)成了全時態(tài)數(shù)據(jù)的完備解決方案。2019年,該研發(fā)成果被國際數(shù)據(jù)庫學(xué)術(shù)頂會之一VLDB收錄。
TDSQL Inside:從騰訊的分布式數(shù)據(jù)庫能力到行業(yè)的能力目前,TDSQL的用戶已經(jīng)覆蓋了金融、政務(wù)、物聯(lián)網(wǎng)、智慧零售、互聯(lián)網(wǎng)等行業(yè),擁有大量的分布式數(shù)據(jù)庫最佳實踐。
2014年,是TDSQL關(guān)鍵的一年。這一年,TDSQL正式對外開始商用,第一個外部合作客戶就是微眾銀行。微眾銀行是國內(nèi)第一家其核心交易系統(tǒng)以分布式架構(gòu)來搭建的互聯(lián)網(wǎng)銀行?;ヂ?lián)網(wǎng)架構(gòu)的高可擴展性,使得微眾銀行的服務(wù)能力具備很高的彈性,足以輕松應(yīng)對普惠金融浪潮。到了2015年末,TDSQL上線騰訊云,標(biāo)志著騰訊內(nèi)部金融級分布式數(shù)據(jù)庫能力全面開放。2019年,TDSQL的一個舉措再一次推動了國產(chǎn)數(shù)據(jù)庫助力產(chǎn)業(yè)數(shù)字化創(chuàng)新的發(fā)展。今年,TDSQL成功助力張家港行成功率先將銀行傳統(tǒng)核心系統(tǒng)由集中式數(shù)據(jù)庫存儲改造為分布式數(shù)據(jù)庫存儲,打破了該領(lǐng)域?qū)鈹?shù)據(jù)庫的長期依賴。這是在國內(nèi)銀行首次在傳統(tǒng)核心業(yè)務(wù)系統(tǒng)場景下,采用國產(chǎn)分布式數(shù)據(jù)庫。而采用TDSQL搭建的新一代核心系統(tǒng)性能也表現(xiàn)優(yōu)異:高頻賬戶類交易耗時在300毫秒之內(nèi),20秒內(nèi)可以完成1萬筆批量代發(fā)代扣業(yè)務(wù)……而架構(gòu)成本降至1/5甚至更低。妥妥實現(xiàn)降本增效。
當(dāng)前,金融日交易量最高3.46億+的微眾銀行、大型銀行機構(gòu)中國銀行、日均使用量超150萬人次的深圳地鐵乘車碼系統(tǒng)等超過500家金融政企機構(gòu),都是采用騰訊TDSQL數(shù)據(jù)庫的服務(wù)。這是最好的時機,也是全新的起點潘安群表示,國產(chǎn)數(shù)據(jù)庫經(jīng)過十?dāng)?shù)年自主可控發(fā)展,沉淀了成熟的分布式數(shù)據(jù)庫技術(shù)能力,同時,云計算的蓬勃發(fā)展為傳統(tǒng)行業(yè)的業(yè)務(wù)轉(zhuǎn)型帶來了許多新的機遇,這是業(yè)務(wù)創(chuàng)新與底層技術(shù)架構(gòu)轉(zhuǎn)型升級融合發(fā)展的最佳時期。“促進國產(chǎn)分布式數(shù)據(jù)庫發(fā)展,同時也將促進我國產(chǎn)業(yè)數(shù)字化轉(zhuǎn)型發(fā)展。而行業(yè)應(yīng)用發(fā)展也將為技術(shù)創(chuàng)新發(fā)展提供新的機遇。當(dāng)下是產(chǎn)業(yè)數(shù)字化升級最好的時機,也正是國產(chǎn)數(shù)據(jù)庫發(fā)最好的時機。”
而未來,核心技術(shù)挑戰(zhàn)攻堅、前沿技術(shù)生態(tài)融合等,在繼續(xù)推動整個數(shù)據(jù)庫基礎(chǔ)技術(shù)和工業(yè)生態(tài)逐步成熟上都是值得我們思考探索的問題。潘安群指出,在自主可控的基礎(chǔ)上,同時具備更多未來性創(chuàng)新探索和生態(tài)開放交流,才能讓技術(shù)研發(fā)的價值更具有意義,推動國產(chǎn)數(shù)據(jù)庫進一步創(chuàng)新發(fā)展。騰訊也將加大投入,促進我國數(shù)據(jù)庫產(chǎn)學(xué)研合作,推進國產(chǎn)數(shù)據(jù)庫技術(shù)提升和生態(tài)完善。
以下是潘安群在CNCC 2019的演講精要:大家好,很榮幸今天有機會在這里和各位前輩同行交流國產(chǎn)數(shù)據(jù)庫的發(fā)展。騰訊TDSQL是孵化于騰訊內(nèi)部業(yè)務(wù)場景的分布式數(shù)據(jù)庫,從2014年開始正式對外商用。回顧2014年,TDSQL第一個外部合作客戶就是微眾銀行。微眾銀行是國內(nèi)第一家其核心交易系統(tǒng)以分布式架構(gòu)來搭建的互聯(lián)網(wǎng)銀行。互聯(lián)網(wǎng)架構(gòu)的高可擴展性,使得微眾銀行的服務(wù)能力具備很高的彈性,足以輕松應(yīng)對普惠金融浪潮。
而在今年與張家港行的合作,我們認為也是一次國產(chǎn)數(shù)據(jù)庫以及銀行科技創(chuàng)新的重要突破。為了完成首次銀行傳統(tǒng)核心系統(tǒng)的數(shù)據(jù)庫遷移,我們和人民銀行、網(wǎng)信辦等都經(jīng)過了多輪的溝通,最終的成功遷移和性能、成本等實施效果獲得了大家的一致認可。作為首家在傳統(tǒng)核心應(yīng)用國產(chǎn)分布式數(shù)據(jù)庫的銀行,張家港行在獲得分布式架構(gòu)的優(yōu)勢特性的同時,同等TPS下硬件成本僅為傳統(tǒng)商業(yè)數(shù)據(jù)庫的1/5。TDSQL演進三部曲TDSQL前身在2004年開始啟動研發(fā),至今已經(jīng)持續(xù)積淀了十?dāng)?shù)年。回顧它整個演進歷程,可以分為幾個階段。
互聯(lián)網(wǎng)開放浪潮的前夕:分布式數(shù)據(jù)庫如何一步步成型
當(dāng)時,還是互聯(lián)網(wǎng)IT的早期,少有公司會愿意投入底層技術(shù)的研發(fā)。而作為一家互聯(lián)網(wǎng)科技公司,為何不用技術(shù)來解決技術(shù)問題?于是,從2004年開始,騰訊內(nèi)部開始基于開源體系MySQL進行研發(fā),以實現(xiàn)高數(shù)據(jù)一致和系統(tǒng)高可用等,這也是TDSQL的前身。也是在這樣的背景下,TDSQL就逐步誕生了。所以騰訊金融類業(yè)務(wù)從一開始就沒有Oracle,沒有“IOE”。
基于MySQL來發(fā)展這樣一套系統(tǒng)架構(gòu),在后來的經(jīng)歷中也驗證了,這是一件非常困難的事情,但也驗證了當(dāng)初的巨大投入所帶來的技術(shù)價值。
最初,我們沒有對MySQL本身去做一些優(yōu)化的工作,更多的是在效率的迫切要求下,結(jié)合CAP原理,在應(yīng)用層去解決這些問題。后來我們發(fā)現(xiàn),在應(yīng)用層做工作,解決第一個系統(tǒng)問題時是快速的,但對于后續(xù)大規(guī)模應(yīng)用開發(fā)時,和業(yè)務(wù)應(yīng)用緊耦合的形式難以將這些數(shù)據(jù)一致性、高可用的解決方案推廣到其他業(yè)務(wù)系統(tǒng)來應(yīng)用。因為它對于業(yè)務(wù)層、應(yīng)用層而言,改造成本太大了,因為在業(yè)務(wù)快速發(fā)展的過程中,業(yè)務(wù)本身歷史包袱越來越重,不太可能要來適應(yīng)新的架構(gòu)改造。
需求自然是迫切的,當(dāng)時業(yè)務(wù)面臨著業(yè)務(wù)拆分,以及上百臺設(shè)備集群管理問題,所帶來的數(shù)據(jù)一致性、數(shù)據(jù)準(zhǔn)確可靠性等問題。
因此我們開始考慮,我們必須將這些容災(zāi)、數(shù)據(jù)一致性等邏輯,全部下沉到數(shù)據(jù)庫層面來開發(fā)構(gòu)造,讓應(yīng)用層只需要專注在業(yè)務(wù)邏輯,而不需要管理容災(zāi)等邏輯。
從開發(fā)的角度講,這也是一件相對而言投入更大、難度更高的事情,然而那時大家有預(yù)感,我們將會創(chuàng)造一個全新的事物。
也因為這樣,對未來事物的好奇戰(zhàn)勝了困難的阻礙。2007年的數(shù)據(jù)庫開發(fā)中,團隊幾個人閉關(guān)在一個小黑屋里面,開始了瘋狂的代碼構(gòu)建,主攻解決計費等公司級敏感業(yè)務(wù)高可用、核心數(shù)據(jù)的零流失、核心交易的零錯賬等問題。針對金融類業(yè)務(wù)的特點,TDSQL技術(shù)團隊目標(biāo)很明確,包括以下幾個要點:
數(shù)據(jù)強一致的要求
數(shù)據(jù)庫集群的可用性、穩(wěn)定性和容災(zāi)要求要達到銀行標(biāo)準(zhǔn)
業(yè)務(wù)無需拆分超大表,數(shù)據(jù)庫自動拆分
接入要簡單,老業(yè)務(wù)改造要小
符合并高于金融行業(yè)信息安全監(jiān)管要求
于是,團隊開始對這個數(shù)據(jù)庫架構(gòu)進行重構(gòu)。非常幸運的是,就在TDSQL完成分布式水平擴展的自研開發(fā)時,大約到了2009年,騰訊馬上迎來了騰訊開放平臺時代。那個時候,互聯(lián)網(wǎng)開始了真正意義的社交應(yīng)用爆發(fā)的階段,誕生了如開心農(nóng)場等產(chǎn)品。而這個TDSQL的雛形,正很好地以高可擴展性、數(shù)據(jù)一致性、可靠性、高可用性等,支持了當(dāng)時的開放浪潮。直至到今天,TDSQL經(jīng)歷過了數(shù)百億個賬戶的場景驗證,具備了完善的支持金融級場景和監(jiān)管要求的能力。
為金融場景而生:產(chǎn)品化的金融級分布式數(shù)據(jù)庫TDSQL
逐漸地,隨著對金融行業(yè)應(yīng)用更深刻的洞察,TDSQL逐步完善了分布式事務(wù)、分布式查詢等能力,在性能和應(yīng)用性之上持續(xù)發(fā)展,目標(biāo)就是把TDSQL打造成一個類似單機版的關(guān)系型分布式數(shù)據(jù)庫。我們知道,金融行業(yè)對事務(wù)處理的需求極高,轉(zhuǎn)賬、扣費,無一不是使用事務(wù),而騰訊是少數(shù)幾個將分布式事務(wù)處理,分布式查詢用于金融核心系統(tǒng)的企業(yè)。
作為一款Shared-Nothing架構(gòu)的分布式數(shù)據(jù)庫,從能力上講,TDSQL比當(dāng)前流行HTAP更進一步,它重新定義了一種綜合型的數(shù)據(jù)庫解決方案,也可以分配Noshard實例、分布式實例和分析性實例,同時支持JSON/RockDB等方案。當(dāng)然,TDSQL最主要的特點在于其具備shard架構(gòu)能力。
持續(xù)完善的技術(shù)生態(tài)和產(chǎn)品服務(wù)體系
持續(xù)積累,用時間錘煉出一款自主可控的數(shù)據(jù)庫經(jīng)過十?dāng)?shù)年的積累打磨,在持續(xù)地優(yōu)化分布式、高可用、高性能等特性,以及不斷完善滿足客戶的需求過程中,TDSQL作為產(chǎn)業(yè)化自主可控數(shù)據(jù)庫,持續(xù)在行業(yè)保持領(lǐng)先。而TDSQL演進到今天的能力規(guī)模,來源于騰訊自身業(yè)務(wù)場景的驅(qū)動和錘煉。一款金融級分布式數(shù)據(jù)庫,必須要經(jīng)過多年產(chǎn)品生態(tài)體系的積淀,以及海量業(yè)務(wù)場景的錘煉。TDSQL架構(gòu)的迭代演進,正因為從騰訊海量用戶場景、復(fù)雜交易的業(yè)務(wù)實踐中來,才能更好地滿足廣大客戶數(shù)據(jù)庫技術(shù)和業(yè)務(wù)柔性的需求。
舉個例子,在產(chǎn)品的質(zhì)量保障方面,TDSQL版本發(fā)布會經(jīng)歷嚴格的流程,最終才推廣到客戶場景中:首先是計費團隊(技術(shù)孵化團隊)使用驗證,繼而推廣應(yīng)用到騰訊公司其他業(yè)務(wù)團隊,而在這些內(nèi)部場景中,我們都能較好地控制和修復(fù);在這兩個階段后,新版本發(fā)布才經(jīng)歷騰訊公有云用戶的驗證,最后發(fā)布在私有云上。另一方面,在產(chǎn)品化過程中,TDSQL結(jié)合實際應(yīng)用和客戶反饋,充分考慮數(shù)據(jù)庫整個應(yīng)用生產(chǎn)流程,來不斷完善產(chǎn)品服務(wù)體系,包括運營體系、數(shù)據(jù)庫多源同步遷移等配套設(shè)施。
基于這樣的產(chǎn)品化打磨,騰訊具備開放的技術(shù)生態(tài)基因。開放并不是說一定要開源,而是提供開放的標(biāo)準(zhǔn)、完善的服務(wù),比如數(shù)據(jù)庫多源同步遷移,以及自主可控的開源生態(tài),支持良性競爭,讓客戶免于被綁定風(fēng)險。
未來,如何與Oracle兼容、與AI和異構(gòu)計算等前沿技術(shù)融合等等,都是值得思考的挑戰(zhàn)和創(chuàng)新問題。TDSQL將持續(xù)通過產(chǎn)研結(jié)合、產(chǎn)用結(jié)合的方式進行研發(fā)突破,并開放商用更多特性,擁抱開源社區(qū)。
關(guān)于國產(chǎn)數(shù)據(jù)庫的更多介紹,可以點擊下方鏈接到知乎查看:
總結(jié)
以上是生活随笔為你收集整理的国产数据库领域屡次率先突破,腾讯TDSQL亮相CNCC 2019!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 令人惊叹的前端路由原理解析和实现方式
- 下一篇: Serverless.com CEO首次