www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 公眾號精選 > 架構(gòu)師社區(qū)
[導(dǎo)讀]分享嘉賓:張照亮 阿里巴巴 高級技術(shù)專家 編輯整理:鄭銀秋 出品平臺:DataFunTalk 導(dǎo)讀: 今天分享的內(nèi)容是阿里搜索推薦數(shù)據(jù)平臺研發(fā)團(tuán)隊(duì)在實(shí)時數(shù)倉的一些探索,圍繞著團(tuán)隊(duì)在數(shù)倉上基于Flink + Hologres的演進(jìn)過程及最佳實(shí)踐。 01 業(yè)務(wù)背景 阿里巴巴電商搜索


分享嘉賓:張照亮 阿里巴巴 高級技術(shù)專家

編輯整理:鄭銀秋

出品平臺:DataFunTalk

導(dǎo)讀: 今天分享的內(nèi)容是阿里搜索推薦數(shù)據(jù)平臺研發(fā)團(tuán)隊(duì)在實(shí)時數(shù)倉的一些探索,圍繞著團(tuán)隊(duì)在數(shù)倉上基于Flink + Hologres的演進(jìn)過程及最佳實(shí)踐。

01

業(yè)務(wù)背景

阿里巴巴電商搜索推薦實(shí)時數(shù)據(jù)倉庫承載了阿里巴巴集團(tuán)淘寶、淘寶特價版、餓了么等多個電商業(yè)務(wù)的實(shí)時數(shù)倉場景,提供了包括實(shí)時大屏、實(shí)時報表、實(shí)時算法訓(xùn)練、實(shí)時A/B實(shí)驗(yàn)看板等多種數(shù)據(jù)應(yīng)用支持。
1. 數(shù) 據(jù)的價值
阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路
我們認(rèn)為數(shù)據(jù)處于阿里巴巴搜索推薦的大腦位置,這體現(xiàn)在算法迭代、產(chǎn)品運(yùn)營和老板決策等多個方面。那么數(shù)據(jù)是怎樣在搜索推薦業(yè)務(wù)場景中流轉(zhuǎn)的呢?首先是信息采集,用戶在使用手機(jī)淘寶的搜索和推薦功能時,會觸發(fā)到服務(wù)端上的埋點(diǎn)信息;接下來會經(jīng)過離線和實(shí)時的ETL加工,再裝載到產(chǎn)品引擎里面;然后我們會基于引擎來構(gòu)建分析系統(tǒng),幫助算法、產(chǎn)品做分析決策;形成一次決策之后,會有一些新的內(nèi)容上線,用戶可以看到算法模型產(chǎn)出的一些業(yè)務(wù)形態(tài);這樣就產(chǎn)生了一輪新的數(shù)據(jù)采集、加工、裝載和分析的過程。這樣一來就可以利用數(shù)據(jù)形成一個完整的業(yè)務(wù)鏈路,其中每個環(huán)節(jié)都非常重要。
2. 搜索推薦典型場景
實(shí)時數(shù)據(jù)在電商搜索推薦中有多種不同的應(yīng)用場景,如實(shí)時分析、算法應(yīng)用和精細(xì)化人群運(yùn)營等。
① 實(shí)時分析和算法應(yīng)用場景
在實(shí)時分析和算法應(yīng)用場景中,我們利用實(shí)時數(shù)據(jù)倉庫搭建分析報表、實(shí)時大屏、訓(xùn)練算法模型以及打造其他類型的數(shù)據(jù)產(chǎn)品。實(shí)時數(shù)據(jù)的需求搜索推薦場景下主要有以下特點(diǎn):
  • 數(shù)據(jù)量大:單日PB級存儲

  • 單表總條數(shù):千億+

  • QPS高:峰值寫入RPS 6500W+

  • 峰值查詢QPS:200+

  • 數(shù)據(jù)靈活性要求高,分析場景多樣化,固定條件高頻分析、非固定條件多維查詢

