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

《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——让孩子爱上编程!


基于Docker和CoreOS的开源PaaS平台——Deis v1.0正式发布! 微软宣布.NET开发环境开源 支持三大操作系统 爆发吧,诺基亚!前员工开发物联网新设备 详解Visual Studio Emulator for Android,微软的Mobile First! HPC China 2014完美落幕,AMD Firepro荣获好评! 揭秘微软的Container技术之一Drawbridge AWS副总裁谈数据中心网络打造 【最具价值CTO评选秀】出门问问CTO雷欣:从技术极客到核心管理的秘密 《近匠》APICloud:“云”+“端”一体的移动API提供者 Oculus移动SDK发布!John Carmack操刀、集成Unity 4.5 11月15日深圳见!深圳微信开发者大会公布全部议程 参与2014中国大数据行业大调查 BDTC门票等你拿 HTML5规范尘埃落定,5个开发工具推荐 盘点最受开发者喜爱的Android 5.0 Lollipop API IoE Day侧记:想开发智能硬件?先要弄明白这几个问题 【问底】许鹏:使用Spark+Cassandra打造高性能数据分析平台(二) 微软承诺所有Lumia WP8设备将升级至Win10,用户会买账吗? 周末,深圳微信开发者大会等您来!(参会必读+名单) 营造云安全生态链 第五届云安全联盟高峰论坛在京顺利召开 中国大数据六大技术变迁记 【最具价值CTO评选秀】当当网CTO熊长青:结合行业及技术发展,规划技术方向 社交颠覆传统,环信技术交流沙龙纪实(组图) 揭秘经典案例炼成之道 微信开发者大会精华回顾 从一家电子商务网站学到的经验教训 【最具价值CTO评选秀】极路由CTO康晓宁:极客转型CTO的感悟 盘点这些年来的“微信万能论” 《近匠》亲加通讯云:IM即时通讯API的极致服务者 TCL杯HTML5智能电视开发大赛完美落幕,8项获奖应用大揭晓! Xcode 6.2 Beta发布,支持WatchKit的iOS 8.2 SDK来了! 【最具价值CTO评选秀】携程高级技术副总裁叶亚明:从呼叫中心到移动互联网的演进 为什么靠谱的公司都应该参加CTO评选? 本周五3。15是giko(孤独的老鱼)的生日! 用bcb编写cgi程序 关于权限的问题用SQL语句实现?急急!!! access violation 问题 小弟的登陆程序还有点问题,请各位帮忙解决。 听说能自己给自己加分? ◆◆◆奇怪,关于ZIP 压缩文件??? 怎么在运行时为picutrbox控件内部增加其他控件?还有问题解决了,分怎么给? 如何恢复ASP的组件服务? 又一个C/S方式下的编程问题,不明白呀?为什么呢?怎么做呢? 关于弹出菜单的问题,请赐教! 请您指教100分。 程序是中文的,可以在日文的 WINDOWS 98 上正常显示 , 及运行吗 ? 让对象在窗体内来回移动,当移动到窗体边界又能反弹回去,这段代码怎么写? 怎样把其他应用程序的主菜单变灰? 大学本科,,函授,自考,夜大,远程教育,自学!哪个硬! 关于TNMUDP不能接收>2048数据包的问题? 关于sizeof()函数的疑问? 请问关于O的设计问题? 在sql server 2000中如何创建一个database 程序是中文的,可以在日文的 WINDOWS 98 上正常显示 , 及运行吗 ? 有没有用过zope的大侠,谈谈感受吧:D LNK4089是什么原因引起的? ADO中,如何获得连接字符串? 请问关于OO的设计问题之二? 语句的错误? 换个id灌水的感觉真爽 一个最简单的存储过程 关于空间的问题 资源文件是什麽,怎麽使用? 请问怎样将下拉数据窗口中的某一行设置为当前所显示的行? InstallShield 如何做个 unistall 的 shortcut 到菜单里 scandir怎么用? 怎样从CMainFrame中调用DOCUMENT类中的PUBLIC成员!谢谢! 在线成中如何更新一个对话框 学习JAVA用JSDK开发还是VJ++?有什么区别吗?还是一样? "Resource id #1"是什么意思?? 主板上风扇都不转了,是什么原因??请教,谢谢!!! 乒乓球队进行比赛.... WIN98中公用文件夹窗体中文本框不能显示汉字 请问大虾:MDI窗体的菜单能不能和子窗体的菜单一起显示在菜单栏上??? 再谈关于PB控制Excel的问题。。。(ton2000) COM连接点客户端接受器的实现问题 为什么我的安装包不能安装?请高手指教,急啊。 送分问题:ASP字符串处理的函数有哪些? VB中将数据库中单条记录输出并打印! VB中如何宣告在DLL文件中的函数? 如何在正则表达式中加入变量 delphi 中的table 的filter有没有支持 like方法,该怎么用,同时filter当字段值为中文时怎么写? 主板上所有的风扇都不转了,硬盘和cpu都能正常工作,请教,谢谢!! 如何判别文件是不是文本文件? 请问下这是什么植物 是否有毒? 估测油酸分子的大小实验 配制油酸酒精溶液用有水酒精行吗? 急~~~~测量电源电动势和内阻的误差分析E测E真用安培表外接时,电动势的测量值与真实值相等这该如何理解,希望不要用算式,简单的理解就好了 被硫酸烫伤用干毛巾擦干后再用弱碱水擦可以吗? 与碱反应生成气体的物质有哪些 洋芋淀粉多 水烫伤起水泡怎么办 碱与盐反应,若生成气体,则气体为( ),为什么?(举几个方程式) 暖手宝里面的液体可以用什么代替暖手宝的液体怎么调配 已知化合价怎么求化学式比如氧-2价 钾+1价 怎么求化学式 固体碘化铋钾怎么配制改良碘化铋钾试液 液体暖手宝要怎么用液体暖手宝要怎么弄,为什么我煮了,等它冰了却变成硬的了,按里面的片片也没用了?要怎么煮啊? 已知化学式求化合价?比如说,KIO3,O一般为-2价,如何求其他的? 用碘化铋钾固体如何配制碘化铋钾溶液? 暖手宝用的是什么液体 金属置换金属的化学方程式 小檗碱与碘化铋钾、碘化汞钾、碘化碘钾、硅钨酸反应的现象和结果 请从化学结构上解析偏铝酸是两性物质,并请说明偏铝酸中所含的化学键!网上说偏铝酸中氧和铝之间是两根共价键,但是氧元素和铝元素之间的电负性大于1.7怎么会形成共价键呢? 位于氢后面的金属能否把前面的置换出来么? 直接用碘化铋钾晶体怎么配制碘化铋钾溶液 汽水中含有的一种酸是什么? 电位滴定法中影响测量的因素有哪些? 跪求高一常见离子检验(包括硫酸根亚硫酸根炭酸根和氯离子) 谢谢个位了!如题. 迷迭香酸可以发生水解反应,是因为含有什么? 已知化学式HxROX-1求R元素的化合价. 氯离子是否能使亚硫酸根变成硫酸根 HFO的化学名称?它属于F的含氧酸吗? 苹果生长在南方吗 碳酸钠是碱还是酸 山东的苹果为什么红 有什么因地制宜的因素? 什么是电位滴定法 醋是酸还是碱? 怎么样分辨酸和碱和盐是否发生复分解反应?跟产生的物质溶于水不溶于水有没有关系?还有……如果是不常见的化学方程式,怎么能判断他是固体还是气体? 电位滴定法测定浓度时,那个被测物的体积是怎么选的,比如吸取10.00ML于烧杯中,加水至30ml,那么此时我要算0.1/15.56=C/v 这里的体积是10还是30呢 醋加苏打生成的醋酸钠是晶体还是气体?醋+苏打=醋酸钠+二氧化碳1.生成的醋酸钠是晶体还是气体2.不是气体的话,生成的二氧化碳的纯度是多少?3.生成的二氧化碳用于业余水族缸养水草.我想知 盐和碱反应一定生成新盐和新碱;酸和碱反应一定只生成盐和水这句话对么NaHSO4+NaHCO3=NaSO4+CO2↑+H2O我的答案解释里有这么一句 是怎么回事呢 亚销酸根盐的阴离子亚销酸根阴离子的性质~ 漏水的暖手宝还能用吗? 我有个暖手宝,里面是液体,用时掘铁片就能热,但它破了,还是在微波炉中,请问它有毒吗,那个微波炉可以用吗?我已经洗了,但我怕那些液体在微波炉中加热会挥发! 中亚包括哪些国家 亚硫酸根 硫离子 次氯酸根 哪些是弱酸根?哪些可以和氢氧根共存? 别不看补充问题啊!这个才是关键! 暖手宝排气孔那漏水怎么办是排气孔旁边渗水.不是很多,如果用力压的话,会渗出点水.好像是黄色的液体,请问有什么方法可以补救嘛?暖手宝还能用嘛、? 换煤气瓶时 有红色液体流出 这液体有毒吗 是什么? 偏铝酸根和亚硫酸根能大量共存吗 发面时,面团肿大的原因是面团里产生了大量的二氧化碳吗 有谁知道为什么换煤气瓶时会从管子里流出好像脏水的液体?这液体又是什么东西? 高猛酸根与亚硫酸根在酸性条件下能否共存?离子方程式是什么? 面团加碱还需要加水吗?5斤面团兑多少的碱? ph计校准想用PH计调一个PH=2.0的溶液,但是校准液PH最低只到4.00,那么我改用什么溶液校准?还是这种PH计不能准确测定PH在4以下的溶液? 化学反应中的能量变化都表现为热量的变化.这句话为什么错? 当用电位差计测量待测电源的电动势的大小前为什么要校准电位差计,该校准与检流计 我要测pH值在6-8的溶液,用什么范围的缓冲溶液校准pH计(酸度计)目前我使用6.0和9.1的缓冲溶液组来标准对不对?还是要用4.0和6.0的? 什么气体能与发生碱反应? 电位差计能否测高于工作电源的电动势?原因? pH计测电位电位值持续下降是怎么回事 某同学用油膜法测分子大小时 使用体积比为1/1000的酒精油酸溶液 己测得1mL该油酸为200滴 则一滴酒精油酸溶液含油酸的体积为____ml 在电位差计测电动势实验中待测电源电动势高于电位差计量程时怎么办拜托了各位 请问这是什么植物呢?是不是有毒植物? 氨盐与碱反应生成气体,其它物质能与碱反应生成气体吗?现有某物质A的浓溶液,取少量该溶液与浓KOH溶液共热,生成溶液D与气体E。答案说由题意可知,A能与碱反应生成气体,可确定A为氨盐 复线电位差计最低量程不低于待测电源电动势,为什么?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