StarRocks葉謙:新一代MPP數(shù)據(jù)庫(kù)助力企業(yè)打造“極速統(tǒng)一”數(shù)據(jù)分析新范式 | 甲子引力

2022-04-29 18:08:01來源:甲子光年微信號(hào)  

數(shù)據(jù)分析能力是企業(yè)全面數(shù)字化經(jīng)營(yíng)的核心。

整理 | 蘇霍伊

編輯 | 栗子

4月27日,中國(guó)科技產(chǎn)業(yè)智庫(kù)「甲子光年」線上舉辦了2022年「甲子引力X」數(shù)字經(jīng)濟(jì)高峰論壇。本次論壇以“產(chǎn)業(yè)科創(chuàng)新坐標(biāo)(603040)”為主題,試圖在有限性、無(wú)限性和不確定性中尋找數(shù)字經(jīng)濟(jì)的“坐標(biāo)系”。

在下午的“數(shù)字生產(chǎn)力”專場(chǎng)中,StarRocks聯(lián)合創(chuàng)始人&COO葉謙帶來了《全新數(shù)據(jù)分析能力賦能數(shù)字生產(chǎn)力全面升級(jí)》的主題演講。他認(rèn)為,數(shù)據(jù)分析是企業(yè)數(shù)字生產(chǎn)力的核心,新一代極速全場(chǎng)景MPP數(shù)據(jù)庫(kù)StarRocks的價(jià)值便是釋放數(shù)字生產(chǎn)力。

以下為葉謙的演講實(shí)錄:

大家好,我是StarRocks聯(lián)合創(chuàng)始人&COO 葉謙,很高興能參加甲子引力數(shù)字經(jīng)濟(jì)高峰論壇,和大家分享一些StarRocks對(duì)于數(shù)據(jù)分析和數(shù)字生產(chǎn)力的思考。

近年來有關(guān)數(shù)字的內(nèi)容一直是企業(yè)關(guān)注的熱門話題。隨著企業(yè)數(shù)字化轉(zhuǎn)型不斷深入,數(shù)據(jù)驅(qū)動(dòng)的概念越來越被各行各業(yè)所接受,想要真正實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)并將數(shù)字轉(zhuǎn)換成生產(chǎn)力,核心就是數(shù)據(jù)分析的能力。

國(guó)際著名分析機(jī)構(gòu)Gartner在2021年數(shù)據(jù)和分析趨勢(shì)報(bào)告中指出,數(shù)據(jù)分析已經(jīng)成為企業(yè)一項(xiàng)核心業(yè)務(wù)職能。企業(yè)的各個(gè)業(yè)務(wù)線開始打破原有的數(shù)據(jù)孤島將數(shù)據(jù)整合起來分析,以發(fā)掘更大的業(yè)務(wù)價(jià)值。與此同時(shí),美國(guó)著名投資機(jī)構(gòu)A16Z的報(bào)告也顯示,2021年國(guó)際著名投資機(jī)構(gòu)對(duì)于數(shù)據(jù)相關(guān)的企業(yè)異常關(guān)注,紛紛投下重注。2021年各個(gè)海外著名投資機(jī)構(gòu)在有前景的數(shù)據(jù)創(chuàng)業(yè)類公司中投下的資金量是2020年超3倍,各類分析報(bào)告均指向了同一事實(shí):數(shù)據(jù)分析已經(jīng)成為企業(yè)數(shù)字生產(chǎn)力的核心。

StarRocks 成立兩年多來傾力打造世界頂級(jí)的新一代極速全場(chǎng)景 MPP 數(shù)據(jù)庫(kù),就是希望能夠幫助企業(yè)建立“極速統(tǒng)一”的數(shù)據(jù)分析新范式,從而實(shí)現(xiàn)企業(yè)全面數(shù)字化經(jīng)營(yíng)。

StarRocks高度注重技術(shù)驅(qū)動(dòng),公司研發(fā)人員比例達(dá)到70%。StarRocks 采用Open Core的模式,于去年9月份開放源代碼之后,在Github上的星數(shù)已超過2400個(gè)。當(dāng)前已經(jīng)有超過110家估值或市值在10億美金以上的中大型用戶,在生產(chǎn)環(huán)境中使用StarRocks,這些用戶來自于各行各業(yè)。