② 精細(xì)化人群運(yùn)營場景
在電商運(yùn)營中,經(jīng)常會有針對不同人群采用不同運(yùn)營策略的需求。傳統(tǒng)方式使用離線數(shù)據(jù)對人群進(jìn)行活動投放,但一般需要到第二天才能看到前一日的活動運(yùn)營效果。為了更高效地觀測、提升運(yùn)營效果,實(shí)時的人群投放、人群畫像成為必不可少的需求。
實(shí)時數(shù)倉將會把實(shí)時數(shù)據(jù)以實(shí)時大屏、實(shí)時報表的形式,為活動運(yùn)營提供實(shí)時的人群行為效果數(shù)據(jù),如不同地區(qū)、不同年齡段人群的實(shí)時UV、實(shí)時成交額等。此外,還需要將實(shí)時數(shù)據(jù)與離線數(shù)據(jù)進(jìn)行關(guān)聯(lián)對比計(jì)算,提供實(shí)時的環(huán)比、同比數(shù)據(jù)。

02

典型實(shí)時數(shù)倉訴求

綜合以上背景,在實(shí)時數(shù)倉建設(shè)的過程中,我們總結(jié)了以下幾類典型的實(shí)時數(shù)倉訴求:
1. 分組橫截面
例如分行業(yè)指標(biāo)展示,通常是在SQL中用group by進(jìn)行查詢;
2. 多維過濾
場景過濾、用戶過濾、商品過濾、商家過濾等,通常使用array字段進(jìn)行屬性值的過濾;
3. 聚合
基于明細(xì)數(shù)據(jù)聚合計(jì)算實(shí)時指標(biāo),如SUM、COUNT_DISTINCT計(jì)算等;
4. A/B Test
通過解析日志埋點(diǎn)中的分桶字段,計(jì)算測試桶與基準(zhǔn)桶之間的實(shí)時Gap數(shù)據(jù);
5. 指定Key
在排查問題或觀測核心商家指標(biāo)時,經(jīng)常需要指定商家ID、商品ID查詢實(shí)時指標(biāo),需要基于明細(xì)實(shí)時表中的id字段過濾后進(jìn)行聚合計(jì)算;
6. 流批一體
由于實(shí)時數(shù)倉僅保留最近2天的數(shù)據(jù),在面對計(jì)算同比、環(huán)比等需求時,就需要讀取離線數(shù)據(jù)與實(shí)時數(shù)據(jù)進(jìn)行關(guān)聯(lián)計(jì)算,這樣產(chǎn)品/運(yùn)營在看上層報表展現(xiàn)時就能直觀看到今年實(shí)時數(shù)據(jù)和去年同期的對比表現(xiàn)。

03

實(shí)時數(shù)倉架構(gòu)

基于上訴典型實(shí)時數(shù)倉訴求,我們抽象出了如下圖所示的典型實(shí)時數(shù)倉架構(gòu)。
阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路
實(shí)時采集的業(yè)務(wù)日志經(jīng)過實(shí)時計(jì)算Flink清洗過濾,將結(jié)果寫到OLAP引擎里面,OLAP引擎既要支持多維的交互式查詢、還要支持KV查詢和流批一體查詢,來滿足我們各種各樣的業(yè)務(wù)訴求,同時OLAP引擎還需要對接上層構(gòu)建的各種業(yè)務(wù)應(yīng)用,提供在線服務(wù)。
基于這個典型的實(shí)時架構(gòu),下面則是我們搜索推薦場景下的實(shí)時架構(gòu)演進(jìn)過程。
1. 實(shí)時數(shù)倉架構(gòu) 1.0版
首先是實(shí)時數(shù)倉架構(gòu)1.0版,如下圖所示,這個版本主要是由3個板塊組成:
阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路
數(shù)據(jù)采集
在數(shù)據(jù)采集層,我們將上游實(shí)時采集的數(shù)據(jù)分為用戶行為日志和商品維表、商家維表、用戶維表等,為什么會有維表呢?因?yàn)槊總€業(yè)務(wù)在埋點(diǎn)時不會將所有信息全部埋在日志里面,如果所有信息都由用戶行為日志承載,靈活性將會特別差,所以維表在業(yè)務(wù)上擔(dān)任信息擴(kuò)展的角色。
采集的用戶行為日志將會實(shí)時寫入實(shí)時計(jì)算Flink,用戶維表、商品維表等維表數(shù)據(jù)統(tǒng)一歸檔至MaxCompute中,在初步計(jì)算后將會通過數(shù)據(jù)同步工具(DataX)同步至批處理引擎中。
數(shù)據(jù)處理
在數(shù)據(jù)處理層中,流處理部分,由Flink對實(shí)時寫入的用戶行為日志數(shù)據(jù)做初步處理,具體的處理包括數(shù)據(jù)解析、清洗、過濾、關(guān)聯(lián)維表等。
批處理部分,為了在數(shù)據(jù)查詢和服務(wù)中根據(jù)屬性查詢、篩選數(shù)據(jù),需要在Flink作業(yè)中將用戶的實(shí)時行為和維表做關(guān)聯(lián)計(jì)算,這就需要批處理系統(tǒng)能夠支持高QPS查詢,當(dāng)時搜索業(yè)務(wù)的單表QPS最高達(dá)6500萬,經(jīng)過多方調(diào)研,選擇了HBase作為維表的批處理引擎。
Flink作業(yè)中基于用戶ID、商品ID、商家ID等關(guān)聯(lián)HBase維表中的屬性數(shù)據(jù),輸出一張包含多個維度列的實(shí)時寬表,再輸出到OLAP引擎。為了簡化Flink實(shí)時作業(yè),降低實(shí)時計(jì)算的壓力,我們沒有在Flink中使用窗口函數(shù)做指標(biāo)的聚合工作,只是對實(shí)時日志簡單過濾、關(guān)聯(lián)后直接輸明細(xì)數(shù)據(jù)到下游,這就要求下游引擎需要提既要支持KV查詢、OLAP多維交互式查詢,還要支持流批一體查詢。
數(shù)據(jù)查詢和服務(wù)
在第一版架構(gòu)中我們使用的是Lightning引擎來承載Flink輸出的實(shí)時明細(xì)數(shù)據(jù),并基于Lightning實(shí)現(xiàn)查詢流批一體,再對上層應(yīng)用提供統(tǒng)一的實(shí)時數(shù)據(jù)查詢服務(wù)。
但是Lightning的局限性也是非常明顯的:第一是查詢方式是非SQL類型不夠友好,若是寫SQL需要二次封裝。第二是Lightning采用的是公共集群,多用戶資源不隔離,當(dāng)需要查詢大量數(shù)據(jù)時,容易出現(xiàn)性能波動和資源排隊(duì)等問題,使得查詢耗時較久,在實(shí)際業(yè)務(wù)場景使用中有一定的限制。
2. 實(shí)時數(shù)倉架構(gòu) 2.0版
阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路
基于Lightning的限制,我們希望能找到一款替代產(chǎn)品,它的能力要在Lightning之上,支撐OLAP的交互式查詢以及高QPS的維表校驗(yàn)查詢。于是在2.0版的實(shí)時數(shù)倉架構(gòu)中,我們開始接入Hologres。
最開始,我們只是用Hologres替代Lightning提供KV、OLAP查詢能力,解決了Lightning所帶來的局限性。這樣的架構(gòu)看起來很好,但因?yàn)檫€需要經(jīng)過HBase存儲維表,隨著數(shù)據(jù)量的增長,數(shù)據(jù)導(dǎo)入至HBase的時間也越長,實(shí)際上浪費(fèi)了大量資源,并且隨著線上服務(wù)實(shí)時性要求增加,HBase的弊端也越來越明顯。
而Hologres的核心能力之一是加速離線數(shù)據(jù),尤其是針對MaxCompute的數(shù)據(jù),在底層與其資源打通,能加速查詢。所以我們就萌生了將Hologres替代HBase的想法,以Hologres為統(tǒng)一的存儲,數(shù)據(jù)也無需再導(dǎo)入導(dǎo)出,保證了一份數(shù)據(jù)一份存儲。
于是,最終的實(shí)時數(shù)倉架構(gòu)2.0版如下:
  • 數(shù)據(jù)處理階段直接將用戶維表、商品維表、商家維表以行存模式存儲到Hologres中,以此替代Hbase存儲。Flink中的作業(yè)可以直接讀取Hologres的維表,與行為日志進(jìn)行關(guān)聯(lián)。

  • 在數(shù)據(jù)查詢和服務(wù)階段,我們將Flink處理輸出的實(shí)時明細(xì)數(shù)據(jù)統(tǒng)一存儲至Hologres,由Hologres提供高并發(fā)的數(shù)據(jù)實(shí)時寫入和實(shí)時查詢。

04

基于Hologres的最佳實(shí)踐

實(shí)時數(shù)倉2.0版本因?yàn)镠ologres的接入,既精簡了架構(gòu),節(jié)約了資源,也真正實(shí)現(xiàn)了流批一體。這個架構(gòu)也一直使用至今,下面是Hologres基于此架構(gòu)在搜索推薦具體多個業(yè)務(wù)場景中的最佳實(shí)踐。
1. 行存最佳實(shí)踐
Hologres支持行存和列存兩種存儲模式,行存對于key-value查詢場景比較友好,適合基于primary key的點(diǎn)查和 scan,可以將行存模式的表看作是一張類似于Hbase的表,用不同的表存儲不同實(shí)體的維度信息。在Flink實(shí)時作業(yè)中可以高效地從Hologres行存表中讀取維表數(shù)據(jù),與實(shí)時流中的實(shí)體進(jìn)行關(guān)聯(lián)。
阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路
2. 列存最佳實(shí)踐
Hologres中默認(rèn)表的存儲模式是列存,列存對于OLAP場景較為友好,適合各種復(fù)雜查詢。
基于Hologres的列存模式,我們搭建了搜索、推薦業(yè)務(wù)的實(shí)時數(shù)據(jù)查詢看板,在實(shí)時看板上可以支持?jǐn)?shù)十個不同維度的實(shí)時篩選過濾。 在最高峰值每秒寫入條數(shù)(RPS)超過500萬的同時仍然可以秒級查詢多個維度篩選下的聚合指標(biāo)結(jié)果。
同時Hologres表支持設(shè)置表數(shù)據(jù)TTL的屬性,一般我們將一張實(shí)時表的生命周期設(shè)置為48小時,超過48小時的數(shù)據(jù)會被自動刪除,在實(shí)時看板中支持用戶對最近兩天內(nèi)的實(shí)時數(shù)據(jù)進(jìn)行查詢,避免了不必要的資源浪費(fèi)。
3. 流批一體最佳實(shí)踐
Hologres不僅支持基于實(shí)時明細(xì)的數(shù)據(jù)的即席分析查詢,也支持直接加速查詢MaxCompute離線表,因此我們利用這一特性,實(shí)現(xiàn)流批一體的查詢(實(shí)時離線聯(lián)邦分析)。
阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路
在天貓大促活動中,我們利用Hologres的聯(lián)邦分析能力搭建了核心商家的目標(biāo)完成率、去年同期對比看板,為運(yùn)營算法決策提供了有效的數(shù)據(jù)支撐。
其中目標(biāo)完成率看板開發(fā)借助實(shí)時離線聯(lián)邦分析變得更為簡單,即通過Hologres實(shí)時查詢大促當(dāng)天的指標(biāo),并用實(shí)時表的當(dāng)天指標(biāo)除以離線表中設(shè)定的目標(biāo)指標(biāo),從而讓運(yùn)營能夠看到實(shí)時更新的核心商家當(dāng)天目標(biāo)的完成情況。
去年同期對比實(shí)時看板的計(jì)算邏輯也是類似的,可以在SQL中將實(shí)時表與去年的離線表JOIN后進(jìn)行關(guān)鍵指標(biāo)的同比計(jì)算。
所有的計(jì)算都可以在Hologres中完成,通過SQL表達(dá)計(jì)算邏輯即可,無需額外的數(shù)據(jù)開發(fā)工作,一份數(shù)據(jù)一套代碼,降低開發(fā)運(yùn)維難度,真正實(shí)現(xiàn)流批一體。
4. 高并發(fā)實(shí)時Update
在一些場景下,我們不僅需要向OLAP引擎實(shí)時增量寫入數(shù)據(jù),還需要對寫入的數(shù)據(jù)進(jìn)行更新操作(update)。
例如,在訂單成交歸因時,F(xiàn)link實(shí)時作業(yè)會將訂單提交數(shù)據(jù)流與進(jìn)度點(diǎn)擊數(shù)據(jù)流進(jìn)行雙流JOIN,并且在還需要取訂單提交前的最后一次點(diǎn)擊事件進(jìn)行關(guān)聯(lián)。當(dāng)有多條點(diǎn)擊事件先后到達(dá)時,我們就需要更新訂單歸因明細(xì)數(shù)據(jù),此時需要利用Hologres的update支持,通過數(shù)據(jù)的主鍵更新原有數(shù)據(jù),保證成交歸因的數(shù)據(jù)準(zhǔn)確性。在實(shí)踐中Hologres的update寫入峰值能達(dá)50W,滿足業(yè)務(wù)高并發(fā)實(shí)時更新需求。

