《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 國(guó)產(chǎn)數(shù)據(jù)庫(kù)的"自我博弈"

國(guó)產(chǎn)數(shù)據(jù)庫(kù)的"自我博弈"

2021-03-03
來(lái)源:雷鋒網(wǎng)

  前言:很長(zhǎng)時(shí)間以來(lái),,大多數(shù)據(jù)庫(kù)從業(yè)人士都將IBM大型機(jī)、Oracle等傳統(tǒng)數(shù)據(jù)庫(kù)奉為經(jīng)典,尤其對(duì)于數(shù)據(jù)庫(kù)有著極高要求的金融行業(yè)來(lái)說(shuō),在他們眼里,地球上沒(méi)有任何一個(gè)數(shù)據(jù)庫(kù)能比他們更穩(wěn)定了,。

  隨著產(chǎn)業(yè)環(huán)境的變化,以O(shè)racle、IBM,、微軟三足鼎立的數(shù)據(jù)庫(kù)市場(chǎng)格局正悄然發(fā)生著改變,而在這一變化過(guò)程中,,國(guó)產(chǎn)數(shù)據(jù)庫(kù)也順勢(shì)而為向傳統(tǒng)數(shù)據(jù)庫(kù)發(fā)起了沖擊,,并打破了銀行核心系統(tǒng)只能用Oracle數(shù)據(jù)庫(kù)的”潛規(guī)則“。

  對(duì)此,,雷鋒網(wǎng)與騰訊云數(shù)據(jù)庫(kù)TDSQL團(tuán)隊(duì)6位老兵展開(kāi)了一場(chǎng)深度對(duì)話,,還原了以TDSQL為代表的國(guó)產(chǎn)數(shù)據(jù)庫(kù)的進(jìn)擊之路。

  把時(shí)間線拉回到2005年,。

  彼時(shí),,員工平均年齡只有26歲的騰訊,如同一支不起眼的輕騎兵部隊(duì),,在剛剛興起的互聯(lián)網(wǎng)社交化浪潮中開(kāi)疆拓土,,以QQ為基礎(chǔ)打造了QQ空間、QQ游戲,、騰訊網(wǎng)等爆款產(chǎn)品,。

  ”騰訊之前的業(yè)務(wù)都比較聚焦,我們作為公司的計(jì)費(fèi)團(tuán)隊(duì),,承擔(dān)著公司所有收入實(shí)時(shí)計(jì)費(fèi)工作,,同時(shí)每天我們還有大量復(fù)雜報(bào)表計(jì)算?!?/p>

  說(shuō)這句話的是現(xiàn)任騰訊副總裁李綱,,2003年加入騰訊的他就一直都在騰訊的計(jì)費(fèi)部門(mén)工作。隨著騰訊在SNS時(shí)代打敗了51.com、人人網(wǎng),、開(kāi)心網(wǎng)等對(duì)手之后,,QQ空間等產(chǎn)品帶來(lái)的增值業(yè)務(wù)也水漲船高。

 2.png

  騰訊計(jì)費(fèi)團(tuán)隊(duì)合影

  此時(shí)有一個(gè)問(wèn)題擺在了李綱的面前:技術(shù)上使用的MySQL開(kāi)源數(shù)據(jù)庫(kù),,面對(duì)用戶爆發(fā)式增長(zhǎng),,會(huì)經(jīng)常出現(xiàn)不穩(wěn)定,故障主備切換不及時(shí),、不準(zhǔn)確等各種各樣的問(wèn)題,。

  ”集中式數(shù)據(jù)庫(kù)的產(chǎn)品力很強(qiáng),兼容性非常強(qiáng)大,,但是有一個(gè)問(wèn)題是,,邊界感是也是非常明顯的,你到了它的系統(tǒng)極限就會(huì)出現(xiàn)問(wèn)題,?!袄罹V說(shuō)到。

  而當(dāng)時(shí),,騰訊并非是今天這樣的互聯(lián)網(wǎng)巨頭,,在各個(gè)領(lǐng)域騰訊都在與其他對(duì)手激戰(zhàn)正酣。如QQ空間有51.com,、人人網(wǎng),、開(kāi)心網(wǎng)等多個(gè)對(duì)手,游戲領(lǐng)域則有網(wǎng)易,、盛大……

  顯然,,如果不將技術(shù)層使用的數(shù)據(jù)庫(kù)出現(xiàn)的問(wèn)題解決掉,騰訊將無(wú)法在各個(gè)領(lǐng)域拿下”山頭“獲得勝利,。

  在此背景之下,,內(nèi)部經(jīng)過(guò)了多輪討論之后,技術(shù)部門(mén)終于做出了決定,。

  1

  自己做數(shù)據(jù)庫(kù)

  ”業(yè)務(wù)需要做這個(gè)事情,我們就想著先把它做好,,也沒(méi)有想未來(lái)要干成什么樣的事業(yè)……“

  對(duì)于那時(shí)的心態(tài),,潘安群(現(xiàn)騰訊云數(shù)據(jù)庫(kù)技術(shù)負(fù)責(zé)人)依舊記得很清楚。

  沒(méi)錯(cuò),,騰訊計(jì)費(fèi)部門(mén)作出的決定就是要自己做數(shù)據(jù)庫(kù),,正當(dāng)李綱他們做出了這個(gè)決定之后,時(shí)任騰訊CTO的張志東,,提出了一個(gè)要求:騰訊所有的賬戶都要像銀行一樣做到一筆都不差,,一分都不差。

  而這個(gè)要求說(shuō)白了,既然你們要自己做數(shù)據(jù)庫(kù),,那這個(gè)數(shù)據(jù)庫(kù)就要做到金融級(jí)的,。

  有朋友比較清楚,金融行業(yè)對(duì)于數(shù)據(jù)庫(kù)的要求是最高的,,可用性要達(dá)到99.999%,,也就意味著,全年數(shù)據(jù)庫(kù)發(fā)生故障的時(shí)間不可以超過(guò)5分鐘,。

  這不是一件容易的事兒,。結(jié)合騰訊具體業(yè)務(wù),除了張志東的要求可靠性和一致性之外,,自研的數(shù)據(jù)庫(kù)還需要做到可以無(wú)限水平擴(kuò)展,,即能夠根據(jù)業(yè)務(wù)需求進(jìn)行延伸。

  ”我們很多業(yè)務(wù)不能接受很長(zhǎng)的交易時(shí)長(zhǎng),,比如游戲里面買(mǎi)一個(gè)道具,,微信里發(fā)一個(gè)紅包,它是要馬上到賬的,,因此對(duì)于我們數(shù)據(jù)庫(kù)的穩(wěn)定性,、可靠性、性能以及可延展性都提出了很高的要求,?!?/p>

  在QQ空間、QQ游戲,、財(cái)付通等一系列業(yè)務(wù)推動(dòng)下,,定位于金融級(jí)一致可靠、互聯(lián)網(wǎng)彈性擴(kuò)展,、高性能的分布式數(shù)據(jù)庫(kù)系統(tǒng)就從2007年開(kāi)始逐步在騰訊內(nèi)部孵化,,就是后來(lái)的TDSQL。