1.極速統(tǒng)一的新一代數(shù)據(jù)架構(gòu)

我們的產(chǎn)品特性可以用兩個(gè)關(guān)鍵詞總結(jié):極速、統(tǒng)一。主要從4個(gè)核心價(jià)值來理解。

首先,StarRocks可以給公司業(yè)務(wù)帶來全新的業(yè)務(wù)洞察速度。對(duì)于任意維度的OLAP分析和AdHoc查詢,StarRocks都可以做到秒級(jí)反饋,讓數(shù)據(jù)分析人員擁有極速的體驗(yàn)。StarRocks 單節(jié)點(diǎn)每秒可以處理多達(dá)100億行數(shù)據(jù),綜合處理查詢速度比其他產(chǎn)品要快10到100倍。

其次,StarRocks可以給業(yè)務(wù)帶來全新的業(yè)務(wù)洞察實(shí)時(shí)性。數(shù)據(jù)實(shí)時(shí)導(dǎo)入StarRocks可實(shí)現(xiàn)即時(shí)可見。不僅如此,StarRocks還支持?jǐn)?shù)據(jù)更新操作,數(shù)據(jù)在實(shí)時(shí)導(dǎo)入和更新的時(shí)候,查詢的速度依然能夠表示在秒級(jí)。對(duì)于業(yè)務(wù)數(shù)據(jù)更新需求大的用戶來說是非常友好的特性;

第三,StarRocks支持?jǐn)?shù)千人同時(shí)進(jìn)行數(shù)據(jù)分析工作。對(duì)那些需要數(shù)據(jù)驅(qū)動(dòng)一線運(yùn)營(yíng)的公司來說,在部分場(chǎng)景StarRocks可以到達(dá)1萬(wàn)以上并發(fā)量,并且還可以控制TP99在1秒以內(nèi)。

第四,由于能夠在多種場(chǎng)景下實(shí)現(xiàn)極速查詢的目標(biāo),這使得StarRocks可以靈活使用各種數(shù)據(jù)建模的方式,數(shù)據(jù)工程師和數(shù)據(jù)分析師可以使用大寬表,也可以使用星型模型或者雪花模型。不再依賴于預(yù)計(jì)算或者大寬表去提速,業(yè)務(wù)交互的速度可以得到極大改善。不少用戶在使用StarRocks之后,業(yè)務(wù)速度從周加快到小時(shí),甚至是分鐘級(jí)別,生產(chǎn)力得到極大提升。

基于StarRocks,用戶可以打造一個(gè)全新的極速統(tǒng)一的數(shù)據(jù)架構(gòu)。在這個(gè)數(shù)據(jù)架構(gòu)里,整個(gè)OLAP分析層可以統(tǒng)一到StarRocks中,它不僅能實(shí)現(xiàn)OLAP多維分析、實(shí)時(shí)數(shù)據(jù)分析、高并發(fā)查詢以及探索式分析等多場(chǎng)景下的極速分析效果,還可以極大減少不同數(shù)據(jù)分析組件的建設(shè)和維護(hù)成本。應(yīng)用新一代數(shù)據(jù)架構(gòu)之后,企業(yè)可以在更多場(chǎng)景使用星型模型、雪花模型來替代原有的預(yù)計(jì)算和大寬表模式,免除了數(shù)據(jù)鏈路建設(shè)復(fù)雜性,并且增強(qiáng)了數(shù)據(jù)分析的靈活性。

作為一個(gè)成熟的企業(yè)級(jí)數(shù)據(jù)庫(kù)產(chǎn)品,StarRocks不僅產(chǎn)品安全穩(wěn)定、服務(wù)可靠,生態(tài)也很完善。

