魅族大數據之用戶洞察平臺



內容來源:2017年5月6日,魅族數據架構師黃振賢在「魅族技術開放日第八期——數據洞察」進行《魅族大數據之用戶洞察平臺介紹》演講分享。IT 大咖說(ID:itdakashuo)做爲獨家視頻合做方,經主辦方和講者審閱受權發佈。
算法

閱讀字數:1869 | 6分鐘閱讀架構

嘉賓演講視頻地址: suo.im/4HBM1x

摘要

魅族DMP(用戶洞察平臺),經過對三方受衆數據的匯聚、清洗、智能運算,構建了龐大的精準人羣數據中心,提供豐富的用戶畫像數據以及實時的場景識別力。對內:無縫對接各種業務平臺的數據應用,如廣告平臺,PUSH推送,個性化推薦之間創建了數據通道,支持公司級的精準營銷,消息及時送達服務等場景。對外:完善對數據的管理及輸出流程,以開放接口形式爲全行業從業者提供標準的精準人羣標籤,幫助優化投放和提高營銷效果。達到對受衆的精準投放,釋放數據真正價值!本文將介紹用戶洞察平臺所採用的架構,探討遇到的技術難點和解決過程,回顧目前架構的不足之處以及未來改進的方向。分佈式

整體介紹

用戶洞察平臺的定位


經過對三方受衆數據的匯聚、清洗、智能運算,構建了龐大的精準人羣數據中心,提供豐富的用戶畫像數據以及實時的場景識別力。 性能

無縫對接各種業務平臺的數據應用,如廣告平臺,PUSH推送,個性化推薦之間創建了數據通道,支持公司級的精準營銷,消息及時送達服務等等。大數據

營銷效果評估,反饋數據可進一步加工,用於提高畫像標籤質量。優化

核心需求

用戶洞察的核心需求包含了如下幾個部分。搜索引擎

標籤生成:互聯網業務變化快,標籤需求變動頻繁。要求系統快速響應標籤需求。設計

人羣洞察:對全量用戶任意標籤進行過濾以及聚合計算,查詢1-2秒內響應。orm

受衆分發:在無縫對接各種業務系統,實現高效實時的精確營銷。cdn

標籤查詢:根據用戶ID查詢用戶畫像詳情,對於廣告業務的查詢須要在更苛刻的50ms內返回。

整體架構

集成開發平臺之做業調度系統上,配置和運行離線計算任務。流平臺(AnyStream)負責實時標籤計算。管理模塊生成的相關規則,存儲在MySQL,供標籤生成任務(Hive/MR/流平臺)使用。用戶畫像(標籤)寬表保存在ES上。Hbase和Redis提供kv查詢。使用開發平臺(OpenAPI)提供對外接口。

標籤生成

根據生成計算的過程,標籤分爲兩類,其中一類是統計類標籤。首先從用戶的行爲裏統計出指標,而後根據標籤生成規則和統計指標做爲輸入,就能夠對應到哪一個用戶屬於什麼消費等級。

算法類標籤計算

標籤除了統計類的以外還有一種算法類的。

選取高置信度資料(如用戶註冊信息)和用戶行爲數據做輸入進行模型訓練。而後使用訓練好的模型進行屬性預測。

單值標籤與多值標籤

單值標籤是指用戶在該標籤下只能取一個值,不能多選。

多值標籤是用戶能夠取該標籤下的多個取值組合。好比用戶能夠有多個興趣愛好。 多值標籤的存在,會影響存儲查詢引擎的選型和存儲結構設計。

標籤生成過程

這種模式的優勢是配置化管理,提供 Web UI 管理標籤的生命週期;基於配置生成標籤,標籤寬表數據與元數據100%一致。

尚存的不足是目前配置化管理只涵蓋到最終的標籤寬表生成。與上游的指標統計和算法預有脫節。上游計算過程是單獨開發,指標定義只是另外配置的數據描述(可能存在不一致)。一些標籤下線(廢除)後,相應的上游任務的依賴須要另外廢除,不然會遺留無用的做業浪費計算資源。

標籤存儲

標籤存儲總覽

ElasticSearch(ES)是一個基於Lucene構建的開源、分佈式、RESTful搜索引擎。可以達到實時搜索,穩定,可靠,快速。基於 ES 實現對全量用戶任意標籤進行在線篩選和聚合分析,秒及響應。Hbase 提供大吞吐量的 key/value 查詢。性能要求更爲苛刻的 key/value 查詢(廣告平臺)經過使用 Redid 來實現。

Why ElasticSearch (ES)

傳統的Vertica社區版有3個節點和1T存儲容量限制。隨着數據規模和調用數暴增,性能出現瓶頸對於多值標籤,只能採用csv方式保存在varchar字段,性能低下。

多值標籤檢索使用字符串 LIKE 操做;聚合雖能經過一些 trick 來支持,但性能太差。

而如今ES可以達到實時搜索,穩定,可靠,快速。在線更新(實時/準實時更新)水平擴展能力強。Array type完美支持多值標籤存儲和分析場景。

HBase與Redis

Hbase提供低成本,高吞吐量的 kv 查詢。知足通常業務的查詢,缺點是查詢響應時間不太理想(針對廣告業務而言)。

而對於Redis,廣告業務提出 50ms 內的查詢延遲,這種苛刻要求需用 Redis 實現。 Redis存儲目前只服務於廣告平臺的查詢調用。

考慮成本因素,主要使用 Hbase 來提供KV查詢。部分要求苛刻的業務,使用 Redis 做爲補充。

平臺功能

主要功能列表

平臺的主要功能有五種,人羣管理、人羣篩選、畫像洞察、受衆分發和畫像查詢。

人羣管理可經過兩種方式建立。一、指定標籤條件;二、導入imei列表,對人羣進行修改、刪除等操做。

人羣篩選是指定標籤條件選項,查詢知足條件的用戶數。

畫像洞察分爲兩步。首先指定標籤條件選項選出用戶羣體,而後再指定要分析的標籤,經過聚合運算,分析用戶特徵。

受衆分發須要採起必定的技術手段,把指定人羣推至下游的營銷渠道(廣告平臺、推送平臺、OTA等)。

畫像查詢則是對下游系統提供查詢接口,調用方指定用戶標識(imei)查詢該用戶的畫像標籤。

今天的分享就到這裏,謝謝你們

相關文章
相關標籤/搜索