说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

《Hadoop核心技术》作者翟周伟 :我与Hadoop的不解之缘

HTML文档下载 WORD文档下载 PDF文档下载
翟周伟,资深Hadoop技术专家,《Hadoop开源云计算平台》、《Hadoop核心技术》作者。日前,CSDN记者对他进行了采访,请他解读Hadoop发展现状、特性及发展前景,以及这一路走来的心路历程。

翟周伟,资深Hadoop技术专家,专注于Hadoop&大数据,数据挖掘,自然语言处理领域,目前就职于百度。2009年,利用Hadoop构建商业级大数据系统,是国内该领域最早的一批人之一;负责设计多个基于Hadoop的大数据平台和分析系统;2011年合著出版《Hadoop开源云计算平台》,并在自然语言处理领域申请过一项发明专利;2015年,完成著作《Hadoop核心技术》一书。

日前,CSDN记者采访了翟周伟,请他解读Hadoop发展现状、特性及发展前景,分享创作《Hadoop核心技术》一书的灵感来源以及经验感悟。


翟周伟:不断学习、不断思考,享受一章一节带来的喜悦

CSDN:首先请介绍下自已、目前所在公司以及负责的领域。

翟周伟:北京邮电大学研究生毕业,目前任职于百度,主要从事网页搜索相关的大规模数据挖掘和自然语言处理领域相关研发工作。

CSDN:Hadoop在百度主要运用在哪些领域?使用情况是怎样的?

翟周伟:Hadoop在百度的应用领域主要包括:大数据挖掘与分析,日志分析平台,数据仓库系统,用户行为分析系统,广告平台等存储与计算服务。

目前百度的Hadoop集群规模已经超过数十个至多,单集群节点数目超过5000台,每天处理的数据量超过8000TB。同时百度在Hadoop的基础上还开发了自己的日志分析平台、数据仓库系统,以及统一C++编程接口,并对Hadoop深度改造,开发了性能更强的HCE(Hadoop C++ Extend Systerm)系统。

邂逅Hadoop

CSDN:你是从什么时候开始接触Hadoop?作为一名Hadoop技术专家最吸引你的是什么?有没有背后的故事分享给大家?

翟周伟:我从2009年9月份开始接触Hadoop,Hadoop已经成为工业界大数据领域的事实标准,最吸引我的是最初Hadoop在大数据处理领域给我的震感,因为在使用Hadoop之前如果要处理上百TB的数据是一件非常困难的事情,首先需要考虑如何将这些数据存储下来,然后还需要考虑如何划分,以及数据容错性等复杂问题,而要完成这样的工作没有1个月的时间是很难搞定的,但是在Hadoop的帮助下一天甚至几个小时就可以完成从程序开发到最终数据产出,而且想想自己可以在很短的时间内操作成千上百台的集群来处理上百TB的数据,还是很震撼的。

CSDN:在国内,你是利用Hadoop构建商业级大数据系统领域最早的人选之一,可以说是敢于吃螃蟹的第一人。那么,你是如何成为核心成员的?在开发期间有没有遇到过什么困难?又是如何克服的?

翟周伟:早在2009年的时候我们就尝试使用Hadoop技术为中国电信研究院,移动研究院等机构构建大数据云平台并作为生产平台为线上业务提供云存储与计算分析服务。这在当时来讲是国内将Hadoop落地应用的最早实践者之一。

在最初参与开发这些项目的时候我还并不是核心成员,而我要做的就是在项目中不断学习并积累Hadoop和大数据相关知识,最重要的就是在项目开发过程中证明自己,证明自己有足够的知识积累和能力完成项目并超出预期,当然在这个过程中也会遇到一些困难和挫折,例如数据的产出和预期不符,系统性能遇到瓶颈等问题,在面对这些问题的时候首先就是不能怕,对自己能解决这些问题要有足够的信心,然后就是认真分析问题,一步一步DEBUG定位问题,最终就可以解决掉这些问题,这也是一个艰苦的工作,不过我更享受成功后的那种喜悦之情,因为我喜欢技术挑战。

Hadoop发展现状、特性及发展前景

CSDN:你怎么看待国内外的Hadoop发展现状?可否预测下Hadoop未来的发展前景?