3.png

  QQ空間登錄頁(yè)

  就在計(jì)費(fèi)平臺(tái)等多個(gè)部門(mén)的共同努力下,,騰訊在2008年擁有了QQ,、QQ空間、QQ游戲和騰訊網(wǎng)四個(gè)億級(jí)流量入口,;2009年,,騰訊網(wǎng)游收入超過(guò)盛大;2010年的3月5日晚,,QQ同時(shí)在線人數(shù)超過(guò)1億……

  經(jīng)歷過(guò)那段時(shí)光的朋友都知道,,騰訊那時(shí)有著難以掩蓋的光環(huán)。在這背后,,騰訊自研的TDSQL數(shù)據(jù)庫(kù)也有著無(wú)法忽略的功勞,。

  2

  安心喝咖啡

  2010年,,騰訊成立12周年紀(jì)念慶典結(jié)束之后,馬化騰發(fā)出了一封題為”打開(kāi)未來(lái)之門(mén)“的全員信,。

4.png

  馬化騰全員信截圖

  ”開(kāi)放“成為了這封全員信的核心思想,,這也是騰訊決策層第一次將之定義為戰(zhàn)略級(jí)的行動(dòng)。

  技術(shù)層面,,騰訊推出了開(kāi)放平臺(tái)(騰訊云的前身),,允許外部開(kāi)發(fā)者接入。對(duì)于數(shù)據(jù)庫(kù),、共享存儲(chǔ)等基礎(chǔ)支撐平臺(tái),,意味著其不僅要支撐騰訊內(nèi)部業(yè)務(wù)運(yùn)轉(zhuǎn),也更要保證外部客戶平穩(wěn)開(kāi)發(fā)和運(yùn)行,。

  ”騰訊內(nèi)部是大胖子業(yè)務(wù),,體量非常大(用戶數(shù)都是千萬(wàn)級(jí)往上),到了開(kāi)放平臺(tái)我們做的時(shí)候發(fā)現(xiàn)很多小業(yè)務(wù)(用戶百萬(wàn)級(jí),,甚至更少),,相對(duì)來(lái)說(shuō),由于場(chǎng)景差異化,,他們更容易出現(xiàn)意想不到的故障,。“潘安群如是說(shuō)到,。

  ”這對(duì)數(shù)據(jù)庫(kù)的穩(wěn)定可用,、標(biāo)準(zhǔn)化服務(wù)方面提出了更高的要求,我們需要提供一個(gè)更加完整的底層數(shù)據(jù)庫(kù)解決方案才能夠讓他們盡可能避免各種問(wèn)題,?!?/p>

  內(nèi)部微信支付、網(wǎng)絡(luò)游戲……,,外部的不斷增加的開(kāi)發(fā)者,,TDSQL就在業(yè)務(wù)的推動(dòng)下不斷發(fā)展錘煉。

  到了2014年,,以金融級(jí)場(chǎng)景為例,,TDSQL已經(jīng)支持了騰訊內(nèi)部90%的計(jì)費(fèi)業(yè)務(wù),托管了數(shù)百億賬戶,,每天進(jìn)行數(shù)億筆交易,。

  對(duì)于擁有夢(mèng)想的技術(shù)人員,從來(lái)都不會(huì)安于現(xiàn)狀,。他們清楚,TDSQL在內(nèi)部業(yè)務(wù)的驅(qū)動(dòng)下,,已經(jīng)達(dá)到了團(tuán)隊(duì)當(dāng)年提出”安心喝咖啡“的目標(biāo),。

  就是說(shuō),TDSQL在各種突發(fā)情況下,例如斷電,、服務(wù)器故障,,工程師依然可以一邊喝咖啡,一邊抖著腿看系統(tǒng)”自愈“,。

  ”TDSQL在研發(fā)之初,,就是默認(rèn)所有的硬件設(shè)備都是不穩(wěn)定的,所以應(yīng)對(duì)任何硬件發(fā)生的問(wèn)題都能夠很快的解決掉,?!袄罹V對(duì)雷鋒網(wǎng)說(shuō)到。

  3

  點(diǎn)燃心中的火苗

  ”我們此前有些保守,,業(yè)務(wù)有什么需求,,我們就做什么滿足他的需求,但2014年之后我們覺(jué)得要有更高的挑戰(zhàn),,我們希望技術(shù)的選擇,、探索能夠走在業(yè)務(wù)的前面?!?/p>

  而這個(gè)時(shí)候正好有一個(gè)機(jī)會(huì)擺在了李綱他們的面前:國(guó)內(nèi)首家民營(yíng)銀行和互聯(lián)網(wǎng)銀行——微眾銀行,,面臨著數(shù)據(jù)庫(kù)的選型。

  5.png

  ”微眾銀行的定位是普惠金融,,他們希望將IT成本降下來(lái),,并且能夠廣泛服務(wù)用戶?!袄罹V回憶到,。

  顯然,這樣的要求下,,以O(shè)racle為代表傳統(tǒng)集中式數(shù)據(jù)庫(kù)首先就被排除在外了,,微眾銀行CTO和李綱聊了半個(gè)小時(shí)之后,最終選擇了TDSQL作為核心系統(tǒng)數(shù)據(jù)庫(kù),。

  TDSQL就此成為了第一個(gè)使用在銀行核心系統(tǒng)的國(guó)產(chǎn)數(shù)據(jù)庫(kù),。

  ”我們不僅感覺(jué)很驚奇,而且還膽戰(zhàn)心驚,。我們和微眾剛接觸的時(shí)候,,會(huì)跟他們說(shuō)我們一致性、性能做的有多好,,而他們首先跟我們講的是,,先不說(shuō)別的,可用性,、穩(wěn)定性能不能保證,?“潘安群對(duì)雷鋒網(wǎng)說(shuō)到,。對(duì)于銀行等金融機(jī)構(gòu)來(lái)講,故障超過(guò)半小時(shí),,就已是非常嚴(yán)重的級(jí)別,。

  因?yàn)槭鞘状螒?yīng)用在銀行核心系統(tǒng),無(wú)形中給潘安群他們帶來(lái)了很大的壓力,,但在微眾銀行開(kāi)發(fā)人員與騰訊技術(shù)人員努力了半年之后,,2014年底,微眾銀行核心系統(tǒng)正式投產(chǎn),,承載了微眾銀行數(shù)百個(gè)核心系統(tǒng)和全行所有OLTP業(yè)務(wù),。

  當(dāng)前,微眾銀行每一個(gè)賬戶的科技運(yùn)維成本降至僅為3.5元/年,,僅為國(guó)內(nèi)其它銀行的1/10,,相比國(guó)際銀行則更低,只有其成本的2%至5%

  截至目前,,微眾銀行基于TDSQL搭建的分布式銀行核心系統(tǒng)已成功服務(wù)超過(guò)2.5億客戶,,實(shí)現(xiàn)年均日交易3.6億筆,單日交易峰值近6億筆,,最高TPS達(dá)到10萬(wàn)+,。

  這個(gè)項(xiàng)目也成為了騰訊金融云第一個(gè)案例,而這個(gè)案例點(diǎn)燃了潘安群他們心中的火苗:讓TDSQL真正的走出去,。

