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、IT168、阿里技术邀请为嘉宾分享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上集成)的代码实现。
采访者简介
张天雷(@小猴机器人),清华大学计算机系博士,熟悉知识挖掘,机器学习, 社交网络舆情监控,时间序列预测等应用。目前主要从事国产无人车相关的研发工作。
AdMaster技术副总裁谈Hadoop、营销数据、Python和挖掘平台的更多相关文章
- CTO和技术副总裁应该如何分工?谁才是技术领导者?
谁是初创公司的技术领导者,是CTO还是技术副总裁?任何在创业公司工作的人都知道,我们不应该去问这个问题.因为这两个是非常不同的角色,角色本身会随着创业公司的发展而变化,两者对于业务规模都很重要. 简单 ...
- Amazon前技术副总裁解剖完美技术面试
Amazon前技术副总裁解剖完美技术面试 投递人 itwriter 发布于 2014-03-03 14:30 评论(0) 有1729人阅读 原文链接 [收藏] « » 英文原文:The Anat ...
- 亚马逊副总裁谈Marketplace平台的个性化服务
说到个性化,亚马逊无疑是挖掘与利用数据为消费者打造个性化网购体验的先驱之一.而现在,几乎所有的公司和网站都在利用更加个性化的推荐算法为用户提供更好的购物和浏览体验. 亚马逊近年来尤其重视将其个性化特性 ...
- hadoop离线数据存储和挖掘架构
前序: 当你把你知道的东西,写下来,让人看明白是一种境界:当你能把自己写下来的东西给人讲明白,又是另一种境界.在这个过程中,我们都需要历练. 基于hadoop集群下海量离线数据存储和挖掘分析架构: 架 ...
- 运营好帮手| 华为DTM助电商类应用实现营销数据快速跟踪
对于电商来说,销售额就是生命线,业务运营人员需要实时关注订单量,交易额,支付转化率等,并从各种维度对比分析,无论增幅或降幅,都需要马上找到原因,落地运营手段进行干预.快速准确的得到各种营销数据就显得格 ...
- 超人学院Hadoop大数据技术资源分享
超人学院Hadoop大数据技术资源分享 http://bbs.superwu.cn/forum.php?mod=viewthread&tid=807&fromuid=645 很多其它精 ...
- hadoop大数据技术架构详解
大数据的时代已经来了,信息的爆炸式增长使得越来越多的行业面临这大量数据需要存储和分析的挑战.Hadoop作为一个开源的分布式并行处理平台,以其高拓展.高效率.高可靠等优点越来越受到欢迎.这同时也带动了 ...
- 亚马逊AWS业务副总裁:如何在基础设施上降成本
腾讯科技 林靖东 11月17日编译 亚马逊Amazon Web Services业务的副总裁.著名工程师詹姆斯汉密尔顿(James Hamilton)在AWS re:Invent大会上解释了公司是如何 ...
- 阿里封神谈hadoop学习之路
阿里封神谈hadoop学习之路 封神 2016-04-14 16:03:51 浏览3283 评论3 发表于: 阿里云E-MapReduce >> 开源大数据周刊 hadoop 学生 s ...
随机推荐
- JVM7、8参数详解及优化
1. JVM堆内存划分 这两天看到下面这篇文章的图不错. 一图读懂JVM架构解析 1.1 JDK7及以前的版本 其中最上一层是Nursery内存,一个对象被创建以后首先被放到Nursery中的Eden ...
- Nginx配置直接php
nginx配置文件: server { listen 80; server_name localhost; access_log /var/log/nginx/log/host.access.log ...
- USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- MC9S08JS16
Introduction The attached files provide a port of a combined TBDML/OSBDM code to a MC9S08JS16 proces ...
- MSDN WinUSB Example
The WinUSB user-mode library uses device interface classes to communicate with the kernel-mode USB s ...
- jquery-chosen设置默认值
<span style="font-size:18px;"> <select id="select1" class="select1 ...
- android adb命令 unable to connect to 192.168.1.155:5555
如果使用有线网络无法用adb connect命令连接设备的话,可以选择使用无线wifi来连接. 首先在android设备上装一个叫做Adb Wireless的软件,打开wifi,然后打开adb wir ...
- 在树莓派2上安装 Windows 10
微软在2015年4月29日发布了树莓派玩家期待已久的 Windows 10 物联网核心预览版(Windows 10 IoT Core Insider Preview Image for Raspber ...
- Xamarin.iOS,AOT,JIT,Limitations
Since applications on the iPhone using Xamarin.iOS are compiled to static code, it is not possible t ...
- mqtt Qos
mqtt Qos QoS Level 0:至多一次意思就是给你转发一次就得了,不管你有没收到.这个我理解是如果接收方离线了就不能收到消息,可以用在音视频聊天请求,因为当接收方离线后就不用收到请求了,就 ...
- 【linux c】setsockopt 详解
转自:http://blog.csdn.net/zhonglinzhang/article/details/9183229 功能描述: 获取或者设置与某个套接字关联的选 项.选项可能存在 ...