AdMaster技術副總裁談Hadoop、營銷數據、Python和挖掘平臺

http://www.infoq.com/cn/news/2014/09/admaster-hadoop算法

 

盧億雷是現任AdMaster技術副總裁,曾在聯想研究院、百度基礎架構部、Carbonite China工做,關注高可靠、高可用、高擴展、高性能系統服務,以及Hadoop/HBase/Storm/Spark等離線、流式及實時分佈式計算技術。他對分佈式存儲和分佈式計算、超大集羣、大數據分析等有深入理解及實踐經驗,對Lustre、HDFS、HBase、Map/Reduce、Storm、Spark等有很深的理解。曾在聯想研究院、百度基礎架構部、Carbonite China工做。2006年碩士畢業,一直從事雲存儲、雲計算開發及架構工做,多年Hadoop實戰經驗,專一於分佈式存儲、分佈式計算、大數據分析等方向,有兩個發明專利,《一種分佈式文件系統及其數據訪問方法》和《一種數據備份的版本管理方法及裝置》。曾屢次被51CTO、CSDN、IT16八、阿里技術邀請爲嘉賓分享Hadoop大數據在互聯網的應用。數據庫

在今年的QCon上海大會,他將分享Hadoop在營銷數據挖掘方面的實踐。在本次郵件訪談中,他談到了營銷數據的重要性、Python作數據挖掘的易用性以及他對Hadoop相關平臺的見解。安全

InfoQ:營銷數據是跟用戶最緊密相關的數據,近年來也得到了高度關注,請您談談當時爲何選擇這個領域呢?服務器

盧億雷:因爲我對數據有很深的情懷,因此從讀大學開始我就有針對的接觸海量數據(遙感數據),畢業後作雲存儲服務,作分佈式文件系統,後來接觸Hadoop生態系統,後來發現大數據落地除了BAT公司外,營銷數據行業是最好的案例,由於這個行業的需求直接驅動大數據技術的發展,特別是AdMaster一直走在大數據技術的前沿,由於數據營銷須要有實時計算、流式計算、離線計算等需求,因此咱們已經在用HBase,Storm,Spark,OpenStack,Docker等最新的技術了。網絡

InfoQ:您在數據挖掘過程當中,是否是一般使用Python?看了您在PyCon China的演講,想聽您給介紹一下這部分工做,爲何用Python?架構

盧億雷:分兩個層面。Python比較適合快速迭代開發,特別是在數據建模的時候,經過Python能夠快速實現一些算法模型,後期若是要大副度提高性能,仍是須要用Java/C++來實現;另外能夠用Python開發Web服務。AdMaster目前大量使用了Python,如:用Tornado實現的天天超過50億請求的Web採集服務;用Django和Celery實現了Social Master產品;用Twisted和Gevent實現了爬蟲服務;還有研究院用了大量Python框架實現了情感分析等算法模型。框架

InfoQ:數據量大了之後,異構、海量、錯誤數據層出不窮,對此您是如何應對的?機器學習

盧億雷:咱們將數據進行了嚴格的分層來處理,包括有數據採集(Data Collection)、數據清洗(ETL)、數據存儲(Data Storage)、數據挖掘(Data Mining)、數據可視化(Data Visualization),因此咱們會針對不一樣的分層採起不一樣的技術選型,把在線數據(HBase),離線數據(MapReduce),實時數據(Spark),流式數據(Storm)等方式進行了整合。特別是數據清洗這塊,咱們自研了一種分佈式擴充清洗系統,能夠天天高效、穩定、可靠的處理1PB以上的數據流。異步

InfoQ:AdMaster是廣告數據挖掘的領先團隊,請您介紹一下AdMaster的狀況?分佈式