6.png

  早期核心團(tuán)隊(duì)合影,,前排右三為潘安群

  一點(diǎn)點(diǎn)看著TDSQL長(zhǎng)起來(lái)的潘安群很清楚,TDSQL 實(shí)際上已經(jīng)完全具備了承擔(dān)銀行核心交易的能力,。放眼當(dāng)時(shí)整個(gè)行業(yè)來(lái)看,,極大部分金融政企機(jī)構(gòu)核心數(shù)據(jù)庫(kù)仍受制于國(guó)外傳統(tǒng)集中式數(shù)據(jù)庫(kù)產(chǎn)品。

  然而,,讓大家都信服TDSQL的能力,,微眾銀行的案例還缺少點(diǎn)意思,主要有以下原因:

  微眾銀行是騰訊發(fā)起成立的,,選用了TDSQL缺少了些說(shuō)服力,;

  微眾銀行是一家互聯(lián)網(wǎng)銀行,沒(méi)有線下網(wǎng)點(diǎn),,業(yè)務(wù)模式也和傳統(tǒng)銀行很不同,。它能用國(guó)產(chǎn)數(shù)據(jù)庫(kù),并不完全證明傳統(tǒng)銀行也可以用,。

  微眾銀行的系統(tǒng)搭建是從無(wú)到有的過(guò)程,,不涉及到替換的問(wèn)題,TDSQL能否真正應(yīng)用于金融傳統(tǒng)核心系統(tǒng)還無(wú)法證明,。

  但對(duì)于心中已經(jīng)燃起火苗的潘安群,,這股火一直都在憋著,。

  就在2016年11月10日,潘安群發(fā)了這樣一條朋友圈:力爭(zhēng)讓每一張錢(qián)都能打上TDSQL Inside的標(biāo)簽,。

  4

  真正的舞臺(tái)

  這些年,國(guó)產(chǎn)數(shù)據(jù)庫(kù)發(fā)展創(chuàng)新持續(xù)在進(jìn)行,,不過(guò)一直都沒(méi)有觸及傳統(tǒng)銀行核心,。

  在這個(gè)過(guò)程中,TDSQL的研發(fā)人員也都沒(méi)閑著,,一直在打磨著產(chǎn)品,。

  ”客戶使用數(shù)據(jù)庫(kù)產(chǎn)品希望是一鍵式的,不僅是在開(kāi)發(fā)的時(shí)候,,包括以后業(yè)務(wù)擴(kuò)容的時(shí)候都是輕量化,、標(biāo)準(zhǔn)化、不容易出錯(cuò),,這是最重要的,。“TDSQL專家工程師雷海林對(duì)雷鋒網(wǎng)接著說(shuō)到:

  ”對(duì)此,,我們打造了DBbrain智能運(yùn)營(yíng)平臺(tái),;在遷移的兼容性方面,我們同樣也做了很多的工作,?!?/p>

  在這些工作全部完成之后,雷海林他們很清楚,,TDSQL已經(jīng)完全具備了標(biāo)準(zhǔn)成熟的數(shù)據(jù)庫(kù)產(chǎn)品所要求的能力,。

  機(jī)會(huì)總是會(huì)留給有準(zhǔn)備的人的。

  2018年,,張家港銀行核心系統(tǒng)使用的Sybase數(shù)據(jù)庫(kù)已經(jīng)跟不上業(yè)務(wù)的發(fā)展了,。

  一到年底銀行業(yè)務(wù)高峰期,CPU使用率就沖上去,,I/O 吞吐也直接到瓶頸,,有時(shí)候跑著跑著,核心數(shù)據(jù)庫(kù)突然就卡住一秒,。而核心數(shù)據(jù)庫(kù)卡住一秒,,張家港行科技部數(shù)據(jù)庫(kù)團(tuán)隊(duì)也跟著緊張一秒。

  一旦哪天真的停了下來(lái),,后果將不堪設(shè)想,,這也讓行領(lǐng)導(dǎo)決定升級(jí)其核心系統(tǒng)數(shù)據(jù)庫(kù)。

