天天看點

美柚:最懂女性App背後的混合雲架構與大資料服務

免費開通大資料服務:https://www.aliyun.com/product/odps

<b>直播視訊:</b>

<b>

美柚:最懂女性App背後的混合雲架構與大資料服務

</b>

(點選圖檔檢視視訊)

幻燈片下載下傳位址:https://oss.aliyuncs.com/yqfiles/5b0a3ac1717e9f25bfd528e1abb60f9c.pdf

3月25日雲栖社群線上實時分享順利結束,本次美柚帶來的分享包括如何充分利用現有機房伺服器資源與阿裡雲産品組建混合雲架構,實作快速部署與大資料的處理與計算服務。同時也詳細介紹了美柚在多元度使用者資料分析處理和大資料智能挖掘技術的實踐經驗。本次視訊直播的整理文章、視訊、幻燈片整理完畢,如下内容。

<b>混合雲</b>

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖一美柚混合雲</b>

在2013年美柚成立之初,行業内雲生态圈并不是十分完善。是以,最初的架構采用自建機房的傳統開發方式,至今為止,托管機房内伺服器數量達300台之多;同時,為了迎合大資料發展的趨勢,美柚也搭建了自己的hadoop、spark、storm、kylin等對應的大資料處理平台;在資料庫方面,采用mysql、mogodb、redis、counchbase等主流資料庫。在2014年,接觸阿裡雲之後,逐漸采用阿裡雲的産品,從最開始接觸公測的ads到現在使用的ecs、maxcompute、rds、分析型資料庫、tae、阿裡雲雲盾等等,目前美柚形成了混合雲的模式,既有一定規模的托管機房,也積極的使用阿裡雲的産品。

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖二 服務分布</b>

雲上設施和雲下設施分工各不相同。因為最初的架構是在托管機房上建立的,是以現在主要的app接口、社群、廣告系統、使用者中心、柚币中心以及包括app和社群的營運背景都部署在托管機房;同時搜尋、推送、實時監控、反垃圾等最初建立起的基礎服務也是部署在托管機房裡面的;此外,托管機房内也有一些如spark、hadoop等大資料處理平台,但叢集規模相對較小。

美柚的整個官網全部部署在阿裡雲上,同時美柚電商柚子街也是基于阿裡雲建立的,包括整個電商平台和營運背景、招商系統。此外,還基于阿裡雲搭建了bi系統。最後,為了緩解自建大資料叢集的規模較小的情況,積極采用阿裡雲大資料平台對資料進行分析和處理計算。

<b>混合雲之間的資料互動</b>

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖三 混合雲之間的資料互動</b>

上圖是托管機房和阿裡雲之間的資料流通情況,可以看到每天會有一部分資料包括業務日志、資料庫的增量資料會從托管機房流向阿裡雲。資料流向阿裡雲的odps後,在odps内進行一些資料計算和算法模型的訓練。然後再将計算的結果導入ads和rds中,其中導入的ads支援bi系統,并且ads能夠多值列查詢和毫秒級的實時響應,有利于生成bi報表;另一部分資料存入rds中,不僅降低了存儲成本,同時也提高了資料的安全性。經阿裡雲計算和處理後,部分資料還需要回流到托管機房的資料庫和數倉内,回流的目的是因為現在還有一些比較重要的服務還在托管機房内部署,并且從機房調用可以極好的縮短調用的延遲。每日從自建機房流向阿裡雲的資料量相當大,對于一些重要的資料如使用者資料,在自有機房和阿裡雲上進行了雙活,首先從業務資料庫先同步到自建機房的hbase叢集中做一個備份,然後在阿裡雲上也做了一個備份,這些資料以一小時為間隔進行同步,以此確定重要資料的安全。

從機房到阿裡雲上采用逐類更新的方式,準實時的資料依舊在托管機房處理;對一些大資料計算和實時性要求不是很高的資料将其流向阿裡雲,借助阿裡雲超強的計算能力和超大的叢集規模進行計算處理,同時這些資料會在t+1日進行更新。

<b>api實時監控</b>

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖四 api實時監控</b>