首先,StarRocks是一個(gè)完整、獨(dú)立的系統(tǒng),整個(gè)系統(tǒng)無(wú)單點(diǎn),任何節(jié)點(diǎn)宕機(jī)均不影響系統(tǒng)的可用性。StarRocks具有很好的彈性伸縮能力,可以實(shí)現(xiàn)在大數(shù)據(jù)規(guī)模下在線擴(kuò)容,相對(duì)其他產(chǎn)品運(yùn)維成本更低。更值得一提的是StarRocks的穩(wěn)定性,經(jīng)歷過“雙十一”這樣極端業(yè)務(wù)流量的檢驗(yàn)。

其次,StarRocks相關(guān)生態(tài)非常完善。產(chǎn)品支持標(biāo)準(zhǔn)SQL語(yǔ)法,兼容MySQL協(xié)議,支持各類主流的BI系統(tǒng),包括Tableau 、永洪等,支持各類主流數(shù)據(jù)源的接入,包括各種TB數(shù)據(jù)庫(kù)、HDFS、S3等。

StarRocks周邊運(yùn)維工具也比較完善,不僅有自研的運(yùn)維工具,還可以很方便對(duì)接各類流行的開源工具。

最后,StarRocks提供了可靠的企業(yè)級(jí)服務(wù)保證。StarRocks核心技術(shù)完全自研可控,在出現(xiàn)問題時(shí),可以為企業(yè)客戶提供全天候不休的原廠技術(shù)支持。我們?cè)谌珖?guó)六地都有技術(shù)支持中心,包括北京、上海、杭州、廣州、成都、西安等城市。在企業(yè)有特殊需求的時(shí)間點(diǎn),比如說“雙十一”或者年度大促,可以安排原廠的工程師進(jìn)行現(xiàn)場(chǎng)支持。

目前,已經(jīng)有數(shù)百家客戶在線上生產(chǎn)環(huán)境部署和使用了StarRocks。其中估值或市值在10億美金以上的大客戶超過110家,還有像Airbnb 這樣市值超過千億美金的美國(guó)企業(yè)。這些客戶包含了互聯(lián)網(wǎng)金融、物流、制造等各行各業(yè)的頭部企業(yè),每個(gè)客戶從開始測(cè)試到生產(chǎn)環(huán)境上線StarRocks平均周期約為兩個(gè)月,這對(duì)于軟件來說是非常短的時(shí)間周期。

2.三大核心能力支持企業(yè)典型業(yè)務(wù)場(chǎng)景

大家可能會(huì)非常感興趣,這些用戶主要將StarRocks應(yīng)用在哪些場(chǎng)景呢?

首先是面向用戶的報(bào)表。這類報(bào)表一般是給終端用戶看的數(shù)據(jù)產(chǎn)品,其特點(diǎn)是數(shù)據(jù)時(shí)效性很高、同時(shí)使用人很多,因此并發(fā)查詢量會(huì)比較高。由于每個(gè)人只看自己的數(shù)據(jù),不會(huì)看別人的數(shù)據(jù),所以每次查詢高廣泛的數(shù)據(jù)量是十分有限的。這種類型的數(shù)據(jù)報(bào)表對(duì)于系統(tǒng)并發(fā)能力、數(shù)據(jù)實(shí)時(shí)導(dǎo)入要求很高,沒有辦法使用預(yù)計(jì)算系統(tǒng)來進(jìn)行支持。

第二是面向經(jīng)營(yíng)的報(bào)表。這類報(bào)表的主要受眾是管理層和業(yè)務(wù)方,其特點(diǎn)是對(duì)聚合計(jì)算能力要求比較高,需要查詢速度非常快,因?yàn)槔习宥疾幌矚g等待。而且,這種類型的報(bào)表一般需求會(huì)比較多,對(duì)于需求完成的時(shí)間點(diǎn)要求嚴(yán)格,所以如果以基于預(yù)計(jì)算或者大寬表的方式來完成此類報(bào)表,過程對(duì)操作人員而言會(huì)十分“痛苦”。

第三是用戶畫像。用戶畫像是非常普遍的場(chǎng)景,基本任何初期的運(yùn)營(yíng)場(chǎng)景都會(huì)遇到。它涉及到很多人群相關(guān)的操作,包括標(biāo)簽的圈選、根據(jù)個(gè)人ID來查詢標(biāo)簽等。在這個(gè)場(chǎng)景下的StarRocks Bitmap數(shù)據(jù)類型會(huì)大有用武之地。