7.png

  銀行升級(jí)核心系統(tǒng)數(shù)據(jù)庫(kù)一直以來(lái)的潛規(guī)則是,,首選考慮的會(huì)是Oracle數(shù)據(jù)庫(kù),。然而整個(gè)Oracle一套軟硬件核心就需要大幾千萬(wàn)的支出,,同時(shí)集中式數(shù)據(jù)庫(kù)并不符合云時(shí)代彈性擴(kuò)展的趨勢(shì)。

  就在張家港行科技部數(shù)據(jù)庫(kù)團(tuán)隊(duì)負(fù)責(zé)人盧麗歡犯難的時(shí)候,,和張家港銀行,、TDSQL有過(guò)合作的長(zhǎng)亮科技團(tuán)隊(duì)得知了這個(gè)消息,不斷給張家港銀行安利TDSQL,。

  ”不僅性能好,,價(jià)格也便宜!“

  聽(tīng)到TDSQL的能力和價(jià)格,,盧麗歡心動(dòng)了,。然而方案提交之后,就引起了軒然大波,,因?yàn)樵趪?guó)內(nèi)還沒(méi)有一家傳統(tǒng)銀行核心系統(tǒng)數(shù)據(jù)庫(kù)升級(jí)選擇過(guò)國(guó)產(chǎn)數(shù)據(jù)庫(kù),。

  但此前張家港銀行的一個(gè)非核心系統(tǒng)使用過(guò)TDSQL數(shù)據(jù)庫(kù),表現(xiàn)也很穩(wěn)定,,因此這個(gè)方案讓張家港銀行的領(lǐng)導(dǎo)有了些心動(dòng),。

  開(kāi)了10多次會(huì)進(jìn)行論證之后,行領(lǐng)導(dǎo)最終拍板確定,,這次銀行核心系統(tǒng)數(shù)據(jù)庫(kù)就選用TDSQL,。然而,為了安全,,這次核心系統(tǒng)數(shù)據(jù)庫(kù)替換采用賽馬機(jī)制進(jìn)行:

  同時(shí)建造一套基于TDSQL數(shù)據(jù)庫(kù)的系統(tǒng)和一套基于Oracle數(shù)據(jù)庫(kù)的系統(tǒng),,二者互為備份,到投產(chǎn)前再?zèng)Q定誰(shuí)來(lái)成為主數(shù)據(jù)庫(kù),。但是,,無(wú)論是TDSQL還是 Oracle,都要滿足一個(gè)硬指標(biāo):1500TPS,。也就是至少支持每秒1500次的交易,。

  ”張家港銀行領(lǐng)導(dǎo)的這個(gè)決定讓我們?nèi)计鹆硕分荆芙o我們一個(gè)突圍的機(jī)會(huì)就已經(jīng)很不容易了,,也讓我們有了更大的動(dòng)力來(lái)做這個(gè)事情,。“TDSQL高級(jí)工程師張文對(duì)雷鋒網(wǎng)表示到,。

  至此,,騰訊云數(shù)據(jù)庫(kù)團(tuán)隊(duì)期待的真正舞臺(tái)拉開(kāi)了帷幕。

  5

  掀開(kāi)新的一頁(yè)

  說(shuō)到這兒,,我們不得不提長(zhǎng)亮科技,。如果把TDSQL比作一塊磚的話,騰訊云做的是提供”磚“的事情,長(zhǎng)亮科技則負(fù)責(zé)把從騰訊云搬過(guò)來(lái)的”磚“砌到張家港銀行的服務(wù)器上,。

  2018年10月,,長(zhǎng)亮科技團(tuán)隊(duì)進(jìn)駐了張家港銀行的機(jī)房,開(kāi)始了第一次的測(cè)試,。

  當(dāng)將TDSQL數(shù)據(jù)庫(kù)灌入服務(wù)器,,機(jī)器點(diǎn)亮,第一次測(cè)試開(kāi)始,,當(dāng)結(jié)果出現(xiàn)之后,,結(jié)果卻令現(xiàn)場(chǎng)的人大跌眼鏡:100TPS,只有目標(biāo)成績(jī)的十五分之一,。

  當(dāng)遠(yuǎn)在深圳的張文聽(tīng)到這個(gè)結(jié)果時(shí),立馬感覺(jué)不可思議,。然而白紙黑字的結(jié)果就擺在那,,既然你說(shuō)不可能,你來(lái)呀,!

  張文第一時(shí)間從深圳出發(fā),,他堅(jiān)信TDSQL絕對(duì)沒(méi)有問(wèn)題,只是個(gè)小問(wèn)題,,兩三天肯定就解決了,。

  然而落地趕到張家港銀行之后,自信的他,,身后也冒起了冷汗,,再看到身后銀行領(lǐng)導(dǎo)的眼神,壓力更大了,。

  為了找到問(wèn)題,,項(xiàng)目組工程師一條一條的SQL語(yǔ)句去測(cè)試,很快,,發(fā)現(xiàn)行里原有庫(kù)表設(shè)計(jì)有一個(gè)小問(wèn)題,,只要略微調(diào)整一下,TPS 的表現(xiàn)就能瞬間回血一大格,。

  時(shí)間也并非如張文所預(yù)估的兩三天,,經(jīng)過(guò)半個(gè)多月的優(yōu)化,TDSQL性能直線突破了1500TPS,,張家港銀行領(lǐng)導(dǎo)的眼神也變得如往常一樣熱情,。

  就這樣,搭載TDSQL數(shù)據(jù)庫(kù)的核心系統(tǒng)建好了,,為了保證系統(tǒng)穩(wěn)定性,,項(xiàng)目組工程師又開(kāi)始進(jìn)行兼容性測(cè)試。

  這里需要說(shuō)清楚的是,,銀行核心系統(tǒng)就像大樹(shù)的樹(shù)干,,基于這個(gè)樹(shù)干會(huì)長(zhǎng)出多個(gè)系統(tǒng)出來(lái),,這也就意味著,樹(shù)干必須要保證與樹(shù)枝之間兼容,,而在張家港銀行,,基于核心系統(tǒng)”生長(zhǎng)“的系統(tǒng)有上千個(gè)。

  為了保證與其他系統(tǒng)的兼容性,,長(zhǎng)亮團(tuán)隊(duì)工程師選擇了500多個(gè)常用的交易系統(tǒng),,就這樣一步一步的測(cè)試,所有人的心也都放了下來(lái),。

  最終,,行領(lǐng)導(dǎo)決定:正式把TDSQL作為主數(shù)據(jù)庫(kù),Oracle數(shù)據(jù)庫(kù)作為備份,。

  監(jiān)管機(jī)構(gòu)也認(rèn)可的這個(gè)計(jì)劃,,上線時(shí)間也隨之被確定:2019年8月16號(hào)。

  當(dāng)所有人都在盼望著最后一刻到來(lái)的時(shí)候,,卻又發(fā)生了一件詭異的事情,。

  ”當(dāng)時(shí)他們采購(gòu)了一批機(jī)器,這批機(jī)器規(guī)格和我們測(cè)試環(huán)境一模一樣,,但在實(shí)際測(cè)試時(shí)候發(fā)現(xiàn),,網(wǎng)絡(luò)I/O時(shí)快時(shí)慢,你沒(méi)有請(qǐng)求時(shí)機(jī)器性能很低,,如果給它壓力比較大,,性能就發(fā)揮得很好,我們覺(jué)得很詭異,,與正常的反應(yīng)正相反,。“張文回憶到,。

  面對(duì)這個(gè)情況,,不僅是身在張家港的工程師,包括騰訊深圳本地的工程師都開(kāi)始來(lái)幫忙定位這個(gè)問(wèn)題,。甚至當(dāng)時(shí)還聯(lián)系了服務(wù)器廠家,,然而廠家也沒(méi)能給出具體的解決方案。

  ”越是危機(jī),,越需要冷靜,。很快我們就發(fā)現(xiàn)服務(wù)器本身的接口其實(shí)很空閑,那么時(shí)延很可能來(lái)自網(wǎng)絡(luò),。趕快抓包分析,,問(wèn)題被定位在了數(shù)據(jù)庫(kù)服務(wù)器網(wǎng)絡(luò)模塊上。再細(xì)致定位,問(wèn)題出在網(wǎng)卡上,?!?/p>

  經(jīng)過(guò)大家的共同努力,很快從一個(gè)國(guó)外論壇上找到了線索:戴爾服務(wù)器為了節(jié)能,,會(huì)在極端高并發(fā)的時(shí)候,,自動(dòng)開(kāi)啟網(wǎng)卡的省電模式,問(wèn)題隨之被解決,。

  坐在桌旁回憶起這段往事的張文,,至今仍心有余悸。

  ”如果沒(méi)有找到問(wèn)題的話,,我們可能就需要用測(cè)試的機(jī)器來(lái)頂上了,,雖然這批機(jī)器被我們一年多的測(cè)試折磨得千瘡百孔。但這并不是我們想要的方案,?!?/p>

  2019年8月15日23:31分,張文發(fā)了一條朋友圈:

  《張家港十二時(shí)辰》暑期巨獻(xiàn),!

  激動(dòng)的心情溢于言表,并配了下面這張圖,。

