當你提到數(shù)據(jù)庫,就不得不提Oracle。整個數(shù)據(jù)庫行業(yè),談論技術(shù)無出Oracle其右者,Oracle浸淫數(shù)據(jù)庫領(lǐng)域多年,早已將這個行業(yè)吃透。幾乎所有的數(shù)據(jù)庫,不管是商用數(shù)據(jù)庫還是開源數(shù)據(jù)庫,都是照著Oracle模式在走,包括交易模型中的數(shù)據(jù)處理等層面更是如此。
知數(shù)堂聯(lián)合創(chuàng)始人吳炳錫首發(fā)登場便開宗明義地指出,Oracle仍是數(shù)據(jù)庫行業(yè)當之無愧的王者,而Oracle新出的MySQL 8.0更談得上一句“開源數(shù)據(jù)庫中的王者正當年”!
”MySQL 8.0相比大家往常印象中常用的5.7版本有近300個提升點,在優(yōu)化器、管理、復制、插件、安全、開發(fā)、InnoDB等七大方向都有細致的更新,8.0可以說是你沒有體驗過的全新版本。如果說你還是覺得MySQL不好用,只能說你的MySQL版本太老了,已經(jīng)不在官方團隊的支持范圍內(nèi)了?!?/p>
作為一名數(shù)據(jù)庫行業(yè)從業(yè)15年的老兵,吳炳錫老師一針見血地指出數(shù)據(jù)庫產(chǎn)品背后開發(fā)團隊的重要性:
“MySQL 8.0為了做DDL回滾和數(shù)據(jù)字典的功能,多寫了30+萬行代碼,這遠超出了大眾認知的概念范圍,MySQL背后的開發(fā)團隊起碼在500人以上規(guī)模。可想而知,MySQL能得到的技術(shù)支持不是一般的同類型數(shù)據(jù)庫或開源數(shù)據(jù)庫所能比擬的?!?/p>
除了這些重要的特性與研發(fā)支撐,吳炳錫老師還提出了一個最直觀的論據(jù):
DB-engine排行榜,MySQL僅次于老大哥Oracle,位居第二。對于數(shù)據(jù)庫產(chǎn)品的選擇,吳炳錫老師也給出了自己的“萬金油”方案:數(shù)據(jù)庫用MySQL 8,自帶原生高可用;緩存用Redis;搜索用ES;分析用Clickhouse;時序類用InfluxDB。這些產(chǎn)品使用人群基數(shù)大,方案成熟度高,基本上不會出問題。
NoSQL:高并發(fā),低延遲,互聯(lián)網(wǎng)技術(shù)棧的標配
“Redis是NoSQL的王牌選手,它是最適合互聯(lián)網(wǎng)應用場景的數(shù)據(jù)庫?!睒O數(shù)云舟對外合作部總監(jiān)、Redis中國用戶組主席張冬洪非常自信地拋出了這個結(jié)論,在他看來,伴隨著互聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)需求的大爆發(fā),社交、電商、游戲、視頻、直播等新應用場景對傳統(tǒng)數(shù)據(jù)庫的性能提出了更高的要求,而Redis從2014年的2.8版本開始,就逐步伴隨著互聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)的發(fā)展而不斷完善,變得非常的強大,如今支撐著這些應用場景,成為移動互聯(lián)網(wǎng)時代的技術(shù)底座。
“單進程、高可用、低延遲、分布式、高性能……Redis的特點鮮明,優(yōu)勢突出,已經(jīng)成為了互聯(lián)網(wǎng)技術(shù)棧的標配?!?跟MySQL在互聯(lián)網(wǎng)的廣泛應用一樣,Redis在互聯(lián)網(wǎng)場景的應用同樣不遑多讓。
張冬洪特別指出,Redis支持的數(shù)據(jù)結(jié)構(gòu)非常豐富,這是其能脫穎而出的重要原因:“Redis有十多種數(shù)據(jù)結(jié)構(gòu),如今這些數(shù)據(jù)結(jié)構(gòu)已經(jīng)深入互聯(lián)網(wǎng)業(yè)務的骨髓,搶紅包、秒殺、排行榜等等場景都有它在背后支撐?!?/p>
除此之外,張冬洪還連珠炮式地提出了一連串Redis“強無敵”的論點:
·Redis是既可以當緩存又可以當存儲的KV數(shù)據(jù)庫;
·Redis是最簡單擴展自定義功能的數(shù)據(jù)庫;
·Redis是原生支持架構(gòu)類型最全的數(shù)據(jù)庫;
·Redis是唯一可以作為消息隊列使用的數(shù)據(jù)庫;
·Redis是最容易實現(xiàn)彈性擴縮容的數(shù)據(jù)庫;
·Redis是內(nèi)存管理最好的數(shù)據(jù)庫;
·Redis是支持秒級無損升級的數(shù)據(jù)庫;
·Redis是最具發(fā)展?jié)摿Φ臄?shù)據(jù)庫。
行業(yè)地位高,應用場景廣,生態(tài)體系全,這是張冬洪對Redis所作的總結(jié)陳詞。
云原生數(shù)據(jù)庫將是數(shù)據(jù)庫的未來
“云原生數(shù)據(jù)庫將是數(shù)據(jù)庫的未來,將至已至,未來已來。”騰訊云自研CynosDB數(shù)據(jù)庫產(chǎn)品負責人劉峰甫一登場便給出了對數(shù)據(jù)庫未來的論斷。
劉峰指出,云原生數(shù)據(jù)庫是NewSQL的一種,是為了解決傳統(tǒng)數(shù)據(jù)庫的痛點而生的。孟子曾提到“魚與熊掌不可兼得”,但NewSQL卻將NoSQL的擴展性和SQL的ACID統(tǒng)一在了一起。
作為云計算時代NewSQL的代表,云原生數(shù)據(jù)庫到底解決了哪些問題呢?劉峰在解答前首先細數(shù)了傳統(tǒng)數(shù)據(jù)庫架構(gòu)的“七宗罪”:
1.擴展性差;
2.資源利用率低;
3.可用性無法保證;
4.可靠性無法保證;
5.性能受限;
6.備份回檔慢;
7.運維成本高。
“導致傳統(tǒng)數(shù)據(jù)庫這些問題的根本,在于傳統(tǒng)數(shù)據(jù)庫是計算和存儲一體化的架構(gòu)。騰訊自研的新一代企業(yè)級云數(shù)據(jù)庫CynosDB,就是為了解決以上問題而應“云”而生的?!?/p>
劉峰指出,云原生數(shù)據(jù)庫CynosDB解決以上難題的關(guān)鍵思路在于通過計算和存儲分離創(chuàng)新性的實現(xiàn)了“日志即數(shù)據(jù)庫”的架構(gòu),獲得了資源池化和快速的彈性擴展的能力。傳統(tǒng)數(shù)據(jù)庫架構(gòu)中,通過簡單地改變存儲介質(zhì)替換MySQL本地文件系統(tǒng),并不能徹底解決數(shù)據(jù)復制的問題。CynosDB通過對MySQL存儲引擎InnoDB的改造,結(jié)合騰訊云存儲構(gòu)建了一套多租戶的共享分布式存儲,并異步的實現(xiàn)了日志的合并,完成了存儲資源的池化。同時也繼承了云存儲自身大容量,多副本,自動擴容和自動修復等諸多特性。這樣的改造也實現(xiàn)了計算層的無狀態(tài),計算實例可以完成秒級的升降級和故障切換。多個節(jié)點共享海量分布式存儲,不再需要數(shù)據(jù)搬遷和復制,主從直接不需要通過binlog進行同步,從根本上解決了傳統(tǒng)數(shù)據(jù)庫架構(gòu)導致的各種難題。
”目前CynosDB實現(xiàn)了128TB的海量存儲自動擴容;支持最大規(guī)格96C768GIB的計算實例;100%兼容MySQL和PG等多個引擎。除此以外,還實現(xiàn)了秒級的添加只讀節(jié)點,故障切換和快照備份,節(jié)點間僅有毫秒級的延遲”。
劉峰最后總結(jié)道,2022年,世界上75%的數(shù)據(jù)庫將運行在云上,而云原生數(shù)據(jù)庫將無疑成為用戶的最佳選擇。
PostgreSQL:世界上最強大的開源數(shù)據(jù)庫
“PostgreSQL是最早的開源數(shù)據(jù)庫!1986年就啟動研發(fā)了,比包括MySQL在內(nèi)的其他開源數(shù)據(jù)庫都要早。它是一位久經(jīng)考驗的老戰(zhàn)士,替換Oracle,在路上……請放心使用,尤其在金融核心交易系統(tǒng)?!?/p>
太陽塔科技公司CTO趙振平老師(PostgreSQL中文社區(qū)主席)是國內(nèi)第一批獲得OCP證書的Oracle數(shù)據(jù)庫從業(yè)者,不少數(shù)據(jù)庫從業(yè)者稱他一聲“趙老師”,他卻始終認為:團隊的力量遠遠凌駕于個人力量之上,這是他看好PostgreSQL的重要原因之一。
“PostgreSQL是由全世界很多開源愛好者組成的一個有梯隊的、成體系的艦隊。它背后有一個非常強大的開發(fā)團隊,所以它過去能夠開發(fā)出很多重大的新特性,以后也能夠給你提供持續(xù)的支持。”
趙老師口中的“久經(jīng)考驗的老戰(zhàn)士PostgreSQL”,曾經(jīng)和MySQL在同一條起跑線上,機緣巧合,因為MySQL搭上了互聯(lián)網(wǎng)的便車,在用戶群體上和PostgreSQL大大拉開了差距。但是,今天,PostgreSQL在開發(fā)規(guī)劃上的管理非??茖W,每年一個大版本更新、每個季度一個小版本更新,每一個大版本更新都是跨時代的變化,而不是bug fix的小修小補。
最關(guān)鍵的是,PostgreSQL還具備可與Oracle匹敵的高性能。Oracle數(shù)據(jù)庫遠遠甩開其他商業(yè)數(shù)據(jù)庫的利器之一是:“并行”。PostgreSQL同樣具備“并行”,在“并行掃描”,“并行連接”和“并行Append”上非常卓越。再加上其穩(wěn)定和安全的特性,被廣泛使用在金融核心領(lǐng)域也就并不奇怪了。
在功能方面,PostgreSQL甚至比Oracle還強。Oracle有的PostgreSQL都有,Oracle沒有的PostgreSQL也有。在索引類型、分布式、GIS、操作系統(tǒng)支持、代碼量等多個方面,PostgreSQL都優(yōu)于Oracle和MySQL。
技術(shù)不是唯一,生態(tài)仍是關(guān)鍵
”2007年前后的時候,MySQL已經(jīng)開始流行,背后原因在于其很好地抓住了互聯(lián)網(wǎng)的興起。從技術(shù)角度講,MySQL和PostgreSQL不存在技術(shù)上的優(yōu)劣之分,而在于其背后的社區(qū)管理和生態(tài)。“
騰訊云TBase數(shù)據(jù)庫負責人李躍森在點評時指出,對于數(shù)據(jù)庫產(chǎn)品而言,技術(shù)實現(xiàn)不是決定成功與否的唯一因素,背后的社區(qū)管理和生態(tài)同樣重要。
”PostgreSQL和MySQL相比,前者的技術(shù)實力并不弱于后者,在許多領(lǐng)域甚至處于領(lǐng)先位置。MySQL成功的關(guān)鍵在于抓住了那一波互聯(lián)網(wǎng)興起的紅利,經(jīng)過多年發(fā)展后,知名度和用戶案例的拓展已經(jīng)從互聯(lián)網(wǎng)行業(yè)擴展到保險、電信、金融等領(lǐng)域。反觀PostgreSQL,由于開源協(xié)議過于自由,社區(qū)力量不易集中,沒有像MySQL那樣有Oracle這樣的強大的后盾,在集中資源、打造格局方面能力稍弱?!?/p>
技術(shù)社區(qū)的運營,軟件生態(tài)的打造,開發(fā)者品牌的維護,是一個數(shù)據(jù)庫、框架甚至小小開源組件取得成功的要素之一。
“云計算雖然現(xiàn)階段存在諸多問題與挑戰(zhàn),但上云已經(jīng)是肉眼可見的技術(shù)趨勢。背后體現(xiàn)的已經(jīng)不是要不要上云,而是什么時候上云?怎么上云?上哪家云的問題。以美國看中國,不難看出這個趨勢,云數(shù)據(jù)庫在未來一定會有更大的應用場景,因此我對CynosDB抱以樂觀的態(tài)度。”
騰訊云,有能力與義務解決客戶的數(shù)據(jù)庫問題
“當客戶在使用云廠商所集成的數(shù)據(jù)庫產(chǎn)品時,一定會遇到各種各樣的問題,很多問題其實源自官方數(shù)據(jù)庫的自身bug或配置問題,但客戶不會去考慮這些。騰訊云既然提供了集成數(shù)據(jù)庫產(chǎn)品的云服務,就一定會找最專業(yè)的人來維護?!?/p>
騰訊云數(shù)據(jù)庫負責人林曉斌在點評環(huán)節(jié)指出了全面云計算時代下,集成數(shù)據(jù)庫等產(chǎn)品的云服務在維護客戶實例時,需要關(guān)注的客戶實際需求。在他看來,不管是官方的問題還是云服務的問題,都是騰訊云團隊需要為客戶解決的問題,騰訊云會針對客戶的實際需求,給數(shù)據(jù)庫增加功能、修復bug,這是能力,也是義務。
對于用戶普遍關(guān)心的云數(shù)據(jù)服務和自建數(shù)據(jù)服務的關(guān)系問題,林曉斌也給出了自己的看法:
“云數(shù)據(jù)服務和自建數(shù)據(jù)服務的區(qū)別關(guān)鍵不在于成本,而在于云提供了一個更大的彈性能力,幫助企業(yè)在實際的生產(chǎn)環(huán)境中能彈性應對流量的洪峰與低谷。自建數(shù)據(jù)服務在企業(yè)做大以后也是必然選擇,與之相匹配的DBA團隊實際上又讓自建的數(shù)據(jù)服務成為了一種類似私有云的概念?!?/p>
未來數(shù)據(jù)庫生態(tài)多方并存
“不管是NoSQL還是NewSQL,都是在不同的領(lǐng)域里深耕,瞄準的是不同的賽道。不同的數(shù)據(jù)庫產(chǎn)品之間在技術(shù)、規(guī)劃和思路方面都值得相互學習,騰訊內(nèi)部數(shù)據(jù)庫發(fā)展歷程也是經(jīng)歷了多次迭代創(chuàng)新,逐漸完善?!?/p>
騰訊分布式數(shù)據(jù)庫TDSQL負責人潘安群在點評時總結(jié)道,在他看來,所謂的“數(shù)據(jù)庫王者”其實并不存在?!霸诋斚率袌鰧?shù)字化或者信息化的要求越來越高,業(yè)務場景是以各種各樣的趨勢發(fā)展。我們需要的是多種,能夠應對未來長期技術(shù)演進中面臨的各種數(shù)據(jù)庫場景需求和挑戰(zhàn)的數(shù)據(jù)庫技術(shù)。”
“One size fits none,在云趨勢下,未來一定是多種數(shù)據(jù)庫技術(shù)生態(tài)并存的局面?!蓖瑫r,潘安群表示,“個人認為云數(shù)據(jù)庫是數(shù)據(jù)庫的未來方向,云原生級別的數(shù)據(jù)庫在未來能取得更好的發(fā)展前景,這也是國產(chǎn)數(shù)據(jù)庫彎道超車的機會。”
最近幾年,基礎(chǔ)技術(shù)國產(chǎn)化進程加快,對核心技術(shù)要自主可控的擔憂也讓不少圈內(nèi)人擔心MySQL數(shù)據(jù)庫的閉源、Oracle數(shù)據(jù)庫的卡脖子,潘安群認為,一方面是我們對數(shù)據(jù)庫核心技術(shù)的自主可控、自主研發(fā)迭代,同時需要尋找新的創(chuàng)新路徑。只有在云數(shù)據(jù)庫的趨勢下,才有了全面“去O”的可能性。
“按照Oracle數(shù)據(jù)庫的思路去做一款同類型數(shù)據(jù)庫,實現(xiàn)對Oracle數(shù)據(jù)庫的取代,本身就是不現(xiàn)實的。只有另辟蹊徑,才能彎道超車,目前看來,云原生就是那條可能的賽道。”
用戶需求是動力,云原生已是云數(shù)據(jù)庫的基礎(chǔ)能力
對于誰是數(shù)據(jù)庫王者的辯論主題,騰訊云原生數(shù)據(jù)庫CynosDB/CDB研發(fā)負責人程彬也給出了自己的看法:
“在數(shù)據(jù)庫的選型方面,并沒有標準答案。我們觀察到,無論騰訊公司內(nèi)部自研業(yè)務還是騰訊云上用戶對數(shù)據(jù)庫進行選型,基本上都是結(jié)合實際的業(yè)務場景、團隊的能力和技術(shù)儲備等多個維度來綜合決策。比如,業(yè)務在剛起步階段對擴展性要求低,MySQL可能就夠用了,規(guī)模上來后,需要彈性能力和性能更強的NoSQL來支撐。”
數(shù)據(jù)庫技術(shù)創(chuàng)新,一般有兩種模式。第一種模式是在新的科學理論的牽引下,從無到有研發(fā)出全新的技術(shù),比如數(shù)學家E.F.Codd提出了關(guān)系和關(guān)系運算的理論,后面就有了oracle關(guān)系型數(shù)據(jù)庫的誕生。第二種模式是在新的業(yè)務問題的牽引下,不斷運用技術(shù)去增效降本、去提升用戶體驗。比如互聯(lián)網(wǎng)時代海量數(shù)據(jù)量/海量訪問場景出現(xiàn)后,原有以MySQL為代表的關(guān)系型數(shù)據(jù)庫在擴展能力明顯不足,NoSQL數(shù)據(jù)庫就應運而生。
業(yè)界數(shù)據(jù)庫技術(shù)創(chuàng)新主要走的第二種模式。比如,騰訊的數(shù)據(jù)庫團隊在支撐公司微信、QQ、Qzone、QQ游戲、騰訊廣告、微信支付等不同業(yè)務場景中,不斷挖掘業(yè)務的海量、可持續(xù)性、合規(guī)性等需求,來不斷豐富數(shù)據(jù)庫平臺矩陣和能力。尤其在云時代,從賦能業(yè)務升級到普惠行業(yè),需要更加立體和有競爭力的數(shù)據(jù)庫技術(shù)棧來滿足行業(yè)需求,而云原生能力就是那把入門鑰匙。
程彬最后將自己的票投給了CynosDB,因為云原生是肉眼可見的未來!
技術(shù)本無優(yōu)劣,選型只看需求
騰訊云數(shù)據(jù)庫運營負責人邵宗文是這場別開生面的辯論大賽中最幸福的那個人,在他的牽頭下,四位數(shù)據(jù)庫大咖戰(zhàn)作一團,好不熱鬧。在聽完所有辯手的發(fā)言與嘉賓的點評以后,他發(fā)出了這樣一句感嘆:
“技術(shù)本身沒有優(yōu)劣之分,選型只看業(yè)務場景的區(qū)別與需求?!?/p>
最終,在159名觀眾和4名點評嘉賓的票選下,來自知數(shù)堂的吳炳錫老師成功摘得本次辯論賽王者桂冠,脫離尖銳的辯論風格后,吳老師的總結(jié)陳詞非常令人動容:
感謝大家對MySQL的認可,未來也許真的在云原生上,現(xiàn)下爭論MySQL和PostgreSQL誰更好并沒有意義。大家盯的賽道都不盡相同,未來做大后也可能都會回歸到私有云上,這是數(shù)據(jù)庫人最終的狀態(tài)。最后感謝拿了MySQL工資投票的各位,那些拿了MySQL工資投給PostgreSQL的同學要好好反思了。
當騰訊會議界面上的壯觀的嘉賓陣容揮手告別以后,窗外已是夕陽西下。數(shù)據(jù)庫市場經(jīng)過數(shù)十年的發(fā)展,不僅沒有隨時間流逝成為夕陽產(chǎn)業(yè),反而持續(xù)產(chǎn)生著創(chuàng)新與變革,在云計算的加持下,數(shù)據(jù)庫的未來必將走向新的高峰。
TVP,即騰訊云最具價值專家(Tencent Cloud Valuable Professional),是騰訊云授予云計算領(lǐng)域技術(shù)專家的一個獎項。TVP 計劃致力打造與行業(yè)技術(shù)專家的交流平臺,構(gòu)建云計算技術(shù)生態(tài),實現(xiàn)“用科技影響世界”的美好愿景。
TVP成立之初,便秉承“用科技影響世界”的愿景,讓技術(shù)普惠大家,踐行科技向善的初心和本心。如今,IT技術(shù)的價值已經(jīng)廣泛地為普羅大眾所認可,開發(fā)者的社會價值前所未有地凸現(xiàn),我們希望能用這一系列高端、前沿的技術(shù)閉門會,在這個疫情發(fā)生的艱難時刻,匯聚行業(yè)專家,幫助產(chǎn)業(yè)找到應對之法。
當神話中的洪水天災來臨時,有的人選擇造方舟求生,而我們卻選擇治水,從源頭上用頭腦、技術(shù)解決問題。這一次,也不例外。來,一起眺望光進來的地方!系列活動進行中,報名咨詢請?zhí)砑釉菩≈治⑿盘枺簓unjiadahui 。