
一場變美盛宴后的大數(shù)據(jù)故事
DT時代人們想變美的心愿可以更快的被實現(xiàn),可以實現(xiàn)的途徑非常多,美顏相機、美妝教程、美妝直播。。。。。。數(shù)不勝數(shù)的變美途徑可以讓人們越來越美。有這么一個平臺,讓我們看看,他們是怎樣利用數(shù)據(jù),讓大家變得更美。
說到的這家公司就是小紅唇,想具體了解小紅唇可以去官網(wǎng)了解,在這里要講的是,小紅唇是怎樣利用數(shù)據(jù),為千千萬萬想要變美的人們提供更加貼心的服務(wù)。
小紅唇的數(shù)據(jù)之路要從他們的一個個性化功能需求提起。
隨著小紅唇業(yè)務(wù)的發(fā)展,用戶量和內(nèi)容量不斷增加,迫切需要推出個性化功能,增加用戶的使用時長和用戶粘度。對于一個沒有大數(shù)據(jù)/機器學(xué)習(xí)經(jīng)驗和技術(shù)儲備,并且開發(fā)人員有限的年輕團隊,在業(yè)務(wù)快速發(fā)展的情況下,如何在非常有限的開發(fā)資源和不影響正常業(yè)務(wù)開發(fā)的前提下,快速建立起自己的推薦系統(tǒng),成為擺在小紅唇技術(shù)團隊面前一個不小的挑戰(zhàn)。這便是小紅唇和阿里云大數(shù)據(jù)數(shù)加平臺的第一次牽手預(yù)熱。
小紅唇的技術(shù)團隊在收到產(chǎn)品關(guān)于個性化推薦的需求后,開始了技術(shù)調(diào)研,其中包括了主流的開源技術(shù)棧和阿里云在2016年年初發(fā)布的數(shù)加平臺。兩位毫無大數(shù)據(jù)技術(shù)背景和經(jīng)驗的工程師并行化工作,都希望能快速切入到大數(shù)據(jù)的核心并快速產(chǎn)出。于是小紅唇和大數(shù)據(jù)的第一次邂逅就這樣不期的開始了,如同相親,在眾多的對象中,怎么找到合適的那一位一定是故事里精彩的部分。
在這第一次邂逅的比賽中,調(diào)研阿里云數(shù)加平臺的工程師只用了一天時間,就利用阿里云數(shù)加平臺的推薦引擎搭建起了推薦系統(tǒng),該系統(tǒng)使用了業(yè)界流行的協(xié)同過濾算法,基于最新的用戶對短視頻的行為,計算出推薦列表。而另一位工程師還在熟悉陌生的大數(shù)據(jù)技術(shù)棧和編程語言。這第一次與阿里云大數(shù)據(jù)平臺的邂逅堪稱完美,在對僅用一天時間就搭建起來的推薦系統(tǒng)稍作修改,并設(shè)計了如何嵌入到自身業(yè)務(wù)系統(tǒng)中后,個性化推薦就和其他普通業(yè)務(wù)需求一樣,在產(chǎn)品提出需求后的第一個發(fā)版中就快速上線了。整個推薦系統(tǒng)中數(shù)據(jù)采集,數(shù)據(jù)清洗,推薦計算以及結(jié)果獲取如下圖1所示。
在這個架構(gòu)中,我們選擇了非常流行的開源 ETL 工具來對用戶行為,物品,用戶等推薦系統(tǒng)依賴的數(shù)據(jù)進行清洗,并按照推薦引擎要求的格式同步到大數(shù)據(jù)計算服務(wù)中。由持續(xù)集成工具 Jenkins 觸發(fā)數(shù)據(jù)的清洗和上傳到數(shù)加MaxCompute(原名ODPS)中。推薦系統(tǒng)從大數(shù)據(jù)計算服務(wù)中獲取數(shù)據(jù)并進行離線計算,計算的結(jié)果存儲于阿里云的表格存儲中,用于在線計算的結(jié)果二次處理和返回。業(yè)務(wù)服務(wù)器通過推薦系統(tǒng)暴露的推薦接口獲取對某個用戶的推薦列表。
我們是數(shù)加平臺推薦引擎的第一批內(nèi)測用戶,得到了數(shù)加平臺的大力的支持,使得整個推薦系統(tǒng)的接入都非常的順利,也解答了很多關(guān)于大數(shù)據(jù)和推薦系統(tǒng)的小白問題。小紅唇的團隊在和數(shù)加平臺的推薦引擎團隊合作中快速的學(xué)習(xí)了大數(shù)據(jù)和推薦系統(tǒng)的相關(guān)知識,可以說是數(shù)加的推薦引擎為小紅唇技術(shù)團隊開啟了大數(shù)據(jù)這扇神秘的大門。
這個架構(gòu)簡單清晰,但也有著很多不完美的地方,特別在數(shù)據(jù)的采集和清洗方面,還顯得比較初級和脆弱。首先用戶行為數(shù)據(jù)完全依賴了在APP中的埋點,而埋點的最初的設(shè)計也存在了一些問題導(dǎo)致數(shù)據(jù)缺失。另外,推薦引擎沒有一個很好的觸發(fā)機制,通過外部的持續(xù)集成工具 Jenkins 的觸發(fā),在初期有時會遇到推薦引擎系統(tǒng)不穩(wěn)定的問題,導(dǎo)致離線計算失敗,用戶的推薦列表沒有得到及時的更新。
隨著推薦系統(tǒng)的上線,小紅唇也開啟了大數(shù)據(jù)的探索之旅。得益于數(shù)加平臺完整的大數(shù)據(jù)計算和應(yīng)用設(shè)計,小紅唇的技術(shù)團隊在熟悉和上線推薦系統(tǒng)的過程中,也逐漸收獲了大數(shù)據(jù)的核心理念,對大數(shù)據(jù)完整技術(shù)棧也有了更深的認(rèn)識。
2016年是小紅唇快速發(fā)展的一年,隨著業(yè)務(wù)的不斷增長,各種產(chǎn)品、市場運營活動的設(shè)計和決策也需要有各種各樣的數(shù)據(jù)作為支撐了。于是在快速上線了推薦系統(tǒng)之后,擺在小紅唇面前的另一個大數(shù)據(jù)挑戰(zhàn)就是搭建自己的數(shù)據(jù)倉庫。
在推薦系統(tǒng)的建設(shè)中,小紅唇技術(shù)團隊也意識到阿里云數(shù)加平臺在普惠大數(shù)據(jù)理念上的前瞻性,整個數(shù)加平臺產(chǎn)品線的布局對于像小紅唇這樣的初創(chuàng)公司,在大數(shù)據(jù)實踐上是容易實現(xiàn)彎道超車的。
數(shù)據(jù)倉庫的重要性毋庸置疑,在云計算和大數(shù)據(jù)時代,數(shù)據(jù)倉庫的建設(shè)也在不斷的進化中。開源生態(tài)中基于hadoop/Hive搭建數(shù)據(jù)倉庫的成功案例不勝枚舉。數(shù)加平臺基于MaxCompute的強大計算能力,也正是對這一理念的完美詮釋。于是小紅唇技術(shù)團隊也在橫向?qū)Ρ戎?,毅然決定在數(shù)加平臺上進行數(shù)據(jù)倉庫的建設(shè)。
小紅唇基于數(shù)加平臺的數(shù)據(jù)倉庫搭建分成了兩個階段。第一階段由于主要的業(yè)務(wù)服務(wù)器并沒有部署在阿里云上,使得數(shù)據(jù)的采集和清洗變得比較麻煩,跨網(wǎng)的數(shù)據(jù)傳輸和備份,各種周期任務(wù)比較復(fù)雜。如圖2所示。
在第一階段的數(shù)倉建設(shè)中我們已經(jīng)在計劃業(yè)務(wù)服務(wù)器向阿里云搬遷了,所以把數(shù)據(jù)需求最緊要的數(shù)據(jù)做了向MaxCompute的同步(同步方式也有用DataX和MaxCompute的 tunnel),在數(shù)據(jù)開發(fā)IDE中對數(shù)據(jù)進行ETL和OLAP,最后利用Quick BI產(chǎn)出BI報表。另外還有一些數(shù)據(jù)會應(yīng)用到業(yè)務(wù)系統(tǒng)中,我們通過 RDS 進行存儲。
在數(shù)據(jù)倉庫第一階段的建設(shè)和使用中,我們已經(jīng)在積極的籌備業(yè)務(wù)系統(tǒng)向阿里云的搬遷。隨著搬遷的完成,我們也迅速開始了第二階段的改造。同時更多的數(shù)加產(chǎn)品也在不斷的內(nèi)測和發(fā)布中,借助于新的產(chǎn)品和上下游的不斷打通,我們的架構(gòu)也進行了演進,如圖3所示。
第二階段與第一階段主要的區(qū)別就在于數(shù)據(jù)采集和清洗部分是否直接納入在數(shù)加平臺內(nèi)部,而對于數(shù)據(jù)倉庫的建設(shè)而言,這兩個環(huán)節(jié)又是非常重要的部分。在第二階段中,我們的業(yè)務(wù)數(shù)據(jù)庫已經(jīng)在阿里云的RDS上了,通過DataIDE就可以方便的把需要的數(shù)據(jù)同步到大數(shù)據(jù)開發(fā)平臺中,這也是小紅唇目前的架構(gòu)。在把數(shù)據(jù)采集,數(shù)據(jù)清洗,數(shù)據(jù)開發(fā)和數(shù)據(jù)應(yīng)用形成完整閉環(huán)后,小紅唇在大數(shù)據(jù)領(lǐng)域的各種嘗試和產(chǎn)出得到了巨大的發(fā)展:
首先,我們基于數(shù)據(jù)倉庫的方法論在數(shù)加平臺上建設(shè)的數(shù)據(jù)倉庫,通過簡單的命名規(guī)則就構(gòu)建起各種層級和維度的數(shù)據(jù),依賴MaxCompute的強大計算能力,和簡單的SQL處理語言,小紅唇技術(shù)團隊只有一名數(shù)據(jù)工程師就能快速生產(chǎn)出各種數(shù)據(jù),以支撐各種BI報表。
第二,流計算的引入,提高了小紅唇業(yè)務(wù)的實時表達能力而又沒有增大開發(fā)成本。對某些業(yè)務(wù)還起到了異步,解耦和降級的作用,大大降低了對線上已有的復(fù)雜業(yè)務(wù)的影響,因而降低了開發(fā)和維護成本。
第三,與機器學(xué)習(xí)算法平臺PAI的對接也幫助了小紅唇技術(shù)團隊在機器學(xué)習(xí)等高難度領(lǐng)域大數(shù)據(jù)應(yīng)用的探索,比如我們嘗試了訓(xùn)練回歸模型對用戶上傳視頻的打分,還有對文本的處理聚類等。
第四,基于統(tǒng)一的數(shù)據(jù)存儲和計算,我們通過對用戶的特征抽取,開發(fā)了自己的一套基于內(nèi)容的推薦模型(通過用戶對內(nèi)容的行為,在MaxCompute中通過SQL/MR的計算生成用戶特征,通過DataX存儲在 OTS 中,在實時的計算中獲取并對用戶進行基于興趣的內(nèi)容推薦),和阿里云推薦引擎一起,為用戶提供個性化內(nèi)容,也取得了不錯的效果。同時也在智能搜索方面做了初步的嘗試。
當(dāng)然,小紅唇在數(shù)加平臺上的大數(shù)據(jù)實踐也并非一帆風(fēng)順,期間也有對于產(chǎn)品理解和數(shù)加平臺自身的一些問題,比如初期大量的數(shù)據(jù)搬運和同步工作掣肘了業(yè)務(wù)的快速開發(fā),MaxCompute提供的算子不太豐富,需要自行開發(fā)udf(MaxCompute2.0將會有巨大的改進,同時更多的上下游產(chǎn)品被打通),初期數(shù)加平臺和其它上下游產(chǎn)品打通不夠等等。但是數(shù)加平臺強大的計算能力和完整的產(chǎn)品布局對小紅唇的業(yè)務(wù)擴展和決策支撐起到了關(guān)鍵的作用。
技術(shù)的不斷進化和升級需要匹配業(yè)務(wù)的水平和規(guī)模,對于小紅唇這樣的初創(chuàng)企業(yè),背靠阿里云強大的平臺,能夠快速應(yīng)用新技術(shù)并得到價值的轉(zhuǎn)化,實現(xiàn)彎道超車,并不斷完善自身技術(shù)架構(gòu)和能力,在不斷的創(chuàng)新中得到發(fā)展。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗與 t 檢驗:差異、適用場景與實踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗是驗證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實踐指南 在 Python 進行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗 ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10