随着美柚不斷發展,系統逐漸受到一些惡意攻擊,包括惡意抓取、ddos攻擊等,是以api實時監控顯得不可或缺。目前通過使用阿裡雲盾ddos高防ip,有效地抵禦部分網絡攻擊,并可以進行流量清洗和分析。在此基礎上,美柚還自主研發了api實時監控系統,監控系統的資料是來自托管機房的實時處理計算平台,通過監控系統可以實時觀察服務端響應時間、處理數目以及各個接口的調用分布。通過全鍊路實時監控服務品質,保障使用者極緻體驗。同時作為一個移動網際網路公司,美柚将api實時監控從傳統的服務部署轉向移動化,在移動端android/ios進行實時業務監控與預警,使得開發和運維在任一地點任意時間都能對實時業務了如指掌,可以第一時間發現問題所在。

<b>大資料智能挖掘</b>

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖五 大資料助力社群電商生态</b>

上圖是美柚大資料智能挖掘的大緻架構,作為一個社群電商一體化的公司,美柚利用大資料挖掘打通整個生态系統。以使用者為中心,通過對使用者的深入分析,形成使用者畫像,深入了解使用者需求,個性化的改造社群使其更有溫度、更具黏性。同時基于對使用者的了解,使得社群電商能夠進行精準化的推薦,深入了解使用者的需求。基于對女性使用者的了解,對使用者做了多元度的劃分,品牌商和廣告主精準的投放廣告,可得到更高的收益。

美柚采用兩套系統存儲使用者資料,在阿裡雲上,使用者資料主要存放在ads上,将使用者特征存放在ads的多值列中;在自建機房内,采用kylin中的cube來存放使用者的基礎次元的特征,便于快速的查詢。

<b>多元度使用者資料</b>

美柚bi系統顯示其使用者遍布全國各地,包含港澳台,使用者年齡段從70前到00後均有,其中95後居多,使用者身份有少女、備孕、懷孕、辣媽,形成了完整的女性生态系統。

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖六 多元度使用者資料</b>

美柚基于女性生态系統,形成大量的多元度的女性相關資料。使用者的經期、體重、體溫、孕期日志記錄資料,加上社群内收集的使用者的浏覽、發帖、回複等資料,同時再結合使用者的婚姻、年齡、星座身份、手機裝置等基礎資訊,還有一些社交媒體上抓取的重合資料,補充完整一個使用者全部資料。基于上述完整的資料,形成使用者畫像,深入洞察與服務女性,做最懂女性的app。

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖七 使用者記錄分析</b>

上圖是具體的使用者記錄分析。最左邊是使用者的好習慣,通過使用者在app上記錄的好習慣,建立任務系統,鼓勵使用者繼續将好習慣保持;中間圖表記錄了女性不舒服的狀态,上面有很多選項,同時使用者也可以自定義自已的情況,通過對圖表的的跟蹤,可以對女性的健康狀态進行分析;右邊的圖表顯示了一些私密資訊,做到個性化定制,滿足不同需求。目前美柚月活躍使用者中使用記錄的占比達到84.8%,通過資料分析可以幫助寶媽們科學備孕,關愛女性健康。

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖八 多元度使用者标簽</b>

通過對女性在生态系統的分析,制定多元度的使用者标簽。其中基礎屬性标簽包括女性的年齡、婚姻、身份、星座等。行業标簽是基于對使用者行為的分析和第三方資料的補充形成的;興趣标簽,可以幫助了解使用者在社群和電商平台行為記錄。目前美柚總共具有200多類使用者标簽,通過這些标簽可以形成非常豐富的使用者畫像。

<b>大資料應用</b>

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖九 産品地圖</b>

上圖是大資料産品地圖,圖中包含了美柚利用大資料衍生的産品。其中已上線的bi系統,是通過大資料分析形成的報表類,它能夠加深對系統的了解和輔助下一步業務決策的進行;另一個是反垃圾算法,通過大資料算法對一些垃圾廣告智能識别、處理。還有實時業務監控、首頁推薦、個性化推送、個性化搜尋等功能。同時情感分析、輿情監控、關聯推薦、ssp、dmp、ad exchange等功能還在開發中。

美柚:最懂女性App背後的混合雲架構與大資料服務

<b>圖十 反垃圾算法</b>

這張圖展示了美柚利用大資料進行反垃圾算法的整體架構,主要包含兩部分。虛線上方是反垃圾算法的訓練流程,最開始是基于nlp自然語言處理進行,首先對文本資料(垃圾貼和正常貼)進行分詞,這些分詞需要定期更新,然後再對文章進行特征處理和選取,将提取之後的特征送入分類器模型訓練,其中分類器包括貝葉斯分類、邏輯回歸分類等,通過訓練輸出分類模型的結果。這些訓練最初是在自有機房進行的,後來随着資料量的增加,已将部分模型訓練遷移到阿裡雲上。