翟周伟:目前Hadoop可以说是已经成为工业界大数据领域的事实标准,在国外主要以Yahoo、Facebook、EBay、IBM等为代表;在国内则以百度、腾讯、阿里等互联网公司为主。而Hadoop作为开源软件,这些大公司的使用和改进迭代进而又完善并推动Hadoop的进一步发展,因此Hadoop的发展是离不开这些互联网公司的使用,从本质上看还是因为互联网的快速发展导致了海量数据的分布式存储和计算需求,而Hadoop正是为这样的需求提供了非常好的解决方案。

对于Hadoop的发展前景我从以下几个方面谈谈:

第一个方向就是统一资源管理与调度方向,目前各大互联网公司商用的Hadoop集群还是以Hadoop-1.X版本为主,Hadoop-1.X版本的有效性和稳定性已经得到验证,但是Hadoop-1.X也存在很多问题,例如资源分配以槽位为基本单元,没有考虑到应用实际需要的内存,CPU等资源;还有就是Hadoop-1.X仅仅只支持MapReduce模型,计算资源利用率不高,一个MR任务只能包含一个map和一个reduce任务,而实际需求往往是一个DAG任务。针对这些问题社区版Hadoop-2.X提出了YARN框架,在资源管理层来解决这些问题,同时各大商用发行版以及互联网公司也提出类似的框架来解决Hadoop-1.X中的问题。

第二个发展方向就是Hadoop高可用性解决方案,目前的Hadoop还是单Master节点设计,因此集群的规模受到主节点的硬件配置限制,同时可靠性上存在单点故障(SPOF )问题,这一点目前各大Hadoop商业发行版以及各大互联网公司都在研发多Master节点设计的解决方案,因此也是未来重点方向。

第三个发展方向就是Hadoop生态系统集成,目前Hadoop已经发展为一个完备的生态系统,这个生态系统最底层以HDFS和MapReduce为核心,上层为各种存储,计算,分析等应用系统,如何将这些系统很好的集成起来形成一个类似完善的分布式操作系统和云计算应用系统是一个非常诱人的发展方向。

第四点就是灵活性上,目前的Hadoop为用户提供了非常便利的并行计算框架,但是这个框架本身的流程过于复杂,用户实际的需求往往很简单,例如Hadoop中在map的输出和reduce的输入都需要进行排序,而实际上并不是所有的任务都需要排序,因此对于那些不需要排序的应用就会造成资源的浪费又消耗了时间。如果可以提供是否配需的可控制参数就可以很好的解决类似的问题。因此Hadoop的灵活性上也是一个发展方向。

CSDN:Hadoop与Spark相比,两者之间有哪些异同点?各自的优势是什么?此外,Hadoop与Spark都支持容错性,Spark在容错性方面是否比Hadoop更具优越性?你怎么看?

翟周伟:在基本原理上:Hadoop和Spark最大的区别在于Hadoop是基于磁盘的大数据批处理系统;而Spark是基于弹性分布式数据集(RDD,显式地将数据存储到磁盘和内存中)。在模型上,Hadoop以MapReduce模型为核心,而Spark除了map和reduce函数操作之外的很多函数操作,诸如join、groupBy、reduceByKey等。

在优势上,Hadoop可以处理超大规模的数据,适合日志分析挖掘等较少迭代的长任务需求,同时Hadoop很好的结合了数据的分布式存储和计算;而Spark适合数据挖掘,机器学习等多轮迭代式计算任务,Spark本身并没有提高数据的分布式存储解决方案,还需要依赖HDFS等第三方存储系统。

在容错性上需要考虑两个方面,第一就是数据容错性;第二就是节点容错性。Hadoop在数据容错性上考虑的很全面,从HDFS本身的冗余复制机制,到安全模式,数据校验,元数据保护,快照机制等,在节点容错性上Hadoop从资源调度层次来解决。而Spark在数据容错性上是建立在RDD概念之上,当一个节点出现故障时,Spark会根据存储信息重新构造数据集。因此Spark在容错性上并不比Hadoop具有优越性,应该是在容错性上Hadoop考虑的更全面,而Spark更加在意处理数据的效率和响应时间。