第四是運(yùn)營(yíng)分析場(chǎng)景。主要來源于公司內(nèi)部一線的運(yùn)營(yíng)或者分析人員的需求。它的特點(diǎn)是對(duì)于數(shù)據(jù)的時(shí)效性要求很高,以及這些分析往往涉及到多個(gè)相關(guān)的業(yè)務(wù),有多張數(shù)據(jù)報(bào)表。不僅如此,這類場(chǎng)景往往還會(huì)涉及到數(shù)據(jù)權(quán)限控制的問題,需要根據(jù)員工組織架構(gòu)來判斷企業(yè)數(shù)據(jù)權(quán)限的范圍。比如,我們一個(gè)從事零售業(yè)務(wù)的客戶,在全國(guó)有上萬(wàn)家門店,每個(gè)門店的運(yùn)營(yíng)情況都由店長(zhǎng)查看,但是店長(zhǎng)責(zé)任范圍是在不斷變化和調(diào)整的。這類分析場(chǎng)景只能用星型模型操作,如果是使用大寬表的方式,每天重算的數(shù)據(jù)量將非常巨大且難以做到實(shí)時(shí)。

第五是訂單分析。這類分析的主要特點(diǎn)是數(shù)據(jù)為流式導(dǎo)入,并且訂單往往有分析的需求。例如,訂單的狀態(tài)會(huì)隨著時(shí)間的推移發(fā)生變化,這要求底層數(shù)據(jù)分析系統(tǒng)能夠支持實(shí)時(shí)數(shù)據(jù)的分析和更新,這兩點(diǎn)都是StarRocks的強(qiáng)項(xiàng)。

第六是自助分析。這里包括自助報(bào)表和指標(biāo)管理平臺(tái)、數(shù)據(jù)探查等。此類場(chǎng)景普遍要求對(duì)接上層BI系統(tǒng),這類分析所產(chǎn)生的SQL語(yǔ)句較為復(fù)雜,并且通常涉及多張數(shù)據(jù)表,這就要求數(shù)據(jù)分析系統(tǒng)能夠處理復(fù)雜的SQL。不僅要支持復(fù)雜的SQL語(yǔ)法,還需快速返回,給分析人員良好的交互式體驗(yàn)。

StarRocks有哪些核心能力支持上述場(chǎng)景呢?

首先是對(duì)復(fù)雜查詢的處理能力。我們?yōu)榇藢?shí)現(xiàn)了以下關(guān)鍵點(diǎn):

全面向量化執(zhí)行引擎。StarRocks通過實(shí)現(xiàn)全面向量化執(zhí)行引擎,充分發(fā)揮了CPU的處理能力。經(jīng)過標(biāo)準(zhǔn)測(cè)試集的驗(yàn)證,StarRocks的全面向量化引擎可以將算子執(zhí)行性能提高3到10倍。

CBO(Cost-Based Optimizer)在多表關(guān)聯(lián)的場(chǎng)域場(chǎng)景下,僅僅靠?jī)?yōu)秀的查詢執(zhí)行引擎沒有辦法獲得極致的執(zhí)行性能。而通過StarRocks全新自研的優(yōu)化器,可以實(shí)現(xiàn)多種優(yōu)化手段,幫助向量化引擎發(fā)揮更加極致的特性。

分布式Join。StarRocks可以實(shí)現(xiàn)多種類型的分布式Join操作,適合于包括大表和小表的Broadcast Join、大表和中表的Shuffle Join、大表和大表的Colocate Join。

資源隔離。對(duì)于數(shù)據(jù)分析系統(tǒng)用戶,常常會(huì)擔(dān)心單條查詢過大,將整個(gè)集群資源耗盡,從而導(dǎo)致其他查詢沒有辦法執(zhí)行。解決這個(gè)問題的關(guān)鍵就在于一個(gè)優(yōu)秀的資源隔離機(jī)制。

