技術(shù)
導(dǎo)讀:2022 年 1 月 6 日,備受關(guān)注的 DC2021 分布式數(shù)據(jù)庫(kù)開(kāi)發(fā)者大會(huì)于線上正式召開(kāi)。
2022 年 1 月 6 日,備受關(guān)注的 DC2021 分布式數(shù)據(jù)庫(kù)開(kāi)發(fā)者大會(huì)于線上正式召開(kāi),由中國(guó)電子技術(shù)標(biāo)準(zhǔn)化研究院指導(dǎo),CSDN 主辦、OceanBase 承辦,多個(gè)知名社區(qū)協(xié)辦。幾年前,分布式數(shù)據(jù)庫(kù)技術(shù)還是大家津津樂(lè)道的明日新星,隨著 2021 這一數(shù)據(jù)庫(kù)技術(shù)的變革之年,回首望去,未來(lái)已來(lái),分布式數(shù)據(jù)庫(kù)的時(shí)代大幕已然悄然拉開(kāi)。
本次大會(huì)以“數(shù)聚未來(lái)”為主題,邀請(qǐng)了一眾業(yè)內(nèi)知名人士,包括 MySQL 之父、MariaDB創(chuàng)始人以及PostgreSQL全球開(kāi)發(fā)組聯(lián)合創(chuàng)始人,同時(shí)還有 OceanBase、TDSQL、GuassDB、PingCAP、巨杉等國(guó)內(nèi)頂級(jí)分布式數(shù)據(jù)庫(kù)行業(yè)先行者,技術(shù)專家?guī)?lái)精彩的演講分享,為開(kāi)發(fā)者們貢獻(xiàn)了一場(chǎng)分布式數(shù)據(jù)庫(kù)領(lǐng)域的盛宴。
分布式數(shù)據(jù)庫(kù)產(chǎn)業(yè)現(xiàn)狀
分布式數(shù)據(jù)庫(kù)發(fā)展的如火如荼,在面對(duì)各種海量數(shù)據(jù)的場(chǎng)景化需求時(shí),分布式數(shù)據(jù)庫(kù)更能為企業(yè)業(yè)務(wù)提供良好支持,而優(yōu)秀的數(shù)據(jù)庫(kù)產(chǎn)品可以為企業(yè)發(fā)展插上翅膀,推動(dòng)行業(yè)騰飛。
通過(guò)大會(huì)上專家們的分享可以發(fā)現(xiàn),目前分布式數(shù)據(jù)庫(kù)的現(xiàn)狀主要是從單一化向多樣化去發(fā)展。隨著應(yīng)用場(chǎng)景和數(shù)據(jù)量的增加,并發(fā)和吞吐量的要求也越來(lái)越高,用一款數(shù)據(jù)庫(kù)去適用所有場(chǎng)景逐漸變得不可能。這也就帶來(lái)了一個(gè)數(shù)據(jù)庫(kù)的趨勢(shì),即一種數(shù)據(jù)庫(kù)適應(yīng)一種或者多種場(chǎng)景,數(shù)據(jù)庫(kù)的種類會(huì)越來(lái)越多,呈碎片化趨勢(shì)。除此之外,數(shù)據(jù)庫(kù)也從單機(jī)轉(zhuǎn)向分布式.目前的分布式數(shù)據(jù)庫(kù)已經(jīng)相當(dāng)普及了,從原來(lái)的關(guān)系型數(shù)據(jù)庫(kù)到面向分布式的數(shù)據(jù)庫(kù),這種趨勢(shì)和浪潮下,面臨的是數(shù)據(jù)庫(kù)的碎片化。
中國(guó)電子技術(shù)標(biāo)準(zhǔn)化研究院研究室主任楊麗蘊(yùn)表示,隨著分布式數(shù)據(jù)庫(kù)的發(fā)展變革,技術(shù)進(jìn)步和數(shù)字化的深入,數(shù)據(jù)正在以指數(shù)計(jì)數(shù)速度增長(zhǎng)。在去年,國(guó)家明確表示數(shù)據(jù)已成為第五大生產(chǎn)要素,這代表數(shù)據(jù)越來(lái)越重要了。這一趨勢(shì)對(duì)于數(shù)據(jù)管理、分析的數(shù)據(jù)庫(kù)軟件,既是重大的發(fā)展機(jī)遇,也是重要挑戰(zhàn)。國(guó)內(nèi)不乏以 OceanBase、TDSQL、巨杉為主的國(guó)內(nèi)優(yōu)秀分布式數(shù)據(jù)庫(kù)產(chǎn)品正在去承擔(dān)創(chuàng)新的數(shù)據(jù)庫(kù)業(yè)務(wù),并在逐步進(jìn)入核心系統(tǒng)領(lǐng)域。
在全球范圍內(nèi),伴隨著互聯(lián)網(wǎng)的快速發(fā)展,中國(guó)分布式數(shù)據(jù)庫(kù)發(fā)展突飛猛進(jìn),并快速拓展應(yīng)用到各行各業(yè)。2010 年,OceanBase 正式成立,從淘寶到支付寶 ,從支付寶走向更廣闊的世界,逐漸成為全球知名的自研數(shù)據(jù)庫(kù)。
OceanBase 創(chuàng)始人陽(yáng)振坤詳細(xì)的介紹了數(shù)據(jù)庫(kù)的誕生、發(fā)展以及目前面臨的挑戰(zhàn),風(fēng)趣幽默的用“小馬拉大車”的形象比喻,讓與會(huì)者對(duì)分布式數(shù)據(jù)庫(kù)的了解更加清晰。通過(guò)對(duì) HTAP 和 OLTP 的簡(jiǎn)單介紹,一方面說(shuō)明了兩者的根本差異,一方面說(shuō)明 HTAP 目前面臨一些挑戰(zhàn)。在陽(yáng)振坤眼里,一個(gè)好的分布式數(shù)據(jù)庫(kù),是“一個(gè)”可水平擴(kuò)展且一份數(shù)據(jù)存儲(chǔ)既進(jìn)行交易處理又進(jìn)行分析處理的數(shù)據(jù)庫(kù)。它具備“一個(gè)數(shù)據(jù)庫(kù)”、可水平擴(kuò)展和 HTAP 的三個(gè)重要特性。
陽(yáng)振坤引用了 Google Spanner 論文的一句話:盡管有人說(shuō) one-fits-all,但包含交易處理、分析處理和全文搜索的單個(gè)系統(tǒng)是客戶最高優(yōu)先級(jí)的需求,人類的智慧是無(wú)窮的,HTAP 的這些挑戰(zhàn)部分已經(jīng)在克服,在不久的將來(lái)所有的這些挑戰(zhàn)都將會(huì)被克服。
騰訊分布式數(shù)據(jù)庫(kù) TDSQL 首席架構(gòu)師李海翔介紹了 TDSQL 的關(guān)鍵技術(shù)《數(shù)據(jù)異常體系化技術(shù)研究》,其主要講解了為什么要定義數(shù)據(jù)異常,為什么要成體系化的定義數(shù)據(jù)異常;是怎么成體系化的去定義數(shù)據(jù)異常;怎么用數(shù)據(jù)異常來(lái)講清楚數(shù)據(jù)異常和隔離級(jí)別的關(guān)系;講清楚數(shù)據(jù)異常與一致性之間的關(guān)系。把整個(gè)數(shù)據(jù)庫(kù)事務(wù)處理領(lǐng)域里面幾個(gè)重要的概念都講的比較清楚,用數(shù)據(jù)異常這個(gè)角度講清楚什么叫做一致性,什么叫做隔離級(jí)別。
近幾年,隨著云計(jì)算的不斷發(fā)展,分布式數(shù)據(jù)庫(kù)與云計(jì)算也可謂是形影不離,華為數(shù)據(jù)庫(kù)首席架構(gòu)師馮柯現(xiàn)場(chǎng)分享解讀了《華為云 GaussDB 深耕創(chuàng)新,打造根技術(shù)競(jìng)爭(zhēng)力》,幫助與會(huì)者了解華為在數(shù)據(jù)庫(kù)的戰(zhàn)略,以及基于這個(gè)戰(zhàn)略確定的六大基礎(chǔ)研究方向:高可用、軟硬協(xié)同、混合負(fù)載、云原生、安全可信、智能化。
在確定六大基礎(chǔ)研究方向之外,同時(shí)華為對(duì)于數(shù)據(jù)庫(kù)戰(zhàn)略有三點(diǎn)優(yōu)勢(shì):研發(fā)能力、全站能力、生態(tài)建設(shè),基于以上三點(diǎn)優(yōu)勢(shì),最終確定了華為在數(shù)據(jù)庫(kù)的戰(zhàn)略,通過(guò)應(yīng)用軟硬件協(xié)同,打造開(kāi)放生態(tài),打造 GaussDB 全場(chǎng)景的云服務(wù)。
最后,OceanBaseCEO 楊冰分享了《最好的時(shí)代,共建分布式數(shù)據(jù)庫(kù)未來(lái)》,通過(guò)回顧過(guò)去一年行業(yè)及 OceanBase 的發(fā)展,再次印證了分布式數(shù)據(jù)庫(kù)發(fā)展勢(shì)不可擋。
主論壇專家們的對(duì)話環(huán)節(jié),主題是傳統(tǒng)數(shù)據(jù)庫(kù)向分布式數(shù)據(jù)庫(kù)轉(zhuǎn)型的價(jià)值及趨勢(shì)。在各位國(guó)內(nèi)分布式數(shù)據(jù)庫(kù)的頂尖行業(yè)代表的精彩分享下,可以窺見(jiàn)分布式數(shù)據(jù)庫(kù)的發(fā)展以及產(chǎn)業(yè)的現(xiàn)狀更加清晰,時(shí)代的大潮不會(huì)無(wú)風(fēng)而起,無(wú)數(shù)優(yōu)秀的開(kāi)發(fā)者、創(chuàng)新者就是這場(chǎng)大潮的推動(dòng)人。
OceanBase 在行業(yè)中的實(shí)踐與方法
在上午的活動(dòng)中,值得關(guān)注的當(dāng)屬 OceanBase CTO 楊傳輝對(duì)于分布式數(shù)據(jù)庫(kù)整體的技術(shù)發(fā)展進(jìn)行的解讀。從 2010 年開(kāi)始螞蟻集團(tuán)便致力于 OceanBase 的研發(fā),如今不論在性能、可擴(kuò)展性、兼容性還是開(kāi)源方面都取得了不錯(cuò)的成果。
一體化架構(gòu)
作為原生分布式數(shù)據(jù)庫(kù)的佼佼者,OceanBase 背后的主要核心技術(shù)就是一體化架構(gòu)。通過(guò)一體化架構(gòu),OB 能夠發(fā)揮出雙重技術(shù)優(yōu)勢(shì):
分布式:底層是原生分布式架構(gòu),依然擁有分布式技術(shù)無(wú)限擴(kuò)展,動(dòng)態(tài)增減服務(wù)器的技術(shù)紅利。
集中式:完全兼容集中式數(shù)據(jù)庫(kù)功能和單機(jī)性能,同時(shí)支持 OLTP 和 OLAP,簡(jiǎn)稱 HTAP。
OceanBase 一體化架構(gòu)的核心技術(shù)理念那就是既要分布式,又不能犧牲性能,用一個(gè)通俗的話來(lái)講就是兩手抓,兩手都要硬!每一個(gè)數(shù)據(jù)庫(kù)都離不開(kāi) SQL、事務(wù)和存儲(chǔ)三個(gè)技術(shù)模塊,如果將事務(wù)層和存儲(chǔ)層分離,再抽取一個(gè)單獨(dú)的分布式KV系統(tǒng),可以簡(jiǎn)單直接的實(shí)現(xiàn)一個(gè)分布式數(shù)據(jù)庫(kù),但是會(huì)犧牲單機(jī)性能,造成系統(tǒng)高延遲,不適合在核心業(yè)務(wù)系統(tǒng)使用;然而,OceanBase 通過(guò)一體化架構(gòu)將事務(wù)層和存儲(chǔ)層有機(jī)結(jié)合,不犧牲單機(jī)性能的同時(shí)又能做到與集中數(shù)據(jù)庫(kù)相當(dāng)?shù)乃?,完全可以適用于核心業(yè)務(wù)場(chǎng)景。
OceanBase 的一體化架構(gòu)包括了三個(gè)核心技術(shù)模塊:
原生分布式:底層是基于 Paxos 的靈活容災(zāi)架構(gòu),其上一層是一個(gè)一體化架構(gòu),兼具單機(jī)性能優(yōu)勢(shì),易用性以及擴(kuò)展性,并且保證全機(jī)的強(qiáng)一致性。
HTAP:OceanBase 在一套 HTAP 引擎中同時(shí)支持 OLAP 和 OLTP 混合負(fù)載,并且做到了良好的資源隔離。
兩種兼容模式:同時(shí)兼容兩種 SQL 使用接口,商業(yè)數(shù)據(jù)庫(kù) Oracle 和開(kāi)源數(shù)據(jù)庫(kù) MySQL,保證集中式數(shù)據(jù)庫(kù)到分布式數(shù)據(jù)庫(kù)的平滑遷移。
OceanBase 的核心理念是把簡(jiǎn)單留給客戶,把復(fù)雜留給數(shù)據(jù)庫(kù),因此選擇了對(duì)客戶更加友好,更加簡(jiǎn)單的一體化架構(gòu)。
開(kāi)源版本
在 2021 年 6 月份,OceanBase 正式面向全球開(kāi)源開(kāi)放,每一個(gè)用戶都可以通過(guò)下載 OceanBase 社區(qū)版快速學(xué)習(xí)和使用。OceanBase 在開(kāi)源上與其他項(xiàng)目可能不同,十年內(nèi)核能力的積累,大量的代碼開(kāi)源,必然花費(fèi)了很多心思和努力。開(kāi)源是為了更好的發(fā)展,相信點(diǎn)點(diǎn)滴滴將匯聚成滿天星河,開(kāi)源會(huì)越做越好。
同時(shí),OceanBase 在社區(qū)建設(shè)上也是大力發(fā)展,一個(gè)好的社區(qū)必然離不開(kāi)開(kāi)源的支撐,能夠加速生態(tài)建設(shè)。通過(guò)開(kāi)源,能夠更快速讓更多的數(shù)據(jù)庫(kù)管理者,使用者或者說(shuō)學(xué)習(xí)者,都能夠參與到這個(gè)分布式數(shù)據(jù)庫(kù)生態(tài)里面,這樣能夠比以前 Oracle 建設(shè)生態(tài)要更快,通過(guò)開(kāi)源能夠更快的完成生態(tài)建設(shè)。
技術(shù)路徑
OceanBase 自 2010 年立項(xiàng)以來(lái),已經(jīng)過(guò)了 11 年,一直保持著不斷的突破和創(chuàng)新。同樣的,分布式數(shù)據(jù)庫(kù)也經(jīng)歷了三次技術(shù)迭代,從最早的 NoSQL 系統(tǒng)走向今天的原生分布式數(shù)據(jù)庫(kù)。
第一代分布式數(shù)據(jù)庫(kù)是一個(gè)分布式的存儲(chǔ)系統(tǒng),也被稱為 NoSQL。
第二代分布式數(shù)據(jù)庫(kù)采用搭積木的方式,在 NoSQL 的基礎(chǔ)之上引入了 SQL 的支持,支持基本的 SQL 功能,但是往往都犧牲了單機(jī)的性能和成本。
第三代原生分布式數(shù)據(jù)庫(kù),追求極致,支持完整的企業(yè)級(jí) SQL 功能,并且做到單機(jī)性能與集中數(shù)據(jù)庫(kù)基本相當(dāng)。
OceanBase 十一年以來(lái)一直堅(jiān)持自主研發(fā),秉持只有自主研發(fā)才能完全掌控內(nèi)核,只有完全掌控內(nèi)核才能夠持續(xù)在原生分布式數(shù)據(jù)庫(kù)領(lǐng)域開(kāi)拓創(chuàng)新。所以,OceanBase 的原生分布式數(shù)據(jù)庫(kù)也經(jīng)歷了三次迭代:
第一代分布式存儲(chǔ)系統(tǒng):將 LSM 首次引入到關(guān)鍵數(shù)據(jù)庫(kù)領(lǐng)域里面,大幅降低關(guān)鍵數(shù)據(jù)庫(kù)的存儲(chǔ)成本。
第二代分布式數(shù)據(jù)庫(kù):OceanBase 再次將 paxos 協(xié)議引入到關(guān)鍵數(shù)據(jù)庫(kù)領(lǐng)域里面,首次做到 IPO 等于零。
第三代原生分布式數(shù)據(jù)庫(kù):OceanBase 做到在一套引擎同時(shí)支持 OLTP 與 OLAP 混合負(fù)載,并且參與 TPC-C 和 TPC-H 打榜都取得世界第一的成績(jī)。
2021 年 OceanBase 又取得五大核心產(chǎn)品技術(shù)突破:
從 OLTP 到 HTAP,TPC-H 整體性能提升 620%,30TB 打榜排名世界第一。
單核性價(jià)比大幅提升,Sysbanch 整體性能提升 68%,支持小規(guī)格部署,性價(jià)比在全球分布式數(shù)據(jù)庫(kù)領(lǐng)域遙遙領(lǐng)先。
更強(qiáng)的跑批能力,支持超大事務(wù),能夠在一套引擎同時(shí)梳理交易和跑批兩類工作負(fù)載,并且確保跑批負(fù)載不會(huì)影響正在進(jìn)行的交易業(yè)務(wù),并行 DML 和大數(shù)據(jù)導(dǎo)入性能分別提升 270% 和 58%。
Oracle 平滑遷移,OceanBase 是業(yè)內(nèi)首個(gè)支持平滑遷移 Oracle 的原生分布式數(shù)據(jù)庫(kù),并且得到銀行、保險(xiǎn)、證券、運(yùn)營(yíng)商、公共事業(yè)等多個(gè)行業(yè)核心業(yè)務(wù)場(chǎng)景的應(yīng)用證明。
易用性提升,實(shí)現(xiàn)了不依賴單點(diǎn)的分布式檢測(cè),也能夠通過(guò)全鏈路監(jiān)控來(lái)大幅降低問(wèn)題排查成本。
OceanBase 也是全球唯一一個(gè)在事務(wù)處理和數(shù)據(jù)分析兩個(gè)領(lǐng)域都獲得過(guò)世界第一的原生分布式數(shù)據(jù)庫(kù)。
產(chǎn)業(yè)進(jìn)步與開(kāi)源發(fā)展
長(zhǎng)期以來(lái),數(shù)據(jù)庫(kù)領(lǐng)域并沒(méi)有太大的突破或進(jìn)展,由于它本身是一個(gè)門(mén)檻比較高的行業(yè),長(zhǎng)期就是由幾家公司來(lái)占據(jù)市場(chǎng)份額,所以導(dǎo)致很長(zhǎng)一段時(shí)間內(nèi)的開(kāi)源分布式數(shù)據(jù)庫(kù)發(fā)展升量很足,但是在整個(gè)市場(chǎng)份額上未必有優(yōu)勢(shì),這是很長(zhǎng)一段時(shí)間里整個(gè)開(kāi)源分布式數(shù)據(jù)庫(kù)發(fā)展的整體情況。
但是從 2021 年 1 月開(kāi)始出現(xiàn)了一個(gè)很大的變化,在市場(chǎng)產(chǎn)品占有率層面,開(kāi)源的產(chǎn)品第一次超過(guò)了閉源的商業(yè)產(chǎn)品,這是一個(gè)好的現(xiàn)象,同樣的,分布式數(shù)據(jù)庫(kù)在市場(chǎng)上的競(jìng)爭(zhēng)也是日漸增長(zhǎng),說(shuō)明分布式數(shù)據(jù)庫(kù)的價(jià)值以及它的架構(gòu)上的優(yōu)勢(shì)正在越來(lái)越被大家所認(rèn)可。
OceanBase 在社區(qū)開(kāi)源發(fā)展方面做的可圈可點(diǎn)。從數(shù)據(jù)層面來(lái)看,社區(qū)總用戶 23000 名,百名外部開(kāi)發(fā)者,超百企業(yè)用戶在社區(qū)進(jìn)行深度的探索。在社區(qū)建設(shè)上,在 Gitee 和 GitHup上Star 數(shù)已經(jīng)超過(guò) 4000 次,社區(qū) Fork 數(shù) 860,Commit數(shù)超過(guò) 640。在最為關(guān)鍵的社區(qū)活躍度上,每日和用戶的溝通數(shù)次數(shù)超過(guò)了 300 次,并且社區(qū)問(wèn)答數(shù)迄今為止已經(jīng)超過(guò) 4600 次。在技術(shù)布道方向連接了超過(guò) 3500 名開(kāi)發(fā)者。這些數(shù)據(jù)表明:OceanBase 社區(qū)正在蓬勃發(fā)展,在未來(lái)將會(huì)更上一個(gè)臺(tái)階。
國(guó)外和國(guó)內(nèi)對(duì)開(kāi)源社區(qū)的組織形式有什么區(qū)別呢?主要有幾下幾點(diǎn):
開(kāi)源生態(tài):社區(qū)與代碼的重要性
研發(fā)門(mén)檻:專利和論文數(shù)量
起跑線:起步時(shí)間
持久性:研發(fā)是長(zhǎng)期的持久戰(zhàn)
總體來(lái)說(shuō),現(xiàn)在是一個(gè)后來(lái)者可以居上,技術(shù)價(jià)值可以無(wú)限接近于商業(yè)價(jià)值的美好時(shí)代。而未來(lái),分布式數(shù)據(jù)庫(kù)的發(fā)展基于開(kāi)源和技術(shù)的發(fā)展,無(wú)疑將會(huì)有更加廣闊的發(fā)展前景。