盧億雷:AdMaster主要專一數據挖掘、分析和管理,業務主要覆蓋第三方數字廣告審計和社會化媒體、電商及跨多屏整合領域的大數據分析、管理、應用及綜合解決方案。終端涵蓋我的電腦及移動設備(手機、平板電腦)。AdMaster堅持以軟件爲服務(SaaS)的商業模式,爲企業提供最有效率的數據管理平臺。

咱們如今服務超過300家國內外知名企業,如:寶潔、卡夫、雅詩蘭黛、杜蕾斯、可口可樂、伊利、麥當勞、聯合利華、微軟、東風日產、平安銀行等,涉及快速消費品、汽車、金融、科技和電信等多個領域。

InfoQ:大數據時代對用戶隱私保護其實是有很大挑戰的,您的團隊在挖掘過程當中是如何應對隱私問題的?

盧億雷:大數據時代對用戶隱私保護確實很是關鍵,咱們實現數據安全的「零丟失」、「零泄漏」、「零篡改」。對服務器訪問採用保壘機訪問機制,對數據存儲採用分佈式密鑰管理機制,保證數據高安全。另外咱們嚴格貫徹和落實國內外與公司有關的信息(數據)安全法律法規(包括政府法律法規、行業監管規章等),知足公司業務經營的須要。創建公司的數據安全保護流程管理體系和技術保障體系,實現數據安全問題的事前預防、事中控制和過後評估改進。

InfoQ:Hadoop衍生了不少數據挖掘工具,如Spark、Storm等等,您是如何看待這些工具之間的區別和聯繫的?

盧億雷:Hadoop是一個生態系統,都是根據應用場景而衍生了不少工具,因此他們各有各的優勢。特別是Storm與Spark每一個框架都有本身的最佳應用場景。

Storm是最佳的流式計算框架,Storm的優勢是全內存計算,數據計算過程當中是不會落地的,主要適應用以下兩個場景:

A、流數據處理:能夠用來處理源源不斷流進來的消息,處理以後將結果寫入到某個存儲(數據庫、文件系統)中去。

B、分佈式RPC:因爲處理組件是分佈式的,並且處理延遲極低,因此能夠做爲一個通用的分佈式RPC框架來使用。

Spark是一個基於內存計算的開源集羣計算系統,目的是更快速的進行數據分析。它不一樣於MapReduce的是Job中間輸出和結果能夠保存在內存中,從而再也不須要讀寫HDFS,減小IO延遲,所以Spark能更好地適用於數據挖掘與機器學習等須要迭代的Map Reduce的算法。主要適應場景以下:

A、屢次操做特定數據集的應用場合:須要屢次操做特定數據集的應用場合,迭代次數越多,相比MapReduce效果會更好。

B、粗粒度更新狀態的應用:因爲RDD的特性,Spark不適用那種異步細粒度更新狀態的應用,相比Storm,它能夠比較好實現分鐘級的計算。Spark Streaming的小批量處理的方式使得它能夠同時兼容批量和實時數據處理的邏輯和算法。方便了一些須要歷史數據和實時數據聯合分析的特定應用場合。這也是它可能比Storm發展更快的一個特色。

InfoQ:您以爲海量數據挖掘浪潮裏面最關鍵的技術是什麼?

盧億雷:首先須要對業務須要有必定的理解,包括社交網絡、電商、新聞、客戶關係數據等行業,另外須要有大數據技術的積累,有過超大集羣的實戰經驗,以及對推薦算法、分類、聚類、NLP等算法有很深的研究。再細化一點就是須要了解開源的工具如Hadoop生態系統裏的MapReduce、HBase、Storm、Spark等系統,還有就是須要對Java、Scala、Python語言有深刻了解,算法能夠去熟悉Mahout(也正在往Spark上集成)的代碼實現。

採訪者簡介

張天雷(@小猴機器人),清華大學計算機系博士,熟悉知識挖掘,機器學習, 社交網絡輿情監控,時間序列預測等應用。目前主要從事國產無人車相關的研發工做。

相關文章
相關標籤/搜索