本文根據王義成老師在〖2020 Gdevops全球敏捷運維峰會〗現場演講內容整理而成。
王義成,騰訊雲資料庫副總經理,深耕資料庫領域10餘年,資料庫技術專家工程師。從事過資料庫研發、資料庫管理員以及雲資料庫產品經理多項工作。作為騰訊雲資料庫核心人員參與騰訊雲CynosDB、TDSQL、DBBrain等產品的自主研製與設計,帶領團隊持續用核心技術幫助企業完成數字化轉型和業務創新。
我是來自騰訊雲資料庫團隊的王義成,大家可能比較熟悉騰訊了,但是對於騰訊雲資料庫還不是特別瞭解。其實騰訊是一家崇尚產品文化的公司,每年年底都會舉行產品“名品堂”大選,其中有大家耳熟能詳的一些產品,比如微信支付、微信、王者榮耀、騰訊影片都是“名品堂”產品。
一直以來,騰訊雲資料庫都在支援著這些“名品堂”產品成長,同時騰訊雲資料庫也不斷擴充套件了很多發達國家的客戶,今天由我來給大家分享一下騰訊雲資料庫這麼多年來發展的一些歷史和情況。
一、雲時代,未來已來
首先分享一個觀點,根據Gartner預測,到2023年,世界上3/4的資料庫都會跑在雲上。
我非常相信這句話。為什麼呢?因為在今年年底,我們可以看到以下兩個趨勢:
- IDC上雲的成本逐漸降低。看看IDC在雲下部署的成本,如果算上頻寬、基礎的租用成本和機架租賃成本,這個整體成本已經超過了購買伺服器的成本。於是,我們看到更多的一些以前在雲下自建的客戶開始選擇用公有云來部署基礎設施服務。
- 過去在中國,以金融、政府、運營商為代表的傳統行業還是很難擁抱雲計算,多以自建形式管控基礎設施,不過這種情況已發生了改變。
- 近年來,在金融領域,像建行構建了自有的建行生態雲,銀聯今年也釋出了獨建的生態雲。在明年,建行將基於騰訊雲構建更大的生態雲,繼續支援生態合作伙伴一起擁抱雲計算;
- 再看另一個傳統的領域,就是政務。像一些GDP大省,浙江、廣東其實都在構建自己的省政務雲,像浙江省有“老百姓最多跑一次”這樣的省政務雲;騰訊雲也參與了“數字廣東”的業務,整個廣東省的醫保、人社、教育系統全部都搬到雲上;
- 最後再看運營商,其實運營商這幾年也在構建基於公有云的底座,比如聯通沃雲、移動雲。
從整體來看,不管是哪個行業,中國已經開始趨於全面擁抱雲。正如Gartner的預測,世界上3/4的資料庫將跑在雲上,對此我們深信不疑,覺得一定會實現這個願景。
二、立足國內,佈局全球
基於以上的大趨勢,騰訊雲資料庫一直在開疆闢土,依託騰訊雲部署了多個領域,目前全球已經遍佈騰訊雲資料庫的服務,無論在全國任何地方,都可以依賴於騰訊雲資料庫服務來支撐業務。
最近這一年,國產資料庫的風口已經到來。大家都在問,在“去IOE”或者“去O”的過程中,中國到底經歷了幾個階段?我個人總結認為,中國大概分為三個“去IOE”的階段:
- 第一個階段,以BAT為代表的泛網際網路行業的興起。在2000年,BAT的業務都沒有選擇商業資料庫,而是使用MySQL這類開源資料庫,在逐步可控、自控之後選擇走上自研的道路。2011年,隨著4G開始普及,出現了像滴滴、美團這類泛網際網路業務。在整個世界範圍來看,中國整體泛網際網路的市值體量其實不比美國差太多。中國“去IOE”的第一個大的歷程,就是從泛網際網路行業的基礎資料庫沒有選擇商業資料庫開始。
- 第二個階段,轉折點就是金融、政務等傳統行業的一些新興類業務開始選擇了國產資料庫來支撐自己的業務。舉個例子,像中國的第一家網際網路銀行微眾銀行,其全棧的銀行核心交易系統都沒有選擇商業資料庫,都是用騰訊雲的底座來支撐。再看到一些網際網路類的金融業務,據我所知,招商銀行的網上銀行沒有選擇商業資料庫,很多網際網路保險也沒有選擇商業資料庫。
- 第三個階段,就是現在所處的階段,整個大型的傳統企業最核心的部件開始選擇把資料庫拿到開源資料庫上來,像銀行、保險、政府的核心業務系統的下移。
騰訊雲資料庫在以上三個“去IOE”階段中都起到了相應的作用,下面我按照這個脈絡跟大家分享一下。
騰訊雲的資料庫起源於自研,以自研支撐業務。在泛網際網路行業興起的時候,騰訊內部就沒有選擇商業資料庫,內部的騰訊雲資料庫最初開始是支撐支付類的業務。今天騰訊所有的計費類業務都跑在騰訊自研的資料庫之上,比如你用Q幣充值,在王者榮耀上買面板,所有與交易相關的資料都存到騰訊自研的資料庫上。基於騰訊雲資料庫,我們也支援了微信支付、微眾銀行這些騰訊自研的業務。
隨後,我們開始做產學研結合的研究,與人民大學、清華大學合作高階或者精準的研究課題。最後開始步入到第三個階段,就是我們如今開始擁抱大型的行業,實現行業大型的主機下移、資料庫下移,做到產用結合,支援中國銀行、平安銀行這類客戶的重大資料庫系統下移。
三、有力支撐內部業務
對於騰訊內部的使用,我舉三個騰訊雲資料庫支撐內部業務的案例。
1、微信支付
騰訊雲資料庫支援了微信支付的商家庫。目前騰訊雲TBase資料庫叢集已經部署了200多個節點,可以支撐月資料量新增200億,月新增儲存為10TB以上。微信支付商家助手就是看重我們能夠自動做冷熱資料的分離,幫助使用者節省成本,從而有效提升整體資料庫的擴充套件性。
大家都非常清楚,這個遊戲其實已經打破了一個正常遊戲本身的生命週期。王者榮耀長期霸網,它的底層都有騰訊雲資料庫的支撐,平均每天8000萬局,平均每分鐘5萬多場。王者榮耀團戰的資料都被儲存在騰訊雲的資料庫上。
騰訊會議是To B的產品,它是中國現在發展最快的線上視訊會議系統,疫情期間助推了該產品的增長。騰訊會議的好處就是長在雲上,生在雲上。目前騰訊雲的資料庫產品正在支撐騰訊會議的整體發展,包括使用騰訊會議時註冊登入,在會議系統裡面使用紅包等等所有相關的資訊和關係資料全部都儲存在騰訊雲的資料庫之上。
為什麼騰訊雲資料庫能夠很好地支援業務?這其中涉及很多的功能支援,還有運維的經驗等等。總結來說,最核心的一點就是我們演變出一套聯邦式的分散式架構,透過上層的協調節點能夠支撐業務資料打散,在底層透過GTM-S幫助使用者做這種一主兩從模式實現高可用。
因此,在內部憑藉著這套分散式的架構,我們整體完成了對於騰訊內部很多核心業務的支撐。我覺得,良好的分散式擴充套件能力就是騰訊雲資料庫能夠很好支撐業務最核心的一點。
在充分支援好內部業務後,我們開始去服務好三百六十行。為什麼要服務三百六十行?我覺得很重要的一個觀點就是在2008年之後,騰訊的戰略發生了變化,從原來的什麼都做,轉變到“連線+投資”這樣的模式。
在中國,到今年為止,騰訊系投資的公司已經超過十萬億。在當時2008年高層的戰略是要透過投資投出一個騰訊,目前騰訊系投資的市值已經是騰訊本身的20倍,其實騰訊的投資是非常成功的,在投資的背後也是有基礎的設施幫助這些投資的技術公司達到相應的成長。
騰訊投資過很多優質的企業,像拼多多、美團、京東、每日優鮮、B站,還有很多遊戲類的公司,這些優質的公司由騰訊投資以後,透過本身的業務發展,像微信和背後的流量給這些公司很大的扶持,同時騰訊雲作為底座的支撐也起到了很大的作用,因此騰訊雲資料庫團隊也跟著騰訊雲支撐這些騰訊系的網際網路創業公司。
舉個簡單的例子就是拼多多,拼多多剛開始運營時還非常小,隨著近三年的發展,它的市值從百億增長到目前將近2000億美金,它的資料量在底層呈現爆發式增長,訂單數也是從很小一步步發展過來,包括所有的訂單資料、交易資料、快照資料等全部都是在騰訊雲資料庫之上。可以說是騰訊雲資料庫的產品能力與服務助力了騰訊的網際網路朋友圈公司得到快速發展。
為什麼能夠同時支援這麼多的客戶在業務上蓬勃發展?主要有兩點支撐:
一是騰訊雲資料庫這麼多年來構建了全棧的資料庫解決方案,從基礎的PaaS開始,有基於關係型資料庫的託管服務,像MySQL,也有非關係型資料庫服務,同時我們也有自研的企業級分散式資料庫TDSQL,包括TDSQL(原TDSQL和原TBase TP及HTAP版)、TDSQL-C(原CynosDB)和TDSQL-A(原TBase AP增強版和ClickHouse),同時還有一些雲資料庫。
在PaaS產品之上我們有全棧的資料庫SaaS產品,包括資料遷移、智慧管家、資料管理服務等等。其中有一個“DBA智慧管家”,這是我們為使用者開發的一款DBA的智慧服務,我們將所有資料日誌,主機內所有相應的資料進行全站收集,基於AI的技術來做分析,為使用者實時產出一份7×24小時的診斷報告。這能對使用者產生什麼樣的價值?
假如一個拼多多的DBA,在早上9點上班的時候,突然老闆說夜裡兩點半資料有些抖動,資料庫到底發生什麼樣的問題?如果你沒有這套東西是很難判斷的,有了這套診斷工具就可以實現7×24小時診斷。因為資料已經存在了,可以基於一個時間點進行產出,在這個時間點上,業務的抖動是由於資料庫IO發生什麼原因導致,再發現IO出問題是因為慢爬蟲導致的,基於慢爬蟲的原因我們會給出相應的最佳化建議,所以對於DBA整體服務自己的業務有很大的幫助。
二是我們在適配或者說積極思考雲的變化。今年騰訊雲的戰略是“一雲四端”,就是在整體上充分利用騰訊雲和我們廣大的端,包括微信小程式、QQ、企業微信等這些很好的端。
我們做了一個小程式的雲開發,就是與小程式雲端結合產生很大的價值。對於開發者來說,他希望的是未來使用資料庫不再是資源化和池化的。基於這樣的思想和理念,我們構建了一個將計算和儲存完全分離的資料庫架構,計算層可以完全透明的無限擴充套件,資料透過普通網站可以傳輸到儲存層,底層是一個分散式池化的資料,同時感知MySQL制定的協議,然後再以自動能力做回放。
這樣做帶來的好處是計算層面與儲存資料解耦,不再像以前把儲存和計算能力放在一起。在過去,擴容某個節點或者讀的能力要做很大的資料搬遷,現在不用了,可以瞬間拉起或者瞬間關閉一個讀節點,對業務基本上是無運營影響的,就能很好地適配小程式的雲開發場景。
如果客戶需要使用資料庫的時候,我可以迅速拉起一個節點來提供相應的讀操作或者寫操作;如果發現前面沒有連結,會迅速把計算節點殺掉,下次有連結的時候再把它拉進來,這是一個很好的面向開發者的場景,也是Serveless級的資料庫。隨著這款儲存架構的演進,未來線上下將演變成透過替換一個模式能夠應用的架構。
我們這麼多年來正是基於全棧的資料庫解決方案,適配一些騰訊雲戰略以及雲端的一些開發者變化,去積極思考資料庫價值的變化。
五、在金融關鍵領域的國產資料庫突破
在很好地支援騰訊廣大的泛網際網路朋友圈之後,我們今年開始逐漸突破線下的客戶。國產資料庫至少在這兩年已經到達輿論的頂點,所以我們一直在突破一些傳統領域。
近兩年來我們做的一個比較大的案例就是人保財險,人保一直在思考基礎設施的變化,從單體架構改成分散式架構,從前端的微服務化到底層適配,底層應用了我們的分散式資料庫,這樣為使用者構建兩地四中心的整體解決方案。
目前騰訊的資料庫支援了人保,只有非常少的業務還沒有遷上來,但現在已經覆蓋了全國36個省,28個業務。商業險包括財險的業務全部都用騰訊雲資料庫支撐,這套系統未來也會遷移核心上雲,像整體車險類業務,各省業務都會遷移到基於騰訊雲資料庫和騰訊雲構建的專署雲上。所以這也是我們看到國產資料庫或者國產廠商的技術能力,能夠幫助傳統行業來做相應的資料突破。
我們的資料庫在張家港農商行也取得了突破,幫助他們做了一個整棧資料庫的下移,形成了從傳統商業資料庫向國產資料庫替換的過程,實現了降本增效、效能提升以及同城雙活高可用的三大價值。
繼張家港農商行的成功之後,國產資料庫在股份制銀行有了更大的突破。最近我們做了一個平安銀行的案例,其實這是第一個中國業內把國外集中式大型機拿下來放在國產分散式資料庫系統之上的,就是銀行的信用卡中心,活躍卡量在6000萬以上。
為什麼能夠很好地支援金融行業的發展?我們一直本著以下六個資料庫的設計理念,持續為使用者產生價值,也為使用者選擇騰訊雲資料庫奠定堅實的理論基礎。
做好金融領域以後,我們開始服務政務、民生領域。政務、民生是最關鍵的行業,在今年整個中美關係到了一個非常焦灼化的狀態,政府的核心資料關係到整個中國的民生。
我們在支援政務領域的第一個重點案例就是今年第七次人口普查,第一次從線下搬到了線上,騰訊雲的產品全棧支援第七次人口普查,從前端收集的TDSQL資料庫,中間有實時工具同步到TBase資料庫,然後為一些普查員、領導在網上提供相應的決策,比如判斷這個地域是不是應該建學校或者醫院,去做一些實時的分析,整體支援人口普查的基礎設施服務。
今年在疫情影響之下,騰訊雲支援微信來構建防疫健康碼,目前使用者已達十億,累計亮碼次數已達90億人次。
最後一個案例是省政務雲。現在所有的GDP大省都在構建自己的省政務雲,目前騰訊雲資料庫正支援“數字廣東”,幫助實現老百姓在線上辦理所有的業務。各省各市已經逐步在做社保、醫保、人社、護照這些業務,對於老百姓來說,可以線上化解決一些必須跑好幾個地方才能解決的問題,因此對於民生類的拓展和有效提升民情起到了很大的作用。
為什麼能支援這麼多行業的發展?因為今年我們積極探索產品的佈局,做了一個數據庫的一體機,能夠實現軟硬一體結合,雲上雲下進行資料庫的互通。另外,我們還構建了一套基於線上遷移,Oracle異構的遷移工具和相容商業資料庫的體系,來為這些相應的行業提供基礎的資料支援。
對於騰訊雲未來資料庫的整體發展策略,在產品上我們會堅持以雲原生為基礎的理念來支援開發者,支援新興業務。隨著中國人口紅利的逐漸消失,我們認為資料庫要做到足夠的自治,能夠減少DBA的人才缺口量,幫助DBA解決一些業務上的壓力。最後隨著5G、新基建的到來,多種場景融合也將會到來,所以我們基於傳統的佈局也會在多模、業務、場景與管理的融合策略上輸出相應的產品體系的發展。
資料庫需要一個強大的生態,今年我們也會全力投入騰訊雲資料庫生態建設。
- 幫助服務合作伙伴包括ISA做整體業務的發展;
- 滲透相應的行業,要打通上下游ISA整合商去做使用者和資料庫的結合,在國產資料庫替換中起到聯合的作用;
- 釋放一部分資金來投入騰訊雲資料庫培訓人才體系的建設,我們創辦了騰訊雲資料庫的學院,目前已經開發了個人及企業級資料庫能力認證,截至目前已經有將近五千個成員已經透過騰訊雲資料庫的認證,未來我們也會更多地開放培訓,把騰訊雲資料庫的培訓認證體系建立得更加完善,更體系化。
最後想說,今年整個國產化的替換已經到了一個非常關鍵的時刻,我相信以騰訊為代表的一些資料庫廠商可以團結上下游的力量,一起抓住機會,共創國產資料庫美好的未來。謝謝大家!