虛線下方是機房内實時計算的處理流程,使用者發帖和回複之後,将其寫入kafka消息隊列,首先會對白名單使用者過濾,然後一是依據分類模型的訓練效果,對文本進行識别和分類,對垃圾帖和非垃圾帖進行判别;另外的方式就是通過simhash算法對文本相似對度進行計算,進行相似貼統計,最後通過這些政策彙總,生成整個反垃圾算法。近期美柚對該算法又做了進一步的疊代,對使用者的昵稱、發帖時間間隔、發帖行為進行分析,更好地進行了預防垃圾帖。

通過阿裡雲提供的豐富的開發套件和算法庫,大大縮短了美柚從想法到産品的時間。

<b>qa環節:</b>

1、美柚目前采用的是混合雲架構,未來有可能将全部架構遷移到阿裡雲上嗎?

<b>答:</b>美柚采用混合雲的一個原因是因為公司在13年就已經發展起來,自有機房已經具有一定的規模,由于阿裡雲的高性能、高計算,才采取了混合雲的架構。短時間内,依舊會保持混合雲的架構,一方面是希望技術團隊繼續發展大資料計算的能力,另外一方面是否全面遷移到阿裡雲上,還是根據以後的業務發展做決定。

2、美柚上面的文章可能會有億萬的浏覽量,美柚app是如何應對如此之大的閱讀量的?

<b>答:</b>在提升移動端體驗做了很多的事情,移動端對延遲非常敏感,首先在用戶端做了很多優化,在緩存和頁面加載上都追求極緻;其次,參照阿裡的手淘,搭建了http dns,防止營運商劫持,同時也能縮短dns的解析時間,在服務端也進行了很多優化,對資料層進行分離,使用高效的緩存。

3、美柚有多少專職運維人員?

<b>答:</b>美柚目前專職運維人員隻有三個,借助于目前的混合雲架構,通過阿裡雲的運維監控、運維報警等機制,使得運維人員在自建機房和雲上運維遊刃有餘。

4、美柚目前的美柚女生助手、柚寶寶孕育等五個app在架構有什麼差別?

<b>答:</b>最開始研發的幾個app的接口都是放在自建機房的,去年新上線的電商app是完全搭建在阿裡雲上的。

5、美柚如何處理高并發的場景?

<b>答:</b>以社群為例,每天的發帖回複量都是很大,每天晚上的九點到十一點是一個通路高峰。為了應對高并發場景,在服務端,進行了很多分層和子產品化的設計,比如将資料層和業務層進行分離;在開發語言的選擇上,使用輕量級語言php在社群做一些業務級别的實作;複雜的、異步、延遲比較大的處理下沉,用java和c++進行實作。

6、node.js在美柚的使用場景?

<b>答:</b>node.js用的相對較少,主要用于前端和後端的分離,去年年底才開始使用,目前還處于嘗試階段。

<b>關于分享者</b>

黃益聰 美柚技術總監

美柚通過社群+工具+電商為廣大女性提供一站式綜合服務,滿足女性群體交流溝通、知識擷取、購物三大需求。《網際網路周刊》釋出2015年度app分類排行榜,美柚位居女性app第一位。同年12月,在清科集團、投資界主辦的2015中國最具投資價值企業50強評選中,美柚憑借在女性市場的卓越表現從3000多家報名企業中脫穎而出,獲評“2015中國最具投資價值企業50強”,截止到2015年7月,美柚使用者超過1億,日活躍使用者500萬。

<b>相關系列文章:</b>

第九期:《微網誌:一億通路量背後的分鐘級伺服器擴容》

第八期:《有貨:六層混合雲架構打造中國最潮生态圈》

第六期:《塗鴉科技:支撐從零暴增數十億資料的背後,竟無專職運維!》

第五期:《千萬級使用者app小咖秀:服務端架構設計分享》

第四期:《空格app億元a輪融資背後:雲上多場景技術架構實踐與經驗》

第三期:《國内線上預訂模式開創者驢媽媽旅遊網:如何在混合雲上搭建産品資料分析系統》

第二期:《遊族網絡:如何運維千台以上遊戲雲伺服器》

第一期:《淘寶丁奇:如何解決影響mysql使用的9大問題》