CSDN:Hadoop已经成为大数据工业级的标准,有很多组件,比如Hive、Hbase、HDFS等,能说说各自的优缺点以及适合的场景吗?

翟周伟:优缺点以及适应场景如下表格:

 

Hive

Hbase

HDFS

优点

提供了类似SQL的 HiveQL语言进行数据查询。

基于HDFS以多维度排序的映射表形式,key-value存储检索非常高效。

接口简单,使用方便。

缺点

延时大,大规模数据后置处理,数据的前置处理比较简单使得数据预处理不充分。

不支持SQL类似语法,在实时性处理方面不如传统关系数据库。

随机读写性能较差。

适合场景

适应T、P 规模的数据分析。

适合于非结构化数据存储的分布式数据库。

适合一次写入多次读取的场景。

写书感悟——书中自有黄金屋

CSDN:2011年你参与著作了《Hadoop开源云计算平台》,今年你又著写了《Hadoop核心技术》,是什么机缘让你想到要写这本书的?

翟周伟:在2011年《Hadoop开源云计算平台》出版之后可以说是当时国内国人写的第一本Hadoop技术丛书,但是当时这本书编写的时间较为仓促同时相对较为简单,而后2011年8月多进入百度之后发现Hadoop技术在互联网公司内部已经大规模使用,而大多数研发人员都不是很熟悉Hadoop技术的使用,因为我就萌发了再编写一本较为全面又有实战讲解的相关书籍。

CSDN:《Hadoop核心技术》这本书历时多久完成著作的?主要适合哪些开发者?在撰写此书中给你留下最深的感悟是什么?

翟周伟:《Hadoop核心技术》这本书历时2年完成,主要适合大数据Hadoop研发人员、Hadoop应用开发人员、Hadoop运维管理人员等。

撰写此书中给我留下最深的感悟就是理解一门技术和使用专业的术语并且用通俗易懂的语言将所理解的技术讲解出来是有很大不同的,而在这个写作过程中也是我自己不断深入学习提高的一个过程。

CSDN:你如何在进度压力下,享受写书带来的快乐?

翟周伟:写作是一个再创作的过程,因此需要大量的时间进行思路梳理,语言组织,然后才能进行真正的写作,而这些工作时要在工作之余利用空闲时间完成的,因此进度压力还是蛮大的,但是这个过程也是自己不断深入学习,不断思考的过程,而且想想自己的书要被上千上万的读者学习还是很有动力的,每当完成一张一节的时候都可以带给我一个喜悦,而我本身也是享受这样的快乐的。

CSDN:在日常生活中你是通过哪些方式来提升自己技能的?平时的生活节凑是怎样的?

在日常生活工作中我主要还是通过项目实战来提升自己技能的,当发现自己不懂的原理细节时我首先想到的是从相关英文文献或者书籍中了解基本原理,然后阅读源码来进一步深入理解。

平时的生活还是挺紧张的,因为搞互联网的几乎很少有不加班的,而百度的项目安排期往往比较紧,这样留个自己的空闲业余时间就很少了,因此我通常也会很珍惜业余空闲时间。

CSDN:给学习Hadoop集群方面的开发者分享些经验吧。

翟周伟:首先搞清楚什么是Hadoop以及Hadoop可以用来做什么,可以查阅相关网站介绍或者Hadoop综述相关论文文献资料等。

然后,可以从最经典的词频统计程序开始,初步了解MapReduce的基本思路和处理数据的方式。这里建议大家直接浏览Hadoop的官方网站上WiKi文章,并按照WiKi一步一步完成实例的理解和学习。

接着,就可以正式学习Hadoop的基本原理,包括HDFS和MapReduce,先从整体,宏观核心原理看,先别看源码级别。建议这块先阅读Google的相关两篇核心论文:《The Google File System》、《MapReduce: Simplied Data Processing on Large Clusters》;进一步,就可以深入HDFS、MapReduce和模块细节,这个时候可以结合源码深入理解,以及实现机制。

最后就是需要实战了,可以结合自己的项目或者相关需求来完成一些Hadoop相关应用,建议一些比较经典的Hadoop英文原版技术相关丛书:《Hadoop TheDefinitive Guide》、《Hadoop inAction》、《Pro Hadoop》,以及我新出版的《Hadoop核心技术》。