05

未來展望

我們希望未來基于Hologres引擎持續(xù)改進(jìn)現(xiàn)有的實(shí)時數(shù)倉,主要的方向主要有:
1. 實(shí)時表JOIN
Hologres現(xiàn)階段支持百億級表與億級表之間的JOIN,秒級查詢響應(yīng)?;谶@個特性,期望將原本需要在數(shù)據(jù)處理階段由Flink實(shí)時作業(yè)完成的維表關(guān)聯(lián)工作,可以改為在查詢Hologres階段實(shí)時JOIN計(jì)算。例如表1是明細(xì)數(shù)據(jù)表,表2是用戶維表,在查詢階段的JOIN可以通過篩選用戶維表,然后與明細(xì)數(shù)據(jù)表關(guān)聯(lián),達(dá)到篩選過濾數(shù)據(jù)的目的。這樣的改進(jìn)將帶來幾個好處:
  • 減少Hologres中的數(shù)據(jù)存儲量,避免實(shí)時表中存儲大量的數(shù)據(jù)冗余(如:同一個商品ID的數(shù)據(jù)會重復(fù)存儲);
  • 提升實(shí)時數(shù)據(jù)中維度屬性的時效性,在查詢階段實(shí)時JOIN維表數(shù)據(jù)后進(jìn)行計(jì)算,可以使得我們在通過維度篩選數(shù)據(jù)的時候,始終用的是最新的維度屬性。
2. 持久化存儲
我們未來將探索如何將常用維度的實(shí)時數(shù)據(jù),利用Hologres的計(jì)算和存儲能力,將計(jì)算結(jié)果持久化存儲。

嘉賓介紹:

阿里巴巴電商搜索推薦實(shí)時數(shù)倉演進(jìn)之路

張照亮

阿里巴巴 | 高級技術(shù)專家

張照亮,阿里花名"士恒",阿里巴巴搜索事業(yè)部高級技術(shù)專家,目前主要負(fù)責(zé)搜推大數(shù)據(jù)解決方案迭代演進(jìn)和部分業(yè)務(wù)側(cè)數(shù)據(jù)產(chǎn)品架構(gòu)設(shè)計(jì)和研發(fā)工作。

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點(diǎn),不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