8.png

  2019年8月16日21:00,,星期五,張家港銀行老的核心系統(tǒng)熄火,。

  2019年8月18日18:00,,星期日,張家港銀行新的核心系統(tǒng)啟動(dòng),。

  然而,,每個(gè)人的心依舊在懸著。

  2019年8月19日10:00,,星期一,,張家港銀行交易量猛沖,達(dá)到峰值,,然后緩慢回落,。

  成了,大廳里掌聲雷動(dòng),。

  從這之后,,張家港銀行成了”旅游勝地“。嘉興銀行,、富邦華一銀行,、青海省聯(lián)社、山東城商聯(lián)盟、華通銀行紛紛派人來(lái)參觀取經(jīng),。

  值得一提的是,,張家港銀行使用的TDSQL經(jīng)過(guò)優(yōu)化之后,核心系統(tǒng)可以達(dá)到6200TPS,。在性能方面,,高頻賬戶類(lèi)交易耗時(shí)在300毫秒之內(nèi),查詢類(lèi)交易耗時(shí)在100毫秒之內(nèi),,20秒內(nèi)可以完成1萬(wàn)筆批量代發(fā)代扣業(yè)務(wù),,日終跑批耗時(shí)17分鐘,存貸款結(jié)息耗時(shí)16分鐘,,相比老核心日終批處理耗時(shí)60分鐘,、存貸款結(jié)息耗時(shí)180分鐘有著質(zhì)的變化。

  同時(shí),,成本更是被極大優(yōu)化,。一個(gè)可以比對(duì)的數(shù)據(jù)是,集中式數(shù)據(jù)庫(kù)綜合硬件成本估算在4000—5000萬(wàn),,而張家港銀行的分布式TDSQL方案不到1000萬(wàn),,降低了近75%。

  而那個(gè)被用來(lái)作為備份的Oracle數(shù)據(jù)庫(kù),,最終沒(méi)被派上用場(chǎng),。

  6

  新的時(shí)代

  就在張家港銀行核心系統(tǒng)上線之后,咨詢TDSQL數(shù)據(jù)庫(kù)的銀行多了起來(lái),,就在張家港銀行項(xiàng)目結(jié)束之時(shí),,TDSQL的另一個(gè)團(tuán)隊(duì)正做的熱火朝天。

  平安銀行信用卡A+新核心系統(tǒng)數(shù)據(jù)庫(kù)選型也選擇了TDSQL,。而這次,,更是一次業(yè)內(nèi)首次將銀行核心系統(tǒng)從傳統(tǒng)集中式大型機(jī)下移至國(guó)產(chǎn)分布式架構(gòu)平臺(tái)的嘗試。

 9.png

  負(fù)責(zé)這個(gè)項(xiàng)目的同事是王輝,,他對(duì)雷鋒網(wǎng)表示到:”平安銀行的科技能力在全國(guó)都算是名列前茅,,所以他們本身對(duì)合作對(duì)象的能力要求非常高?!?/p>

  在這個(gè)高要求下,,系統(tǒng)開(kāi)發(fā)的過(guò)程自然并不會(huì)一帆風(fēng)順。

  ”平安那時(shí)候采購(gòu)了兩批機(jī)型,,戴爾和聯(lián)想的,,他們?cè)跍y(cè)試TDSQL的時(shí)候戴爾服務(wù)器延時(shí)偏大,聯(lián)想偏小,,發(fā)現(xiàn)這個(gè)問(wèn)題之后,,他們還未查明原因,,就直接到我們項(xiàng)目會(huì)議室說(shuō)你們產(chǎn)品有問(wèn)題,趕緊把誰(shuí)給我叫過(guò)來(lái)看一下,?!?/p>

  當(dāng)時(shí),平安的負(fù)責(zé)人很著急,,王輝希望對(duì)方能夠把情況講清楚,,但對(duì)方卻認(rèn)為已經(jīng)沒(méi)有時(shí)間間去詳細(xì)溝通這個(gè)事情,認(rèn)為產(chǎn)品存在性能問(wèn)題,。雙方緊張之下,,王輝只好到樓下買(mǎi)了一瓶飲料喝了下去,轉(zhuǎn)了一圈才上去,。

  上樓之后,,首先跟對(duì)方先對(duì)了一個(gè)規(guī)矩:別著急。

  之后在騰訊同學(xué)的測(cè)試下,,發(fā)現(xiàn)是兩批服務(wù)器的配置不一樣,。向行方提供了詳細(xì)測(cè)試報(bào)告后,騰訊同學(xué)的專業(yè)折服了平安的負(fù)責(zé)人,。

  而這時(shí)候,,他們也有了一個(gè)約定,等系統(tǒng)平穩(wěn)上線之后,,要一起喝頓酒,。

  而就在正式上線前最后一次版本升級(jí)過(guò)程中,為了確保升級(jí)過(guò)程順利,,騰訊云事先通知了升級(jí)期間應(yīng)用不能進(jìn)行壓力測(cè)試,但是這個(gè)通知被行方無(wú)意中疏忽了,,而在騰訊升級(jí)時(shí),,仍然做了壓力測(cè)試導(dǎo)致出現(xiàn)了一些問(wèn)題。

  第一時(shí)間,,平安銀行就通知了騰訊云認(rèn)為產(chǎn)品又有問(wèn)題,,而5分鐘后,平安銀行則又通知不是騰訊云的問(wèn)題,。在此之后,,為了讓客戶加強(qiáng)對(duì)產(chǎn)品的信心,雙方定下了一個(gè)”15分鐘原則“,,即問(wèn)題發(fā)生后雙方各自檢查15分鐘,,再一起交流、溝通,。

  雷峰網(wǎng):”這是不是一個(gè)由不信任到信任的過(guò)程,?“

  王輝:”是的,,雖然他們選擇了TDSQL,但是開(kāi)始并沒(méi)有太相信我們,,而我們不管是什么問(wèn)題,,都會(huì)幫助他們解決,最終都滿足了他們的要求,?!?/p>

  有著Oracle和AWS從業(yè)經(jīng)歷的王輝對(duì)雷鋒網(wǎng)表示到,這樣的服務(wù)在與跨國(guó)公司的合作中根本體驗(yàn)不到,,其中有以下3個(gè)原因:

  第一,,語(yǔ)言障礙,這是最大的問(wèn)題,;

  第二,,國(guó)際化的企業(yè)很難為某個(gè)客戶定制;

  第三,,整個(gè)服務(wù)流程和問(wèn)題處理流程非常長(zhǎng),,它的時(shí)效很難滿足國(guó)內(nèi)個(gè)別客戶的要求,尤其是金融要求,,你要達(dá)到這個(gè)時(shí)效,,付出的費(fèi)用非常高。

  就這樣,,在騰訊事無(wú)巨細(xì)的服務(wù)之下,。2020年10月31日凌晨5時(shí),平安銀行信用卡A+新核心系統(tǒng)成功上線,,其新系統(tǒng)能保障10億級(jí)交易賬戶,,并可實(shí)現(xiàn)10億級(jí)的海量日交易量,真正為平安集團(tuán)接下來(lái)的”雙11“大戰(zhàn)構(gòu)建出銅墻鐵壁,。

  ”上線前的頭兩周和上線之后的后兩周,,我們是24小時(shí)響應(yīng)的,投產(chǎn)的那三天我們是24小時(shí)大概有6個(gè)人在現(xiàn)場(chǎng),?!巴踺x回憶到。

  在他看來(lái),,給客戶的感覺(jué)就應(yīng)該是產(chǎn)研包括騰訊云團(tuán)隊(duì)都在全程保駕護(hù)航,。

  也就在對(duì)話結(jié)束之后,王輝和張文便匆忙趕往機(jī)場(chǎng),,去為另一個(gè)客戶提供技術(shù)服務(wù),。

  7

  一條正確的路

  ”我是2003年加入的騰訊,在這個(gè)過(guò)程中我們整個(gè)數(shù)據(jù)庫(kù)團(tuán)隊(duì)到目前為止,,主創(chuàng)團(tuán)隊(duì)所有成員幾乎都還在,,團(tuán)隊(duì)超級(jí)穩(wěn)定,,我們昨天晚上和微眾銀行一個(gè)合作很深的部門(mén)年度聚餐,連著六年聚餐,,發(fā)現(xiàn)都還是那些人,。“李綱回憶到,。

 10.png

  2017年騰訊云TDSQL團(tuán)隊(duì)滿十年工齡員工合影

  ”我們過(guò)去十多年基本上沒(méi)有走偏過(guò),,這也是能夠讓我們團(tuán)隊(duì)始終保持穩(wěn)定非常重要的原因?!芭税踩阂踩缡钦f(shuō)到,。

  穩(wěn)定的團(tuán)隊(duì),吸引了更多的數(shù)據(jù)庫(kù)人才不斷加入這個(gè)團(tuán)隊(duì),。加之公司持續(xù)不斷地進(jìn)行投入,,則讓這個(gè)團(tuán)隊(duì)在每一個(gè)方向點(diǎn)選擇上的堅(jiān)定一致。

  ”數(shù)據(jù)庫(kù)的正朝著云原生,、超融合,、國(guó)產(chǎn)化這三個(gè)方向進(jìn)行發(fā)展?!?/p>

  2020年12月24日,,騰訊云正式宣布數(shù)據(jù)庫(kù)品牌TDSQL全新升級(jí),李綱在舞臺(tái)上如是說(shuō)到,。

  原有的TDSQL,、TBase、CynosDB三大產(chǎn)品線統(tǒng)一升級(jí)為”騰訊云企業(yè)級(jí)分布式數(shù)據(jù)庫(kù)TDSQL“,,升級(jí)后的騰訊云TDSQL將涵蓋分布式,、分析型、云原生等多引擎融合的完整數(shù)據(jù)庫(kù)產(chǎn)品體系,。