CSDN现开启图书作者专访栏目,欢迎推荐采访人或自荐,来分享你的成长经历和相关技术,相关信息请发送邮件至:xiamz#csdn.net(#换成@)。更多精彩内容,请点击社区之星或搜索关键字图书作者查看。

相关阅读:

  • CSDN学院讲师韦东山:悦己之作,方能悦人
  • 图书作者纪磊访谈:I have a dream——让孩子爱上编程!


值得Java开发者参与贡献的十个开源项目 LokiJS:纯JavaScript实现的轻量级数据库 OpenStack第七次北京Meet Up:谈私有云现状 中国电信携手电商打造跨界O2O联盟 【MDCC 2014】移动开发技术与平台峰会(下):系统演进、应用数据泄露风险 惊喜太多 IntelliJ IDEA 14正式发布 欧派、南航、招行、哈根达斯等加盟 深圳微信大会第二批讲师议题公布 【MDCC】用友高级副总裁谢志华:企业移动化的变革与挑战 HTML5定稿了,为什么原生App世界将被颠覆 走苹果的路子!Jawbone推低端健身追踪设备 专访POWER 8编程挑战赛选手吴亮:集众家之长, 激发算法性能极限 微信沟通接口上线,开启移动应用与公众号的连接 【特惠最后1天】参加深圳微信开发者大会赠书及全套讲师讲义(附大会最新日程) 编码运行两不误!KZPlayground,Objective-C中的Playgrounds 专访PopCap:AR是数字与物质世界的调和剂 【多图】Github编程语言分布统计:JavaScript称霸 【最具价值CTO评选秀】途家美女CTO杨孟彤:不创业会后悔 2014腾讯WE大会:开启未来的五大科技发展趋势 TIOBE 2014年11月编程语言排行榜:R受大数据影响跃至12位 深圳微信开发者大会全部议程出炉 最后仅剩30个参会名额 智能硬件:一半海水,一半火焰 聚焦SDN、NFV、云安全基础架构等技术热点 2014云安全联盟高峰论坛即将召开 富Web应用开发的七大原则 应用原型设计毫无压力!开源Sketch插件管理器Sketch Toolbox 【MDCC专访】友盟副总裁焦岳:从36万款App,看今年的热门领域 一切只为经典 微信开发者大会前瞻(附议程) 从手势识别到增强现实,开发实感应用该了解的技术细节 福利来了,爱拍原创免费为iOS版手游制作宣传视频 【工具推荐】Zrender——轻量级Canvas类库,让绘图大不同! 基于Docker和CoreOS的开源PaaS平台——Deis v1.0正式发布! 微软宣布.NET开发环境开源 支持三大操作系统 怎样将一个全局数组附值后再传入一个函数或过程中,而数组中的值不变? 如何在我的程序中取得别的程序中某一控件的句柄(hwnd)? 小弟的软件刚发布请各位高手指点!来者都给分 使用存储过程建立数据集时怎样指定数据集参数? 救命:Beta2安装时候出错:在Disk1上找不到源文件。 如何将图标文件存入到一个dll文件中? ********杨家将请进********** 求救!!为什么我一打开windows就出现说缺少dll文件,storm.dll,还有load.exe.是为什么呀? 请大虾出手:MFC的DLL工程, 我实现了把一个dll工程的menu装载到我的主工程,但与其对应的ToolBar怎么调出来呢??我很着急! 在mdi表單中調用設為最大化的子表單時,它首先顯示小的子表單,然后才把它最大化,影響美觀,有何辦法解決? 关于在菜单中陷入文本框 20分求助有关SQL数据库的问题(为什么select...into语句无法执行) 哪有里Crystal Reports可以下载(无内容)? Where the 广东外贸外语学院 关于ODBC客户机端配置的问题 谁能给我一个delphi连接access数据库的实例,小弟万分感谢!!!!!!!!!!!!! 我机器里,98,2000装在C盘,XP装在D盘,现在我想只留下XP,不知道该怎么处理???????????????????????????? 如何实现5M以上的文件的上传 从windows进入unix Oracle 中文输入 是否onkeypress和onkeydown不能同时使用呀? Delphi 5下要做一个多 Y 轴的曲线图形,如何实现? 哪有xteamlindows下载?? 万分感谢!!!!! borland 会不会出一个 C# Builder? 乱码,头大了,不知道为什么pb导入excel怎么办 数据统计问题,请大侠门帮忙!急急急!!! 求解ZModem通讯协议源程序----有谁用过CZModemCore 我也不知道对不对! 最高级的问题?搞一个专业的VC程序员基地~~~~~~ 在研究directshow filter的push模式的兄弟请进 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题;否则我快下岗了 有两个问题,每题40分,马上给分!!!! 如何使用打印机? 在爱情方面谁能做到这一点? 谁有 file cutter v1.4的注册码? 有急用! 搞一个专业的VC程序员基地~~~~~~谁愿意加入????? 最新发现:原来C++Bilder的项目文件(.bpr)是XML格式的! 关于FAT32和NTSF的问题 如何用VC实现Email的发送? 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题;否则我快下岗了! 搞一个专业的VC程序员基地~~~~~~需要网页制作高手!! ADO 的用法 m_pRecordset->Fields->GetItem(index)->GetName() 关于CRichEditCtrl的问题之二,取的当前可见行数? 请问在哪里下载IMAIL SERVER???各位帮帮忙!!! 高手请回答,ADO和BDE到底有什么区别,你选择谁?为什么? 高分求教!!!!!!!!!!!!!!!!怎样得到局域网上所有的机器名?(普通WINDOWS网络,用VB?,好象用WNET API可以的) 如何安装com.ibm.bridge2java.*这个包阿? 有人吗???求救! 你也许也会遇到这样的问题? 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题!!! 蛋白质的那课,什么氨基,羧基,肽键,肽链,空间结构,氨基酸,整课都听不懂啊~就通俗点解释下把,它们之间的关系,通式什么的. 上海哪里有买欧姆龙血压计的吗?母亲节快到了,想给妈妈买个欧姆龙原装进口的机器?上海哪里有买?可以打折吗? 历史是什么,它看不见摸不着 形容读书刻苦的成语( )( )( ) 形容读书刻苦的成语啊给好评 瓦楞纸板耐破强度得到的KPa怎么转化为磅,边压得到结果KPa怎么转换为磅/英寸 形容独自刻苦读书的成语 蛋白质的有关习题 海拔三千米是什么意思 欧姆龙7200和7201,这2个型号有什么区别?哪个型号比较好? 蛋白质的相对分子质量怎么算?(具体点,最好能举个例题) 一个人从空中三千米的高度掉到海里 身体正面接触海水 接触的瞬间会不会将人拍死《平面掉下来》 欧姆龙血压计7200好吗帮朋友问的,想知道欧姆龙7200这款怎么样,用着方便吗,天津到哪里买比较好 一条绳长2米,第一次剪去5/2,第二次剪去的比第一次多3/1米,一共剪去多少米?列式 上帝你在哪里?可是,我看不见你! 一条绳子长2分之1米,用去2分之1后,还剩2分之1.判断 关于蛋白质的一道生物计算题~脑残的我求第一小题的解啊~已知有一种多肽,其分子式为C55H70O19N10其完全水解后只得到下列四种氨基酸:甘氨酸C2~H5~O2~N,丙氨酸C3~H7~O2~N,谷氨酸C5~H9~O4~N,苯丙氨酸C9~ 因为天气不好我们看不见下面的东西 形容读书勤奋的成语 Kgf/mm是什么单位?130Kgf/mm是什么意思? 一根10米长的绳子,第一次剪去它的一半,第二次减去剩下的1/3,第三次减去剩下的1/4,如此继续下去,第五次剪后,剩下的绳子长多少米? 尿干化学分析蛋白质+-是什么意思?尿干化学分析结果,蛋白质的结果是+-参考值是- 不知道是什么意思?大夫没说出什么意思来,问问大家是什么意思? 在比例尺是1:2000000的地图上量得甲乙两个城市之间的距离是7.5cm,如果该画在比例尺为1:3000000的地图上,那麽图上的距离是多少cm? 19.5KN换算成kgf是多少? 蛋白质 什么意思 在比例尺时1:2000000的地图上测的长是4.5cm,如果把长改画在比例尺是1:3000000的地图上,应画多长?要列算式,不要打一些横杠! 有一个绳子10米长,第一次减去一半,第二次减去剩下的一半,剪7次后,剩下多少米 kPa 是什么单位 化学上把氨基酸和蛋白质定义为同系物吗 什么东西别人看不到,而自己还可以欣赏到的那? 在比例尺为1:2000的地图上测AB两地间的图上距离为5CM,则AB两地间的实际距离为( )M -蛋白质什么意思 为啥子鸟晚上看不见东西? 已知空气的摩尔质量M=2.9×10-7kg/mol,成年人做一次深呼吸的吸入150cm3,空气,则做一次深呼吸,吸入空气质量约 kg,吸入气体分子数约为 (取一位有效数字)请详述计算过程, 鱼跃血压计和欧姆龙血压计,哪种校准? 为什么人在黑夜里看不见东西? 欧姆龙电子血压计 比较欧姆龙电子血压计 臂式 HEM-7200 和HEM-8102A 哪个更好一些 血压计是买欧姆龙的还是鱼跃的? 用什么东西在纸上写字看不见? 表示书读得、表示精读、表示泛读、表示读书刻苦的成语(各4个) 我在长沙想买台血压计,有谁知道是鱼跃的血压计好.还是欧姆龙血压计好. 有一根10米长的绳子,第一次剪去一半,第二次剪去剩余的一半,……剪七次后,剩下的绳子长多少米?A 六十四分之一米 B 一百二十八分之一米 C 六十四分之五米 D一百二十八分之五米 欧姆龙电子血压计怎么样? 在比例尺是1:2000000的地图上,量得两城市间的距离是6厘米,如果是在1:4000000的地图上,图上距离是多少厘米? 木啊有一根绳子长10米,第一次剪去一半,第二次减去剩余的一半,.剪7次后,剩下的绳子有多长? 欧姆龙的电子血压计怎么这么不准?前几年我妈妈买了个欧姆龙腕式血压计,错的离谱.家里备个听诊器和水银血压计.后来有人说是因为老年人,要用上臂的,上月买了个欧姆龙7051,还是不准,手量 在一幅比例尺是1比2000000的地图上,甲乙两地间的距离是10厘米,如果在比例尺是1比4000000的图上,这两地间的距离是多少?用正反比例解正反 比例的知识解 一根绳子,第一次用去了一半,第二次用去了剩下的一半多6米还剩3米,绳子长多少米 关于蛋白质的相对分子质量有些蛋白质要考虑二硫键(—S—S—)相对分子质量.蛋白质的相对分子质量的计算中,若通过图示或其他形式告知蛋白质中有二硫键形成时,要考虑脱去氢的质量.一 电子血压计品牌选购?松下血压计比欧姆龙的质量差吗?差在哪里?为什么都说欧姆龙的好我选择松下了 什么东西看不见摸不着但很重要? 想买欧姆龙电子血压计7201一款,性能与价格如何? 欧姆龙血压计怎么样,能不能用的住啊,质量挺好的吗?还有么有其他比较好的品牌?具体哪里有卖的? 什么东西看不见、摸不到, 蛋白质那里完全不懂啊……就是肽键与氨基酸的关系和水分子的关系 某蛋白质由n条肽链组成,氨基酸的平均分子量为a,控制蛋白质合成的基因含b个碱基对,则该蛋白质的分子量约()DNA(基因)中碱基数:信使RNA中碱基数:蛋白质中氨基酸数=6:3:1 这个是怎么看 什么东西对于人来说看不见摸不着但很重要? 在生物高一必修一的第二节的蛋白质的结构和功能中,主要是氨基酸的结构不懂什么氨基羧基连在哪啊,还有肽链、肽键的关系,都不是很清楚, 关于生物蛋白质的计算题.急啊!有图!有一处不理解,就那个求基因的相对分子质量,为什么要减去,减的是什么?就这一问,其余都会.请求解答,多谢. 什么东西看不见却摸不到?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn