除了精彩紛呈的主論壇演講、圓桌論壇與極客夜宵等內(nèi)容之外,在下午的分布式數(shù)據(jù)庫技術(shù)分論壇與分布式數(shù)據(jù)庫開源生態(tài)與應(yīng)用分論壇上,來自國內(nèi)外主流分布式數(shù)據(jù)庫的技術(shù)專家與各大開源社區(qū)、平臺負(fù)責(zé)人為開發(fā)者帶來了圍繞核心技術(shù)與開源生態(tài)打造的內(nèi)容盛宴。
分布式數(shù)據(jù)庫技術(shù)分論壇
今年是數(shù)據(jù)庫發(fā)展的變革之年,亦是分布式數(shù)據(jù)庫嶄露頭角的重要時間節(jié)點(diǎn)。分布式數(shù)據(jù)庫技術(shù)在走向千行百業(yè)應(yīng)用深海的大勢所趨下,越來越多的開發(fā)者關(guān)注于此,投身其中。下午14:00,DC2021分布式數(shù)據(jù)庫開發(fā)者大會分布式數(shù)據(jù)庫技術(shù)分論壇正式開幕,來自O(shè)ceanBase、GaussDB、PolarDB、巨杉數(shù)據(jù)庫、StarRocks、Oushu科技數(shù)據(jù)庫以及MongoDB社區(qū)的8位產(chǎn)品技術(shù)專家,針對分布式數(shù)據(jù)庫領(lǐng)域最新的技術(shù)亮點(diǎn)與產(chǎn)品革新進(jìn)行了深度分享。
一、OceanBase的一體化設(shè)計(jì)
OceanBase首席架構(gòu)師楊志豐分享了主題為《OceanBase的一體化設(shè)計(jì)解析》的演講。OceanBase從2010年立項(xiàng)以來,其架構(gòu)的演進(jìn)一直圍繞可擴(kuò)展與高可用特性去建立與融合,這也是為什么OceanBase會采用一體化設(shè)計(jì)的直接原因。OceanBase的一體化設(shè)計(jì)主要有四大方面:第一,OceanBase能夠兼?zhèn)浼惺綌?shù)據(jù)庫和分布式數(shù)據(jù)庫的特性;第二,通過借鑒OLAP型數(shù)據(jù)庫的特性,不斷增強(qiáng)OceanBase的AP能力,從而形成了HTAP的能力特性;第三,通過多租戶能力,OceanBase在整個集群內(nèi)部已具備資源的管理調(diào)度和隔離能力;最后一方面,OceanBase具備多模特性,可以更好地支持客戶SQL與NoSQL使用場景。
在演講中楊志豐介紹了OceanBase基于存儲模型與事務(wù)模型基礎(chǔ)提供的Table API接口,這個接口是和SQL在平行的一個位置和層次。在Table API基礎(chǔ)之上,如果應(yīng)用對延時特別敏感,用戶可以直接通過Table API訪問OceanBase Server提供的原生服務(wù),極大地減少網(wǎng)絡(luò)的時延。同時針對某些需要使用HBase特定業(yè)務(wù)場景,基于Table API接口OceanBase研發(fā)團(tuán)隊(duì)還擴(kuò)展了一個HBase API接口,解決了用戶在容災(zāi)演練過程中遇到的困難。
楊志豐還介紹了OceanBase最新的3.2版本,3.2版本提升主要體現(xiàn)在三個方面,優(yōu)化器、SQL執(zhí)行引擎以及向量化的執(zhí)行。楊志豐表示:對于單機(jī)分布式一體化的OceanBase系統(tǒng)來說,我們認(rèn)為時延不再是一個選擇傳統(tǒng)亦或是分布式數(shù)據(jù)庫的絕對標(biāo)準(zhǔn),因?yàn)樵贠ceanBase單機(jī)分布式一體化的設(shè)計(jì)之下,你可以選擇魚與熊掌兼而得之。
二、GaussDB分布式技術(shù)的架構(gòu)實(shí)現(xiàn)
華為GaussDB技術(shù)專家王磊帶來了《GaussDB分布式技術(shù)大揭秘》主題演講。GaussDB分布式集群的架構(gòu)主要由5類組成:運(yùn)維管理模OM組件、集群管理模塊CM組件,全局事務(wù)管理器GTM組件、協(xié)調(diào)節(jié)點(diǎn)CN組件以及數(shù)據(jù)節(jié)點(diǎn)DN組件。GaussDB高性能的關(guān)鍵在于分布式執(zhí)行框架,這個框架會根據(jù)業(yè)務(wù)SQL,生成最優(yōu)執(zhí)行計(jì)劃,該框架主要包含算子下推與并行執(zhí)行兩大核心技術(shù)。
GaussDB有四大特性:第一是高擴(kuò)展性,體現(xiàn)在Scale-out在線橫向擴(kuò)展;第二是高安全,體現(xiàn)在分布式防篡改技術(shù);第三是高自治性,主要體現(xiàn)在AI for DB基礎(chǔ)上;第四是高智能性,主要體現(xiàn)在AI4DB技術(shù)上。
GaussDB高可用架構(gòu)的出發(fā)點(diǎn)是軟硬件全棧冗余和分布式全組件冗余。在硬件層通過磁盤red冗余、雙交換機(jī)冗余、多網(wǎng)卡冗余,UPS電源保護(hù)等技術(shù)提供單點(diǎn)或多點(diǎn)硬件故障下的高可用能力。在軟件層,針對分布式集群中的每一幀組件,均做了組件級冗余。
王磊表示:GaussDB在分布式數(shù)據(jù)庫領(lǐng)域的積累和創(chuàng)新,使其能夠從容應(yīng)對企業(yè)級高性能、高可用、高安全的核心訴求。未來,GaussDB會繼續(xù)在分布式數(shù)據(jù)庫領(lǐng)域堅(jiān)持創(chuàng)新,勇攀高峰。
三、云原生+分布式的現(xiàn)代化數(shù)據(jù)庫—PolarDB-X
阿里云智能數(shù)據(jù)庫PolarDB產(chǎn)品經(jīng)理胡中泉發(fā)表了《PolarDB-X核心技術(shù)能力解讀》主題演講,在演講中他主要介紹了PolarDB-X的整體架構(gòu)以及核心能力。
PolarDB是一款基于分布式技術(shù)架構(gòu),是面向云原生和分布式結(jié)合的方向進(jìn)行技術(shù)演進(jìn)的分布式數(shù)據(jù)庫產(chǎn)品。PolarDB-X整體架構(gòu)主要分4個部分:第一部分CN計(jì)算節(jié)點(diǎn),主要提供分布式SQL引擎,解決分布式事務(wù)協(xié)調(diào)、優(yōu)化器、執(zhí)行器等;第二部分DN存儲節(jié)點(diǎn),主要提供數(shù)據(jù)庫存儲引擎,解決數(shù)據(jù)庫一致性和持久化問題,并提供計(jì)算下推能力;第三部分GMS,全局元數(shù)據(jù)服務(wù),主要提供分布式下域元數(shù)據(jù)和全局授時的服務(wù)。第四部分CDC,提供全一致性的binlog,給下游更好的體驗(yàn)。
CN可以分為協(xié)議層、優(yōu)化器和執(zhí)行器一共三層,第一層協(xié)議層實(shí)現(xiàn)了MySQL最后協(xié)議,提供與云原生MySQL最接近的語法解析服務(wù),負(fù)責(zé)建立連接、接收用戶發(fā)送的數(shù)據(jù)包,組裝成SQL和參數(shù)化傳遞給優(yōu)化器。第二層優(yōu)化器,對于SQL的處理,包括語法解析、校驗(yàn),生成邏輯計(jì)劃,并通過優(yōu)化產(chǎn)生物理執(zhí)行計(jì)劃傳輸給執(zhí)行器,優(yōu)化器使用了Apache的RB和CB融合框架,可以實(shí)現(xiàn)自適應(yīng)的TP和AP區(qū)分執(zhí)行,并且可以提供執(zhí)行計(jì)劃管理的功能。最后一層執(zhí)行器,PolarDB-X的執(zhí)行器接收到物理執(zhí)行計(jì)劃后,會根據(jù)計(jì)劃類型確定執(zhí)行模式。
透明分布式是PolarDB-X核心能力之一,它能讓應(yīng)用在使用PolarDB-X的過程中,給予用戶猶如使用單機(jī)數(shù)據(jù)庫一樣的體驗(yàn)。與傳統(tǒng)中間件的類型的分布式數(shù)據(jù)庫相比,具有透明分布式能力的PolarDB-X不需要應(yīng)用考慮分區(qū)件的概念,應(yīng)用可以完全將單機(jī)上的SQL復(fù)用到分布式數(shù)據(jù)庫上來。同時,PolarDB-X的透明分布式能力,能極大減少從單機(jī)數(shù)據(jù)庫到分布式數(shù)據(jù)庫的遷移成本。
四、OceanBase一站式企業(yè)級原生分布式數(shù)據(jù)庫管理解決方案
OceanBase產(chǎn)品部總經(jīng)理王南帶來了《一站式企業(yè)級原生分布式數(shù)據(jù)庫管理解決方案》主題演講。王南將OceanBase的發(fā)展之路總結(jié)為三大階段,第一個階段為從無到有的構(gòu)建,第二個階段是產(chǎn)品走向通用行業(yè)與場景的階段,而第三個階段OceanBase將在一體化架構(gòu)以及混合負(fù)載和多云多模這兩個方向上發(fā)展。
在思考如何解決海量數(shù)據(jù)給數(shù)據(jù)庫帶來的擴(kuò)展問題過程中,OceanBase通過兩種視角,不同思路解決這一問題。王南表示:第一個視角就是對于開源和商業(yè)的生態(tài)的雙生態(tài)的支持,也就是Oracle生態(tài)及MySQL生態(tài),OceanBase通過雙引擎能夠更好地來同時兼容這兩個生態(tài)。另一個視角則是OceanBase想在數(shù)據(jù)庫層來去解決集中式向分布式演變過程中遇到各種各樣的問題,除了會在語法層面上來去做兼容之外,OceanBase也會在語義以及分布式的內(nèi)核的層面來去做兼容。
王南介紹了今年OceanBase3.X版本對于開發(fā)工具家族的全面升級,在開發(fā)者的OTC工具,運(yùn)維的OCP工具,以及數(shù)據(jù)遷移的OMS工具基礎(chǔ)之外新增了一個OMA工具。OMA工具幫助客戶從集中式到分布式的遷移過程中快速評估以及完成應(yīng)用。在開發(fā)工具方面,OceanBase進(jìn)行了兩大方向的核心能力提升:在整個開發(fā)工具層面構(gòu)建安全管控能力與在應(yīng)用性上進(jìn)行了深度優(yōu)化。同時王南在演講的最后還介紹了OceanBase全新的圖數(shù)據(jù)庫成員圖Graph,這個圖庫可以提供OceanBase在多模和大規(guī)模實(shí)時分析計(jì)算上很強(qiáng)大的能力支撐。
五、湖倉一體釋放全量數(shù)據(jù)價值
巨杉數(shù)據(jù)庫聯(lián)合創(chuàng)始人許建輝為線上開發(fā)者分享了主題為《湖倉一體Data Lakehouse釋放全量數(shù)據(jù)價值》的演講。在湖倉一體化的大趨勢下,產(chǎn)生了諸如數(shù)據(jù)在存儲中相對孤立,產(chǎn)生冗余的問題。同時在海量數(shù)據(jù)趨勢下,也對實(shí)時查詢、實(shí)物保障、靈活分析等能力提出更高的要求。
巨杉數(shù)據(jù)庫通過多模的存儲引擎,能夠同時支持結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化的數(shù)據(jù)的統(tǒng)一存儲,并能夠?qū)崿F(xiàn)統(tǒng)一的事務(wù)和一致性能力。經(jīng)過多模的計(jì)算引擎,能夠?qū)崿F(xiàn)高并發(fā)的連接操作、實(shí)時計(jì)算和海量數(shù)據(jù)分析的能力,同時能夠支持橫向和縱向的海量數(shù)據(jù)的擴(kuò)容,實(shí)現(xiàn)數(shù)據(jù)的存儲和處理。
巨杉數(shù)據(jù)庫是一個全量的數(shù)據(jù)平臺,通過多模存儲引擎等類型產(chǎn)品的數(shù)據(jù)能夠進(jìn)行天然的存儲。通過高并發(fā)的SQL引擎,分區(qū)計(jì)算能力,只查詢并發(fā)計(jì)算,算子下推精準(zhǔn)過濾和高性能的事務(wù),能夠?qū)崿F(xiàn)海量數(shù)據(jù)的并發(fā)查詢和實(shí)時分析。通過流式風(fēng)險(xiǎn)引擎、行列混合存儲、存算分離、高性能的緩存和彈性計(jì)算能力,能夠?qū)崿F(xiàn)靈活的海量數(shù)據(jù)分析。通過統(tǒng)一的元數(shù)據(jù)管理和權(quán)限等,能夠?qū)崿F(xiàn)在多引擎的一致性。
在數(shù)據(jù)容災(zāi)方面,許建輝介紹到:基于巨杉引擎級的一個副本容災(zāi),可以實(shí)現(xiàn)RTO為零,還可以實(shí)現(xiàn)分區(qū)組級別的局部容災(zāi)機(jī)制,盡最大可能保證系統(tǒng)的可能性。面對在整個系統(tǒng)中是部分機(jī)器故障,我們可以采用部分機(jī)器的容災(zāi)切換,從而能夠最大幅度地利用了系統(tǒng)的可行性,而不用產(chǎn)生整個集群的災(zāi)備切換。
六、StarRocks2.0的介紹與前瞻
StarRocks產(chǎn)品負(fù)責(zé)人趙恒帶來了《StarRocks2.0的特性介紹&版本前瞻》主題演講。StarRocks是一款主打急速統(tǒng)一的MPPE數(shù)據(jù)庫,在數(shù)據(jù)分析場景上會有非常廣泛的應(yīng)用。全新的StarRocks2.0致力于將OLAP多維分析、實(shí)時分析、高并發(fā)查詢和Adhoc能夠在一個統(tǒng)一的引擎中進(jìn)行實(shí)現(xiàn)。
趙恒表示:多表分析場景下,我們使用了一個TPCH的測試集,在這個測試集下,我們對比了StarRocks新版本和舊版本有3倍到5倍的性能提升。同時我們在計(jì)算層在RuntimeFilter上也做了一些優(yōu)化。
在實(shí)時更新的場景下,StarRocks2.0實(shí)現(xiàn)了一個Primary key的模型,通過delete and insert的方式,去實(shí)現(xiàn)消除了merge on Reed。在簡單查詢上根據(jù)導(dǎo)入版本數(shù)量的不同可以有3至10余倍的性能提升。
在2.0的版本中,StarRocks重新構(gòu)建了內(nèi)存的管理框架,hook了所有的內(nèi)存分配函數(shù),然后并且基于線程,進(jìn)行內(nèi)存的統(tǒng)計(jì)。在生態(tài)對接方面,StarRocks2.0通過在最近的版本也在過Flick connector上進(jìn)行了很多的優(yōu)化,可以實(shí)現(xiàn)數(shù)據(jù)的精確一次或者至少一次的導(dǎo)入。在讀取方面,新版本實(shí)現(xiàn)了直聯(lián)BE的方式,來滿足大批量讀取數(shù)據(jù)的一個分析需求。在實(shí)施同步方向,通過Flick CDC和遷移工具,實(shí)現(xiàn)了從TP數(shù)據(jù)庫的秒級同步。
七、新一代云原生數(shù)倉OushuDB的架構(gòu)哲學(xué)
歐數(shù)科技數(shù)據(jù)庫首席架構(gòu)師陶征霖分享了《新一代云原生數(shù)倉OushuDB的架構(gòu)哲學(xué)》的主題演講。OushuDB是一款基于云原生的數(shù)據(jù)倉庫,其計(jì)算和存儲是完全分離的,有著多虛擬計(jì)算集群的特性。其次OushuDB通過SIMD的指令級實(shí)現(xiàn)了一個向量化的加速,并能夠完全SQL兼容,支持混合型的負(fù)載。
OushuDB從上往下的體系架構(gòu)有四層,分別為元數(shù)據(jù)集群、主節(jié)點(diǎn)集群、計(jì)算集群以及共享的數(shù)據(jù)層。在OushuDB中,不同的計(jì)算集群可以共享同一份的存儲以及同一份的元數(shù)據(jù),同時在計(jì)算機(jī)接電測實(shí)現(xiàn)了數(shù)據(jù)的緩存。在這樣架構(gòu)下OushuDB可以提供一種更高的并發(fā)度,以及集群間更好的一個資源的隔離。
在云原生的架構(gòu)下,OushuDB有一個彈性的執(zhí)行引擎,用戶可以根據(jù)查詢數(shù)據(jù)量的大小,以及根據(jù)當(dāng)前集群資源的使用情況,動態(tài)地決定調(diào)度多少計(jì)算資源參與計(jì)算。同時OushuDB還有另一大特性是可插拔存儲,不同的存儲可支持不同的負(fù)載。
八、具有數(shù)據(jù)一致性保證的DaaS平臺
MongoDB中文社區(qū)主席 Tapdata Founder&CEO唐建法帶來了主題為《“DeltaLake”on MongoDB:具有數(shù)據(jù)一致性保證的DaaS平臺》。
現(xiàn)在的企業(yè)往往是有幾十套甚至上百套的業(yè)務(wù)系統(tǒng),這些業(yè)務(wù)系統(tǒng)是互不相連的,當(dāng)你需要用數(shù)據(jù)的時候,需要各種API或者是用ETL去抽數(shù)等等,這也就是數(shù)據(jù)孤島的由來。數(shù)據(jù)孤島目前有著非常多的解決方案,例如傳統(tǒng)的ETL、代碼抽數(shù),消息中間件或者是中央化的數(shù)據(jù)平臺。
但現(xiàn)有的方案都存在著局限性,即都是面向AP系統(tǒng)而打造,對于數(shù)據(jù)的分析存在滯后性。而Delta Lake有一套全新的設(shè)計(jì),即在處理過程中,保持著每一小批的數(shù)據(jù)的增量,把這個增量記錄下來,然后可以在這個基礎(chǔ)之上回滾,即可實(shí)現(xiàn)一個相對實(shí)時的數(shù)據(jù)平臺。
而在DeltaLake的啟發(fā)下,唐建法及其研究團(tuán)隊(duì)提供了一個全新的increment data service數(shù)據(jù)平臺。唐建法表示:我們?yōu)門P型用戶提供一個數(shù)據(jù)平臺,不是基于批量的,而是基于實(shí)時的一個模式。它與目前絕大多數(shù)數(shù)據(jù)平臺常用的Hadoop最大的差別,就是我們能夠提供毫秒級、高于Hadoop百倍的查閱性能,然后寫入能夠支持這種及時更新、原地更新。目前我們的數(shù)據(jù)平臺在零售業(yè)、制造業(yè)都有很好的落地。
分布式數(shù)據(jù)庫開源生態(tài)與應(yīng)用分論壇
在開源的大趨勢下,分布式數(shù)據(jù)庫與開源的結(jié)合如同水到渠成一般呈現(xiàn)在開發(fā)者眼前。在接下來的分布式數(shù)據(jù)庫開源生態(tài)與應(yīng)用分論壇上,來自InfoQ、OceanBase、SphereEx、Apache Doris PPMC、CSDN、紅象云騰、Flink CDC Maintainer & Apache Flink Committer、Seata的媒體,企業(yè)與開源社區(qū)負(fù)責(zé)人圍繞開源議題開展了多維度分享。
一、開源分布式數(shù)據(jù)庫及行業(yè)趨勢解析
infoQ主編王一鵬分享了《開源分布式數(shù)據(jù)庫及行業(yè)趨勢解析》的主題演講。 2021年1月,開源許可證流行度首次超過了商業(yè)許可證的流行度,分布式數(shù)據(jù)庫的價值以及它的架構(gòu)上的優(yōu)勢越來越被大家所認(rèn)可。在演講中王一鵬使用 Star、Fork和Commit數(shù)量來對比國內(nèi)外分布式數(shù)據(jù)庫的典型產(chǎn)品。他發(fā)現(xiàn)在國內(nèi)可能一般情況是Star數(shù)量高于Commit數(shù)量,而在國外一般是Commit數(shù)量高于Star數(shù)量。
王一鵬總結(jié)了四點(diǎn)關(guān)于國內(nèi)開源分布式數(shù)據(jù)庫的觀察:
-
關(guān)于開源生態(tài),最重要的是讓社區(qū)大于代碼,相比之下國外更加注重開源生態(tài);
-
數(shù)據(jù)庫研發(fā)門檻非常高;
-
起步晚是國內(nèi)數(shù)據(jù)庫的天然客觀劣勢;
-
做開源分布式數(shù)據(jù)庫,要做好打持久戰(zhàn)的準(zhǔn)備。
對于開源分布式數(shù)據(jù)庫的未來,王一鵬表示:分布式數(shù)據(jù)庫是業(yè)內(nèi)共識的主要技術(shù)潮流之一,PGXC和NewSQL兩種風(fēng)格都有成功的產(chǎn)品。分布式數(shù)據(jù)庫在快速進(jìn)入金融業(yè),革新各大銀行的底層基礎(chǔ)設(shè)施。開源以高效的研發(fā)組織形式,動搖了傳統(tǒng)商業(yè)數(shù)據(jù)庫的根本,同時在人才梯隊(duì)層面開源已經(jīng)形成了技術(shù)創(chuàng)新的閉環(huán)。
二、OceanBase社區(qū)版核心能力解析
OceanBase研發(fā)總監(jiān)&開源負(fù)責(zé)人封仲淹帶來了題為《OceanBase社區(qū)版核心能力解析》的演講。OceanBase歷經(jīng)11年的發(fā)展,從最早的一個簡單的存儲系統(tǒng)不斷創(chuàng)新,自研成為今天的分布式系統(tǒng)。在演講中封仲淹表示:開源是一種很好的聯(lián)結(jié)上下游開發(fā)商、用戶和開發(fā)者不斷打磨產(chǎn)品的有效方式。
在社區(qū)發(fā)展上,OceanBase的社區(qū)用戶已經(jīng)超過23000名,外部超過100名開發(fā)者,與超過100名的企業(yè)用戶進(jìn)行了深度的探索,進(jìn)行了POC。在社區(qū)建設(shè)上,OceanBase的GitHub點(diǎn)贊數(shù)已經(jīng)超過4000次,F(xiàn)ork超過860多個,Commit數(shù)超過640次。在最為關(guān)鍵的社區(qū)活躍度上,OceanBase社區(qū)每日和用戶的溝通次數(shù)超過了300次,并且社區(qū)問答數(shù)迄今為止已經(jīng)超過4600次,在技術(shù)上與超過3500名開發(fā)者進(jìn)行了深度的交流。
同時在演講中,封仲淹分享了OceanBase在支付寶、中汽知投、TPCC測試、短視頻廠商以及銀行的“兩地三中心”中的實(shí)際案例,通過六大應(yīng)用場景詳盡地體現(xiàn)了OceanBase的高可用、低成本、高擴(kuò)展以及HTAP混合負(fù)載能力。
封仲淹介紹了OceanBase社區(qū)版3.1.2版本中最新推出的社區(qū)版工具體系中的五大特性:
OMS社區(qū)版:OMS是OceanBase提供的一站式數(shù)據(jù)庫傳輸產(chǎn)品,支持多種關(guān)系數(shù)據(jù)庫以及消息隊(duì)列等數(shù)據(jù)終端與OceanBase之間的數(shù)據(jù)復(fù)制。
OCP社區(qū)版:OCP是OceanBase的管控平臺,可以大幅降低DBA和運(yùn)維的壓力。
ODC支持社區(qū)版:ODC是客戶端開發(fā)套件,能夠使用戶更加方便地管理和使用OceanBase,管理表、視圖、庫等存儲對象,進(jìn)行SQL的操作,以及導(dǎo)入導(dǎo)出等高級功能。
秒殺熱點(diǎn)行優(yōu)化:秒殺熱點(diǎn)行優(yōu)化核心是進(jìn)行提前解行鎖,將過去事務(wù)中的占時最大的日志刷盤和同步進(jìn)行解行鎖。在性能測試中,優(yōu)化后性能提升了超過4倍。
開放Table API和HBase的API:簡化了運(yùn)維流程的同時,可以保障開發(fā)人員不用擔(dān)心GC和抖動問題。同時提供了更快的性能,如scan性能提升2.42倍,insert性能提升1.7倍。
三、分布式數(shù)據(jù)庫下的Proxy與Proxyless架構(gòu)
SphereEx創(chuàng)始人張亮發(fā)表了《分布式數(shù)據(jù)庫下的Proxy與Proxyless》的主題演講。分布式數(shù)據(jù)庫的現(xiàn)狀主要是從單一化向多樣化去發(fā)展,隨著應(yīng)用場景越來越多,數(shù)據(jù)量越來越大,并發(fā)越來越高,吞吐量的要求越來越高,用一款數(shù)據(jù)庫去適用所有場景是不可能的。現(xiàn)有的異構(gòu)數(shù)據(jù)庫存在著數(shù)據(jù)庫訪問協(xié)議、SQL方言、存儲接口和結(jié)構(gòu)均不同、以及數(shù)據(jù)庫間無協(xié)作能力的痛點(diǎn)。同時異構(gòu)數(shù)據(jù)服務(wù)也存在著單一數(shù)據(jù)庫周邊服務(wù)無法復(fù)制、難于處理多源數(shù)據(jù)庫的共性需求痛點(diǎn)。
ApacheShardingSphere提出了一個叫做Database Plus的概念,這個概念的目標(biāo)就是希望構(gòu)建數(shù)據(jù)庫上層生態(tài)和標(biāo)準(zhǔn)。開發(fā)者可以使用標(biāo)準(zhǔn)的SQL和原生的數(shù)據(jù)庫協(xié)議,通過ShardingSphere去訪問異構(gòu)的多元化數(shù)據(jù)庫。同時在可插拔架構(gòu)之上ShardingSphere提供了增量的能力,可以讓用戶、開發(fā)者通過ShardingSphere提供的頂級接口進(jìn)行能力的開發(fā)。
張亮介紹了ShardingSphereProxy、JDBC、Proxyless三大架構(gòu)模式。其中Proxy有著跨語言、零侵入、隔離業(yè)務(wù)和數(shù)據(jù)計(jì)算資源的優(yōu)勢,但性能較低。而JDBC機(jī)構(gòu)有著性能高、零侵入的優(yōu)勢,但其缺點(diǎn)也較為明顯,僅支持Java且占用業(yè)務(wù)資源。而在演講中張亮也提出了ShardingSphere Mesh架構(gòu)設(shè)想,這一架構(gòu)能夠提供配置治理、流量治理以及部署治理的能力。
四、Apache Doris——極速易用的OLAP數(shù)據(jù)庫
ApacheDoris PMC&百度資深研發(fā)工程師楊政國分享了《Apache Doris——極速易用的OLAP數(shù)據(jù)庫》的主題演講。
Doris是由百度自主研發(fā)并貢獻(xiàn)給Apache社區(qū)的一個MPP架構(gòu)分析型數(shù)據(jù)庫產(chǎn)品,目前是國內(nèi)唯一的分析型數(shù)據(jù)庫孵化項(xiàng)目。Doris全面兼容MySQL的網(wǎng)絡(luò)協(xié)議,簡單易用,不依賴任何外部組件。Doris通過精心設(shè)計(jì)的MPP框架、向量化執(zhí)行引擎、智能物化視圖等多種技術(shù),能夠?qū)崿F(xiàn)對于海量數(shù)據(jù)的毫秒/秒級響應(yīng),適用于高并發(fā)、高吞吐、低延時等等多場景的需求。
Doris基于高效的列存和現(xiàn)代化的MPP框架能夠?qū)崿F(xiàn)非常極致的查詢性能。由于其完全兼容MySQL的網(wǎng)絡(luò)協(xié)議以及標(biāo)準(zhǔn)的SQL,開發(fā)者可以非常方便地將Doris與現(xiàn)有的系統(tǒng)進(jìn)行融合。同時Doris能夠支持離在線一體,通過靈活的資源配置策略,能夠支持離線的大吞吐和高并發(fā),適應(yīng)非常豐富的場景。
楊政國在演講中表示:我們實(shí)現(xiàn)了三種非常精巧的數(shù)據(jù)模型。第一種是聚合模型,會根據(jù)相同的key對Value進(jìn)行預(yù)先的聚合,通過提前聚合提升查詢的性能。另外我們也實(shí)現(xiàn)了Unique Key主鍵唯一模型,key相同的時候會對Value進(jìn)行去重,從而我們也實(shí)現(xiàn)了精確去重和行級更新。另外我們也實(shí)現(xiàn)了明細(xì)模型,我們不需要提前聚合數(shù)據(jù),實(shí)現(xiàn)快速排序,能夠存儲更多的明晰數(shù)據(jù)。
五、從CSDN社區(qū)來看開源數(shù)據(jù)庫的發(fā)展趨勢
CSDN開源平臺負(fù)責(zé)人謝志鋒帶來了《從CSDN社區(qū)看開源數(shù)據(jù)庫的發(fā)展趨勢》的主題演講。他談到,數(shù)據(jù)庫本身的演進(jìn)歷史是一個從技術(shù)驅(qū)動到需求驅(qū)動、從單一到多樣的過程,其中也誕生了諸如CAP理論、事務(wù)ACID原則、BASE原理(NoSql、分布式)、一致性算法等重要理論原則。在數(shù)據(jù)庫全新的技術(shù)時代下,一定會有大量的新型數(shù)據(jù)庫出現(xiàn),同時開源一定在其中占據(jù)很大的比重。
從CSDN網(wǎng)站中能夠看出數(shù)據(jù)庫這個話題在開發(fā)者當(dāng)中非常重要,排名前20的數(shù)據(jù)庫在CSDN上都有超過20萬的資源、搜索量和下載量。目前CSDN已經(jīng)做了一個開源的托管平臺GitCode,國內(nèi)主流的傳統(tǒng)、新興數(shù)據(jù)庫廠商大部分都已經(jīng)入駐。
從CSDN的BI大數(shù)據(jù)查詢訴求出發(fā),CSDN的BI數(shù)據(jù)目前已經(jīng)超過了70T,支持公司內(nèi)部的業(yè)務(wù)分析以及CSDN用戶的智能推薦功能。謝志鋒表示:為了優(yōu)化查詢,我們從租戶使用,數(shù)據(jù)表管理,數(shù)據(jù)輸出三個方面做了優(yōu)化。在實(shí)踐過程中我們發(fā)現(xiàn)OceanBase能夠兼容MySQL所有的功能,遷移的門檻也很低,尤其是它的連接數(shù)很大,要求的數(shù)據(jù)量又很多。在需要分庫分表且NoSql查詢無法滿足的情況下,OceanBase就非常適用。
六、OceanBase及Hadoop在PB級大數(shù)據(jù)場景下的應(yīng)用探索
紅象云端創(chuàng)始人&Hadoop技術(shù)講師童小軍分享了題為《OceanBase及Hadoop在PB級大數(shù)據(jù)場景下的應(yīng)用探索》的演講。紅象云端旗下的Redoop Enterprise產(chǎn)品基于大數(shù)據(jù)場景需求的多樣性打造,整個Hadoop架構(gòu)包含了幾十個不同的開發(fā)軟件,通過組合的方式完成各種各樣的需求,包含批處理需求、實(shí)時需求,云計(jì)算需求,以此服務(wù)整個企業(yè)。
童小軍表示:在選擇分布式數(shù)據(jù)庫時,我們列了一些必要的標(biāo)準(zhǔn)。首先是開源開放,同時分布式數(shù)據(jù)庫需要具備高可用與線性擴(kuò)展能力,與Hadoop比較接近。第三要求這款產(chǎn)品具有強(qiáng)大而事務(wù)處理能力以彌補(bǔ)Hadoop在事務(wù)處理能力的不足,最后需要與MySQL、Oracle有很好的兼容性,最終我們選擇了OceanBase。
在演講中童小軍介紹了Hadoop與OceanBase組合服務(wù)的客戶案例。在新能源光伏電力大數(shù)據(jù)上線的案例中,OceanBase+Redoop Enterprise的平臺服務(wù)于數(shù)據(jù)接口、系統(tǒng)應(yīng)用、報(bào)表展現(xiàn)、可視化等一系列功能,形成了一個敏捷的,統(tǒng)一的電力行業(yè)大數(shù)據(jù)平臺。在通信領(lǐng)域的大數(shù)據(jù)案例中,通過Redoop Enterprise平臺部署了一系列安裝、監(jiān)控、運(yùn)維等各種組件,OceanBase在中間承擔(dān)了關(guān)鍵的替換MySQL的任務(wù)。
七、基于 Flink CDC的全增量一體化數(shù)據(jù)集成方案
FlinkCDC Maintainer & Apache Flink Committer徐榜江發(fā)表了《基于Flink CDC的全增量一體化數(shù)據(jù)集成方案》的主題演講。通常來講CDC技術(shù)主要是面向數(shù)據(jù)庫的變更,用于捕獲數(shù)據(jù)庫中數(shù)據(jù)變更的技術(shù)。而Flink CDC將傳統(tǒng)的數(shù)據(jù)庫CDC技術(shù)跟Flink 底層的log機(jī)制進(jìn)行深度結(jié)合,再利用Flink 優(yōu)秀的管道能力和豐富的上下游生態(tài),將CDC數(shù)據(jù)通過加工后同步到下游。
在入湖架構(gòu)中,F(xiàn)linkCDC提供了全增量實(shí)時同步能力,能夠做到不影響業(yè)務(wù)的穩(wěn)定性,將數(shù)據(jù)的產(chǎn)出提高到分鐘級別。同時,F(xiàn)linkCDC能夠做到全量和增量的一體化同步,一個組件、一條鏈路就解決需求,其鏈路更短,組件更少。
在演講中徐榜江介紹了基于Flink CDC做全增量一體化數(shù)據(jù)集成有四個核心特性,分別是增量快照讀取、存儲寫入友好、支持異構(gòu)數(shù)據(jù)融合、支持分庫分表合并。在最后徐榜江分享了Flink CDC開源社區(qū)最新的動態(tài),除了版本高速更新外,在GitHub的十大年度增長中,F(xiàn)link CDC的增長超過330%,目前已經(jīng)到了1500左右。
八、基于 Seata &OceanBase 在微服務(wù)架構(gòu)下的數(shù)據(jù)一致性解決方案
Seata開源社區(qū)負(fù)責(zé)人季敏帶來了主題為《基于 Seata &OceanBase 在微服務(wù)架構(gòu)下的數(shù)據(jù)一致性解決方案》的演講。根據(jù)Seata在2019年在微服務(wù)市場中做的調(diào)差顯示,分布式服務(wù)是微服務(wù)中最大的痛點(diǎn)。分布式事務(wù)的主要業(yè)務(wù)場景可以歸為三類,一種是跨庫,例如Oracle到MySQL的遷移,另一種是跨服務(wù),最后一種是資源多樣性。
關(guān)于Seata社區(qū)的演進(jìn),Saeta最初的定位是開源的分布式事務(wù)解決方案。對市面上主流的數(shù)據(jù)庫,Seata都進(jìn)行了廣泛地支持。Seata從概念上定義了分布式事務(wù)的角色,在原生的Oracle XA角色,又?jǐn)U展了TCC角色扮演獨(dú)立的協(xié)調(diào)性,增強(qiáng)了事務(wù)邊界的可擴(kuò)展性。同時Seata通過抽象出實(shí)物模型框架Framework,并將AT、TCC、Saga、XA模式融入其中進(jìn)行了重塑。
季敏表示:Seata未來長期的發(fā)展路徑就是支持更多數(shù)據(jù)庫生態(tài),這樣的話就可以做到我們在業(yè)務(wù)的應(yīng)用中可以無縫地使用各種數(shù)據(jù)庫。當(dāng)我們做到這一點(diǎn),Seata跟數(shù)據(jù)庫生態(tài)的集成就是一個完全透明、非常緊密的結(jié)合,我們也期待著未來Seata能支持?jǐn)?shù)據(jù)庫生態(tài)中有更好的應(yīng)用架構(gòu)。