11.png

  ”我們更希望客戶,、包括行業(yè)對(duì)騰訊云數(shù)據(jù)庫(kù)體系能有一個(gè)更清晰的認(rèn)知?!袄罹V表示。

  根據(jù)他回憶,,因?yàn)槿齻€(gè)數(shù)據(jù)庫(kù)名稱和自身特點(diǎn)本身就沒(méi)有吻合的匹配度,,甚至有不少客戶會(huì)產(chǎn)生”該選用哪個(gè)數(shù)據(jù)庫(kù)“的困惑。

  同樣在他們看來(lái),,未來(lái)超融合技術(shù)體系還會(huì)解決多引擎共存下對(duì)云數(shù)據(jù)庫(kù)的開(kāi)發(fā)與應(yīng)用選擇帶來(lái)的挑戰(zhàn),,TDSQL也將通過(guò)AI智能調(diào)度,以及Serverless等方案,,來(lái)實(shí)現(xiàn)多引擎的統(tǒng)一標(biāo)準(zhǔn)化服務(wù),,讓用戶能夠快速實(shí)現(xiàn)研發(fā)及服務(wù)的全鏈路打通,,而無(wú)需關(guān)心技術(shù)細(xì)節(jié)。

  回望TDSQL這段從開(kāi)源到適配,,從適配到自研的歷程,,騰訊云將每一次經(jīng)由業(yè)務(wù)適配考驗(yàn)后的思考、經(jīng)驗(yàn)都化作數(shù)據(jù)庫(kù)服務(wù)的”活水“,,灌溉自身業(yè)務(wù)的同時(shí)也灌溉了行業(yè),、開(kāi)發(fā)者社區(qū)。

  從企業(yè)內(nèi)部走向產(chǎn)業(yè)市場(chǎng),,歷經(jīng)金融,、政務(wù)、教育,、文旅,、工業(yè)、醫(yī)療,、交通等多個(gè)場(chǎng)景的TDSQL,,已經(jīng)從產(chǎn)品化、技術(shù)成熟度,、實(shí)際行業(yè)場(chǎng)景打磨的成長(zhǎng)階段,,走向了推動(dòng)國(guó)產(chǎn)化數(shù)據(jù)庫(kù)良性發(fā)展的階段。

  事實(shí)證明,,TDSQL走的這條路是一條國(guó)產(chǎn)數(shù)據(jù)庫(kù)可以走得通的路,。

  必須承認(rèn)的是,與國(guó)際上通用的商業(yè)數(shù)據(jù)庫(kù)產(chǎn)品相比,,國(guó)產(chǎn)數(shù)據(jù)庫(kù)還有不小的差距,。但通過(guò)國(guó)內(nèi)數(shù)據(jù)庫(kù)企業(yè)不斷的”自我博弈“,這樣的差距必然會(huì)越來(lái)越小,,甚至在云時(shí)代實(shí)現(xiàn)超越,。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]