2017易觀OLAP算法大賽

大賽簡介

目前互聯(lián)網(wǎng)領(lǐng)域有很多公司都在做APP領(lǐng)域的“用戶行為分析”產(chǎn)品,與Web時代的行為分析相類似,其目的都是幫助公司的運(yùn)營、產(chǎn)品等部門更好地優(yōu)化自家產(chǎn)品,比如查看日活和月活,查看渠道來源,提高留存、轉(zhuǎn)化、活躍度等等。 在這個研發(fā)過程中,有個比較核心的需求,叫做“有序漏斗”。“有序漏斗”問題定義比較簡單,但計算過程比較復(fù)雜。市面上現(xiàn)有的解決方案在數(shù)據(jù)量較大的情況下,計算效率較低。 為了更好的提升產(chǎn)品體驗,易觀決定將此需求作為比賽題目,廣招各路大牛,共同解決。大賽分為2組,開源組和商業(yè)組。開源組設(shè)置獎金池和排行榜,商業(yè)組最后設(shè)置排行榜。

根據(jù)提供的應(yīng)用轉(zhuǎn)化和OLAP場景,給出具體的方案,先利用測試數(shù)據(jù)集在指定測試集群上運(yùn)行給出測試結(jié)果, 最終易觀會用實際測試數(shù)據(jù)在測試集群上跑整體數(shù)據(jù)并給出用時排名。

開源排行榜,第1名現(xiàn)金人民幣10萬(稅前)獎勵, 前3名易觀證書

商業(yè)排行榜,前3名易觀證書

即刻報名參賽

問題定義

漏斗分析是幫助運(yùn)營人員分析一個多步驟過程中每一步的轉(zhuǎn)化與流失情況。

假設(shè)我們在購買商品的過程中,需要觸發(fā)的事件包括 “啟動”,“登陸”,“搜索商品”,“查看商品”,“生成訂單”等。 運(yùn)營人員需要分析某段時間內(nèi)(比如2017年1月5號到2017年2月5號),在全部用戶中依次有序觸發(fā) “登陸”→“搜索商品”→“查看商品”→“生成訂單“ 事件的人群的轉(zhuǎn)化流失情況,即計算全部用戶中觸發(fā)了“登陸”事件的總?cè)藬?shù)A,A中觸發(fā)“搜索商品”事件的總?cè)藬?shù)B,B中觸發(fā)“查看商品”事件的總?cè)藬?shù)C,以及C中觸發(fā)“生成訂單”事件的總?cè)藬?shù)D。展現(xiàn)形式如下:

同時,漏斗分析中包含“時間窗口”的概念,即需要保證所有事件在同一個窗口期內(nèi)發(fā)生。比如時間窗口為1天,用戶001觸發(fā)“搜索商品”事件的時間和觸發(fā)“登陸”事件的時間間隔在一天內(nèi),“搜索商品”事件才有效,否則視為無效。同理,用戶001觸發(fā)“查看商品”事件的時間和觸發(fā)“登陸”事件的時間間隔也必須在一天內(nèi)。時間窗口可以為1天、3天、7天或者1小時、6小時等任意長時間段。 最后,在漏斗分析中,可以設(shè)置事件屬性。比如“搜索商品”事件,可以設(shè)置只計算“搜索商品”事件的屬性中“content”字段為“computer”的用戶。具體見詳細(xì)數(shù)據(jù)。

測試數(shù)據(jù)

鏈接:http://pan.baidu.com/s/1dEHodih密碼:z3m8

數(shù)據(jù)為文本文件格式,具體包含字段有:

(1)用戶ID,字符串類型

(2)時間戳,毫秒級別,Long類型

(3)事件ID,Int類型,包含10001到10010十個事件

(4)事件名稱,字符串類型,包含啟動、登陸、搜索商品等十個事件

(5)事件屬性,Json串格式

(6)日期,字符串類型

數(shù)據(jù)總條數(shù)6億左右,日期范圍:2017/01/01到2017/02/28。

比賽評判說明

所有提交的方案都必須可行,開源組須公開思路及源代碼,商業(yè)組只須公開思路,具體使用哪些軟件可自行設(shè)定。 評委會隨機(jī)設(shè)定漏斗需求,所有參賽方案根據(jù)具體需求計算結(jié)果,在結(jié)果準(zhǔn)確的基礎(chǔ)上,耗時最少者獲勝。漏斗需求舉例如下:

(1)計算2017年1月份中,依次有序觸發(fā)“搜索商品”、“查看商品”、“生成訂單”的用戶轉(zhuǎn)化情況,且時間窗口為1天。

(2)計算2017年1月和2月份中,依次有序觸發(fā)“登陸”、“搜索商品”、“查看商品”、“生成訂單”、“訂單付款”的用戶轉(zhuǎn)化情況,且時間窗口為7天,“搜索商品”事件的content屬性為Apple,“瀏覽商品”事件的price屬性大于5000。

目前通用算法與實例

目前通用60分的算法如下,給各位參賽者做參考,同時源代碼稍后公布,大家可以基于這個算法或者自建更好的算法優(yōu)化。

(1)底層存儲用HDFS

(2)建立Hive表,并以應(yīng)用標(biāo)識、日期、事件名稱為分區(qū)

(3)查詢用presto,并自定義UDAF,或者利用Spark core自定義相同邏輯

硬件系統(tǒng)配置

centos7、16核|16G內(nèi)存、SSD數(shù)據(jù)盤300G的ucloud云主機(jī)4臺

目前易觀在以上配置的4臺機(jī)器上測試漏斗耗時統(tǒng)計如下:

1、查詢2017年1月份,時間窗口為7天,事件順序為10001、10004、10008的漏斗,結(jié)果為[3999974, 3995900, 3608934],24秒

2、查詢2017年1月份,時間窗口為3天,事件順序為10004、10008、10010的漏斗,結(jié)果為[3999422,3573367,697506],13秒

3、查詢2017年1月份,時間窗口為3天,事件順序為10004、10007、10009、10010,并且10004事件的brand屬性為’Apple’的漏斗,結(jié)果為[3639301, 2449480, 559517, 35795],13秒

合作媒體

賽事咨詢/合作:sushuai@analysys.com.cn

參賽報名

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,070評論 25 709
  • 社交紅利閱讀筆記 書名:社交紅利(修訂升級版) 作者:徐志斌 出版社:中信出版社 正文前筆記: 推薦序1摘要 社交...
    鳧水閱讀 9,390評論 4 26
  • “我曾經(jīng)被最美味的巧克力上的可可粉暗算”遠(yuǎn)比“我曾經(jīng)走過巧克力店,看了一眼,馬上離開”要幸福得多?!巍冻?,吃...
    堅果wowo的防空洞閱讀 863評論 6 9
  • 在火車上的你,站在火車上的你。 前面有一面鏡子,后面是緊挨著廁所的墻,左邊的過道站了好多人,而你就在這狹小的洗...
    會唱歌的小吉他閱讀 101評論 0 0
  • 從8月中旬開始接觸Docker-到9月26日正式開始線上部署-持續(xù)40天,總學(xué)習(xí)時間為9.5天,其中上班時間&加班...
    灼灼2015閱讀 774評論 0 6

友情鏈接更多精彩內(nèi)容