【天極網(wǎng)IT新聞?lì)l道】“云原生”在2020年成為備受矚目的熱詞,云原生在確保企業(yè)數(shù)字化轉(zhuǎn)型中資源快速供給、按需使用的同時(shí),支持敏捷的應(yīng)用開發(fā)、穩(wěn)定的交付運(yùn)維,加速企業(yè)的敏捷創(chuàng)新,是企業(yè)數(shù)字化轉(zhuǎn)型、智能化升級(jí)的必經(jīng)之路。
12月30日,在云原生2.0技術(shù)峰會(huì)上,GaussDB(DWS)云原生數(shù)據(jù)倉庫架構(gòu)師為大家深度解讀了GaussDB(DWS)深度技術(shù)。
關(guān)鍵能力1-融:云原生架構(gòu),支持跨源數(shù)據(jù)融合分析、冷熱數(shù)據(jù)分級(jí)存儲(chǔ)
融合分析能力是云原生數(shù)據(jù)倉庫GaussDB(DWS)核心亮點(diǎn)之一。GaussDB(DWS)采用用一套SQL引擎,支持Oracle、MySQL、HDFS等多源數(shù)據(jù)融合分析,并通過算子下推、加速集群等技術(shù)對(duì)分析性能進(jìn)行了大幅優(yōu)化,在數(shù)據(jù)免搬遷的前提下,實(shí)現(xiàn)了跨源數(shù)據(jù)免搬遷、高效分析。
GaussDB(DWS)云原生數(shù)據(jù)倉庫支持冷熱數(shù)據(jù)多溫存儲(chǔ),熱數(shù)據(jù)存儲(chǔ)于數(shù)倉內(nèi)部,以獲得良好的查詢分析性能,冷數(shù)據(jù)可分級(jí)存儲(chǔ)到更低成本的OBS中,不僅降低存儲(chǔ)成本,并且在OBS內(nèi),通過合法鑒權(quán),數(shù)據(jù)能夠共享開放,供其他引擎處理分析,GaussDB(DWS)當(dāng)前已經(jīng)支持表內(nèi)不同分區(qū)間的冷熱數(shù)據(jù)存儲(chǔ),未來還將支持更細(xì)粒度、更加智能的冷熱數(shù)據(jù)管理。
關(guān)鍵能力2-快:聚合云海量算力,軟硬垂直優(yōu)化,效率最優(yōu)
第二大特點(diǎn),快。GaussDB(DWS)主要通過多層級(jí)全并行架構(gòu)來實(shí)現(xiàn)。
并行的第一個(gè)層級(jí),是集群內(nèi)物理節(jié)點(diǎn)間的并行,CN將計(jì)劃動(dòng)態(tài)分布到多個(gè)服務(wù)器,通過分布式執(zhí)行框架,將查詢計(jì)劃在集群內(nèi)多臺(tái)物理節(jié)點(diǎn)并行執(zhí)行;
第二個(gè)層級(jí),是算子級(jí)并行,在每個(gè)服務(wù)器內(nèi),查詢算子能夠利用一個(gè)節(jié)點(diǎn)內(nèi)多個(gè)CPU核心進(jìn)行并行計(jì)算;
第三個(gè)層級(jí),是在一個(gè)CPU核心的指令序列中支持SIMD指令,結(jié)合我們的向量化引擎,實(shí)現(xiàn)一個(gè)指令同時(shí)操作多條數(shù)據(jù)。
同時(shí),我們還集成了現(xiàn)代編譯器技術(shù),利用LLVM框架,運(yùn)行時(shí)動(dòng)態(tài)生成執(zhí)行代碼,減少無關(guān)指令生成;數(shù)據(jù)量越大,可獲得的性能提升效果越好。
正是因?yàn)橛羞@樣一個(gè)全并行計(jì)算引擎,我們可以將系統(tǒng)資源最大化利用,提供極致的分析性能。
隨著金融風(fēng)控,以及IoT場(chǎng)景對(duì)數(shù)據(jù)實(shí)時(shí)處理分析的訴求,我們正式發(fā)布了GaussDB(DWS)實(shí)時(shí)數(shù)倉版本,快上加快,將快發(fā)揮到極致。
實(shí)時(shí)數(shù)倉的快主要體現(xiàn)在兩個(gè)方面。首先是入庫速度快,與傳統(tǒng)數(shù)倉不同,數(shù)據(jù)的加載不再是T+1的大批量加載模式,而是更加實(shí)時(shí)的高并發(fā)小批量模式。DWS實(shí)時(shí)數(shù)倉時(shí)序數(shù)據(jù)單機(jī)入庫性能達(dá)10w/s,流數(shù)據(jù)達(dá)60w/s,并能夠線性擴(kuò)展。其次是計(jì)算分析快,支持基于流式數(shù)據(jù)的持續(xù)計(jì)算查詢,預(yù)置了豐富的時(shí)序和流處理函數(shù),通過SQL即可完成復(fù)雜流式計(jì)算,可實(shí)現(xiàn)億級(jí)數(shù)據(jù),秒級(jí)聚合。
正所謂一切皆SQL,經(jīng)歷了幾十年的發(fā)展,SQL依然是最簡(jiǎn)潔高效的數(shù)據(jù)開發(fā)語言,能極大的簡(jiǎn)化應(yīng)用開發(fā)。以Druid監(jiān)控的一個(gè)場(chǎng)景為例,原先1900行的腳本,在GaussDB(DWS)實(shí)時(shí)數(shù)倉中采用SQL語句,僅用150行代碼就能實(shí)現(xiàn)同樣的功能,開發(fā)效率提升10+倍。
關(guān)鍵能力3-大:云分布式、按需擴(kuò)展,支持10PB級(jí)數(shù)據(jù),大而有序
第三個(gè)特點(diǎn),大。我們?cè)赟hared-Nothing全分布式架構(gòu)下,不僅實(shí)現(xiàn)了容量線性擴(kuò)展,在數(shù)據(jù)加載、數(shù)據(jù)分析性能上同樣實(shí)現(xiàn)了線性擴(kuò)展,從小集群逐步擴(kuò)展到大集群規(guī)模過程中,隨著節(jié)點(diǎn)數(shù)增加,線性擴(kuò)展比可以高達(dá)0.9。
從技術(shù)上看,大集群需要攻克通信風(fēng)暴、故障容錯(cuò)和數(shù)據(jù)備份恢復(fù)一致性三大難題。我們通過獨(dú)創(chuàng)的Multi-Streams多流通信技術(shù),支持集群內(nèi)百億級(jí)的通信連接,突破了大規(guī)模通信的技術(shù)瓶頸。在高可用方面,大規(guī)模集群下硬件故障成為常態(tài),我們積累了多年,做了大量硬件故障感知及容錯(cuò)處理的工作,來保證大規(guī)模集群下的集群自愈和業(yè)務(wù)可用。在備份恢復(fù)方面,我們不僅通過多層級(jí)并行實(shí)現(xiàn)了線性擴(kuò)展,還做到了完全在線的全局強(qiáng)一致物理備份,甚至支持表級(jí)別的細(xì)粒度恢復(fù),競(jìng)爭(zhēng)力達(dá)到了業(yè)界領(lǐng)先。
GaussDB(DWS)現(xiàn)網(wǎng)運(yùn)行的PB級(jí)數(shù)據(jù)量以上的大集群已經(jīng)有10+個(gè),最大商用單集群規(guī)模達(dá)到240節(jié)點(diǎn)。在產(chǎn)品能力上,GaussDB(DWS)可擴(kuò)展至2048節(jié)點(diǎn),并且該規(guī)模在12月已通過信通院的權(quán)威評(píng)測(cè),樹立了業(yè)界新標(biāo)桿。另外,我們還實(shí)現(xiàn)了邏輯集群特性,一套物理集群可針對(duì)不同業(yè)務(wù)劃分多個(gè)邏輯集群,數(shù)據(jù)相互隔離,支持跨邏輯集群的計(jì)算資源調(diào)動(dòng)。通過邏輯集群,可以進(jìn)一步擴(kuò)展集群的規(guī)模。
關(guān)鍵能力4-穩(wěn):高可用設(shè)計(jì),支持跨AZ容災(zāi),數(shù)據(jù)無憂、永遠(yuǎn)在線
第四大特點(diǎn),穩(wěn)。首先,產(chǎn)品所有內(nèi)部組件CN、DN、GTM、CM等采用多活或主備設(shè)計(jì),通過集群管理進(jìn)行故障檢測(cè)和切換。其次,在硬件層面,除了最基本的宕機(jī)、斷網(wǎng)的直接故障外,GaussDB(DWS)還針對(duì)夯死、慢節(jié)點(diǎn)、亞健康等僵而不死的復(fù)雜場(chǎng)景,做了大量的建模和針對(duì)性優(yōu)化,能夠?qū)崿F(xiàn)故障的準(zhǔn)確探測(cè)和自愈。
在數(shù)據(jù)可靠性方面,對(duì)于數(shù)倉而言,數(shù)據(jù)存一份有單點(diǎn)故障問題,存三份又太浪費(fèi)資源,一般來講數(shù)據(jù)一主一備是個(gè)相對(duì)合理的選擇,但在故障造成網(wǎng)絡(luò)分區(qū)的場(chǎng)景下,很容易出現(xiàn)雙主“腦裂”問題,造成數(shù)據(jù)不一致。GaussDB(DWS)獨(dú)創(chuàng)的“主-備-從”技術(shù),引入“主”、“備”、“從”三種角色。集群正常時(shí)數(shù)據(jù)僅在主備間進(jìn)行同步,發(fā)生單點(diǎn)故障時(shí)數(shù)據(jù)向“從”同步,從而保證任何狀況下都有兩副本的數(shù)據(jù)冗余。在網(wǎng)絡(luò)分區(qū)等異常場(chǎng)景下,一旦主備產(chǎn)生數(shù)據(jù)分叉,從備又可以承擔(dān)仲裁者的角色,通過日志比對(duì)找到持有正確數(shù)據(jù)的節(jié)點(diǎn)繼續(xù)提供服務(wù)。從而既完美解決了一主一備的腦裂問題,又能夠僅用兩副本空間代價(jià)實(shí)現(xiàn)接近三副本的可靠性。
對(duì)于可靠性要求更高的客戶,我們還提供了雙集群容災(zāi)能力,通過跨AZ、跨Region的物理復(fù)制,實(shí)現(xiàn)異構(gòu)集群容災(zāi)。
時(shí)間有限,我們本次只粗略介紹了GaussDB(DWS)高可用技術(shù)的一小部分,通過多年的技術(shù)積累,我們基本做到了“數(shù)據(jù)無憂、永遠(yuǎn)在線”的目標(biāo)。
關(guān)鍵能力5-易:快速遷移傳統(tǒng)數(shù)倉,助力企業(yè)輕松上云
第五個(gè)特點(diǎn),易。利用GaussDB(DWS)的遷移工具,用戶能夠非常容易的將數(shù)據(jù)從線下的Teradata、Oracle等傳統(tǒng)數(shù)倉快速搬遷上云。
遷移主要分為應(yīng)用遷移和數(shù)據(jù)遷移兩部分。
應(yīng)用遷移是指由于線下傳統(tǒng)數(shù)據(jù)倉庫的語法及功能不同,導(dǎo)致業(yè)務(wù)腳本、存儲(chǔ)過程等需要改造適配,為此,GaussDB(DWS)把深耕市場(chǎng)多年、成功遷移數(shù)十套Teradata和Oracle數(shù)倉的成功經(jīng)驗(yàn),開發(fā)為一套完整的語法遷移工具,能夠支持對(duì)數(shù)據(jù)類型、SQL語法、DSQL腳本、存儲(chǔ)過程等語法的自動(dòng)化轉(zhuǎn)換,對(duì)Teradata的常用語法自動(dòng)化轉(zhuǎn)換率超過90%,對(duì)Oracle超過60%。
對(duì)于動(dòng)輒幾十TB、數(shù)百TB的海量數(shù)據(jù)而言,數(shù)據(jù)遷移速度極大程度影響業(yè)務(wù)停機(jī)的時(shí)間,這對(duì)網(wǎng)絡(luò)、入庫能力和遷移工具的效率都提出了很高的要求,以我們?nèi)ツ甑哪炒螖?shù)據(jù)搬遷為例,1PB的數(shù)據(jù)僅用11小時(shí)即完成傳輸,加上準(zhǔn)備工作和數(shù)據(jù)校驗(yàn)的時(shí)間,端到端也僅用時(shí)17小時(shí),搬遷速率91TB/小時(shí),并且做到數(shù)據(jù)0丟失。
GaussDB(DWS)已經(jīng)過近10年的技術(shù)沉淀,服務(wù)于全球1000+客戶,廣泛應(yīng)用于金融、政府、運(yùn)營商、交通、物流、互聯(lián)網(wǎng)等領(lǐng)域。
篇幅有限,本次簡(jiǎn)單解讀GaussDB(DWS)的幾個(gè)關(guān)鍵能力,了解更多內(nèi)容請(qǐng)進(jìn)入華為云官網(wǎng)。
https://www.huaweicloud.com/product/dws.html