第二項(xiàng)核心能力是實(shí)時(shí)數(shù)據(jù)分析能力。我們?yōu)榇藢?shí)現(xiàn)了以下關(guān)鍵點(diǎn):

極速多表Join。StarRocks的多表Join性能在行業(yè)里處于領(lǐng)導(dǎo)地位。

實(shí)時(shí)數(shù)據(jù)導(dǎo)入。StarRocks可以支持從Kafka實(shí)時(shí)導(dǎo)入數(shù)據(jù),并且導(dǎo)入數(shù)據(jù)支持事務(wù),可以做到不丟不重。支持Flink - CDC,可以直接從OLTP數(shù)據(jù)庫(kù)直接對(duì)接數(shù)據(jù)。

實(shí)時(shí)更新能力。StarRocks具有獨(dú)特的更新模型。更新模型可以很好支持?jǐn)?shù)據(jù)的實(shí)時(shí)更新,并且能夠保證數(shù)據(jù)在實(shí)時(shí)更新時(shí)查詢的低延時(shí)。這個(gè)能力目前在同類型產(chǎn)品中非常獨(dú)特。

現(xiàn)代化物化視圖。StarRocks可以支持多種聚合算子,在數(shù)據(jù)實(shí)時(shí)導(dǎo)入物化視圖過程中自動(dòng)構(gòu)建、自動(dòng)計(jì)算,并且物化視圖在使用時(shí)對(duì)于用戶來說是透明的。

第三項(xiàng)核心能力是數(shù)據(jù)湖整合分析能力。

這項(xiàng)分析能力可以讓用戶像查詢StarRocks自有數(shù)據(jù)般,極速查詢數(shù)據(jù)湖里的數(shù)據(jù),不再需要數(shù)據(jù)傳輸和遷移的過程。這項(xiàng)工作由StarRocks社區(qū)和阿里云一起協(xié)作開發(fā)完成。目前,我們已經(jīng)支持查詢Hive、Hudi和Icebreg這樣的數(shù)據(jù)湖,并且還支持像MySQL、Elastic Search等外表聯(lián)邦查詢。

如上圖所示,在使用相同外表的方式進(jìn)行查詢時(shí),StarRocks外表查詢性能已經(jīng)要遠(yuǎn)遠(yuǎn)高于Trino的性能;如果將數(shù)據(jù)進(jìn)一步導(dǎo)入StarRocks,查詢會(huì)變得更加快,在某些特定的查詢和場(chǎng)景上可達(dá)Trino的幾十倍。

基于獨(dú)特的產(chǎn)品能力,StarRocks為客戶極大提升了數(shù)字生產(chǎn)力,幫助客戶將查詢的等待時(shí)間縮短到1秒之內(nèi),并將客戶、數(shù)據(jù)業(yè)務(wù)需求的開發(fā)周期縮短約90%,還可以幫助客戶降低數(shù)據(jù)分析系統(tǒng)建設(shè)成本,提高數(shù)據(jù)系統(tǒng)分析性的穩(wěn)定性。

3.眾安保險(xiǎn)、攜程:全新實(shí)時(shí)分析能力開啟數(shù)字化經(jīng)營(yíng)新局面

接下來,我將以兩個(gè)案例來講解StarRocks是如何幫助企業(yè)提高數(shù)字生產(chǎn)力的。

第一個(gè)場(chǎng)景來源于眾安保險(xiǎn)。眾安保險(xiǎn)的集智平臺(tái)是一款可視化智慧經(jīng)營(yíng)分析平臺(tái)產(chǎn)品,它集成了人工智能、商業(yè)智能、可視化數(shù)據(jù)倉(cāng)庫(kù)等技術(shù),用智能的方式來整合不同場(chǎng)景數(shù)據(jù),規(guī)范企業(yè)的數(shù)據(jù)池,完成復(fù)雜的數(shù)據(jù)治理和智能決策等環(huán)節(jié)。

集智平臺(tái)涵蓋了可視化分析、交互式分析、多維透視分析、實(shí)時(shí)數(shù)據(jù)分析等多種不同種類的分析。在原有解決方案里,眾安集智平臺(tái)遇到了幾個(gè)問題:一,使用了ClickHouse作為查詢引擎,ClickHouse在支持平臺(tái)的過程中,平臺(tái)在高并發(fā)場(chǎng)景下平均響應(yīng)時(shí)間會(huì)變長(zhǎng);二,多表關(guān)聯(lián)查詢性能欠佳,因此集智平臺(tái)只能使用大寬表來做分析;三,對(duì)外部系統(tǒng)有依賴、運(yùn)維成本高和缺少自動(dòng)Resharding機(jī)制,導(dǎo)致其在做橫向擴(kuò)容時(shí)很困難;此外,有原有系統(tǒng)對(duì)更新和刪除支持能力弱等問題。

在使用StarRocks解決方案之后,以上問題都得到了很好的解決。首先StarRocks能夠支持高并發(fā)查詢,在一些特定場(chǎng)景查詢并發(fā)數(shù)可以高達(dá)1萬(wàn)以上,多表關(guān)聯(lián)的查詢性能優(yōu)異,可以幫助開發(fā)人員靈活使用各類數(shù)據(jù)分析模型。

另外StarRocks不依賴外部系統(tǒng),易于運(yùn)維,可以降低運(yùn)維成本。在使用StarRocks之后,集智平臺(tái)的報(bào)表看板打開速度從10秒下降到3秒,極大優(yōu)化了用戶的體驗(yàn)。由于StarRocks能夠很好支持?jǐn)?shù)據(jù)更新和刪除操作,所以極大降低了業(yè)務(wù)需求的開發(fā)成本,極大地提升產(chǎn)出效率。

第二個(gè)案例來自于攜程大數(shù)據(jù)智能平臺(tái)。此平臺(tái)主要用于攜程住宿內(nèi)部進(jìn)行數(shù)據(jù)管理和數(shù)據(jù)分析,平臺(tái)訪問量大概每天UV在2200左右,峰值的總PV約10萬(wàn)左右,高峰期流量會(huì)有比較大激增。這和攜程的業(yè)務(wù)量有關(guān),只要節(jié)假日,平臺(tái)整個(gè)流量會(huì)有較大的增幅。目前,數(shù)據(jù)量大概有700億行,實(shí)際存儲(chǔ)有1.75T,每天有150億的更新。

在原有系統(tǒng)中,攜程選用ClickHouse支撐90%業(yè)務(wù)線數(shù)據(jù)分析。但由于ClickHouse在穩(wěn)定性和高并發(fā)方面的問題,導(dǎo)致了攜程需同步使用Redis作為緩存。這引發(fā)了其他問題,比如雙流雙寫的方案無(wú)法保證數(shù)據(jù)一致性,同時(shí)也增加硬件和開發(fā)的維護(hù)成本等。

在使用StarRocks之后,原先的Redis+ClickHouse的方案被完全替代。新方案讓整個(gè)平臺(tái)查詢響應(yīng)平均在200毫秒左右,耗時(shí)超過500毫秒查詢不超過查詢總量的1%。更為重要的是,由于簡(jiǎn)化了整體的數(shù)據(jù)架構(gòu),使得整個(gè)系統(tǒng)維護(hù)的人力和硬件成本大大降低,開發(fā)的復(fù)雜度也大大下降。

以上就是今天我想和大家分享所有內(nèi)容,如果您對(duì)StarRocks感興趣,非常歡迎您關(guān)注我們。讓我們一起將數(shù)據(jù)分析能力打造成為企業(yè)數(shù)字生產(chǎn)力的核心,謝謝大家!

END.

本文首發(fā)于微信公眾號(hào):甲子光年。文章內(nèi)容屬作者個(gè)人觀點(diǎn),不代表和訊網(wǎng)立場(chǎng)。投資者據(jù)此操作,風(fēng)險(xiǎn)請(qǐng)自擔(dān)。

關(guān)鍵詞: StarRocks

責(zé)任編輯:hnmd003

相關(guān)閱讀

相關(guān)閱讀

精彩推送

推薦閱讀