hadoop的介绍
Apache Nutch是Hadoop的源头,该项目始于2002年,是Apache Lucene 的子项目之一。至2004年,Google在OSDI上公开发表了题为“MapReduce: Simplified Data Processing on Large Clusters”的论文,受到启发的Doug Cutting等人开始实现MapReduce计算框架并与NDFS(Nutch Distributed File System)结合支持Nutch的主要算法。至2006年逐渐成为一套完整而独立的软件,起名为Hadoop。2008年初,Hadoop成为 Apache的顶级项目,应用到除Yahoo!以外的很多互联网公司。
Hadoop主要提供了一套名为HDFS的分布式文件系统以及支持Map-Reduce的计算框架。此外,还提供构建在HDFS 和Map/Reduce之上的可扩展的数据仓库Hive,结构化数据库HBase,数据流高层语言Pig,高性能分布式协同服务ZooKeeper,以及 面向大规模分布式系统的数据收集软件Chukwa等。
Hadoop技术已经在互联网领域得以广泛的应用,同时也得到研究界的普遍关注。如Yahoo!使用4000节点的机群运行Hadoop,支持广告系统和 Web搜索的研究;Facebook使用1000节点的机群运行Hadoop,存储日志数据,支持其上的数据分析和机器学习;百度用Hadoop处理每周 200TB的数据,进行搜索日志分析和网页数据挖掘工作;中移动研究院基于Hadoop开发了“大云”(BigCloud)系统,不但用于相关数据分析, 还对外提供服务;淘宝的Hadoop系统用于存储并处理电子商务的交易相关数据。国内的高校和科研院所基于Hadoop在数据存储、资源管理、作业调度、 性能优化、系统高可用性和安全性方面进行研究,相关研究成果多以开源形式贡献给Hadoop社区。
在国内最早运用Hadoop技术的是互联网公司,因为Hadoop是开源软件,当时国内尚无针对Hadoop的交流平台,Hadoop in China志愿者社区正是在这样的形势下自然形成的。Hadoop in China大会是这个志愿者社区的窗口,其前身是Hadoop技术沙龙。第一次举办沙龙是在2008年11月23日,目的是为了让更多的Hadoop技术 爱好者能够互相认识,并能够在一起交流学术和技术心得。会议邀请了Yahoo!、Facebook、百度等互联网企业的资深技术人员到场讲解了 Hadoop技术的原理、应用和很多内部技术细节。经过两年多的努力,Hadoop in China大会已逐渐成为集技术研讨、交流和成果展示为一身的综合性技术交流平台,Hadoop in China 志愿者社区已成为国内推广Hadoop技术的重要力量之一。感谢为Hadoop in China 社区做出贡献的公司、单位和个人!
我是今年年初的时候就像学习hadoop来着,但是中间有段时间去学习了手机android开发。耽误一段时间。
最近这不才刚跟你联系上。现在我还是有很多疑问。
1.我学完,做两个例子基本达到入门程度。找工作容易嘛?
2.我刚进公司的话是直接加入到hadoop的项目吗?
2.工作待遇工资怎么样。我做了快两年的java web开发。
3.我现在还上着班,学习只能说是周末跟晚上学习。不知道这样可以不。
4.学习hadoop许要什么样的基础,java到什么程度啊,linux回到什么程度啊。
5.学习需要哪些硬件设备啥的。一台笔记本是不是就够了。
6.还有个就是跟你学的话,学费是多少啊。毕竟我是去年才毕业的嘛,现在工资也不高。
希望你看到帮我解答下这些疑问。我是想尽快就能学习。最好是10.1之前就能学完找到hadoop的工作。
------------------------------------------------------------------------------------------------
以下是我的回答:
1.第一个找工作看你刚开始是注重待遇还是注重方向,现在业界也都在用hadoop,所以说需求是蛮大的,如果想去大公司 高薪从事hadoop的工作光靠培训学习是肯定不够的,我给的建议就是你对hadoop的做到比一般的人了解深入,然后以一个新人的态度去加入一些目前想投入hadoop技术的一些中小企业。
2.学到什么程度你会算有优势呢,第一你得知道hadoop是什么东西,能解决什么问题,这些百度google都能搜到,需要自己看大量的资料,宏观的了解他,选择一门技术 不可能你做2年就又换,所以你得自己理解这门技术是否有前途,未来在哪里,而不是现在大家都说hadoop好,工资高就去学。
3.工资待遇其实你不用太纠结这个,可以说如果hadoop你研究得够深入,有2-3年这方面的经验年薪20W以上是没什么问题,但是现在你不要太考虑待遇,有些公司待遇不高但是给了你一个平台,应该看中成长空间,看中平台,当然若是在这基础上能多争取点就多争取些,目前这个行业没有具体的标准。看企业,看经验水平。
4.这个是没问题的,我是10年才开始研究hadoop,可以说研究的不算早,实际上你上班做完公司的事情,你是可以学习hadoop,然后等你差不多对hadoop 的宏观把握清楚了,你就可以开始投简历了,然后再一遍写hadoop的应用程序,因为在面试的过程中你会了解到他们需要怎么样的人,你还差什么,比自己闷头看书 会好点。
5.java你肯定要很熟练,当然hadoop本身入门不难,但是你想看懂源代码,想深入的理解,你要多多线程,并行化,等概念都要了解,本身hadoop是一个框架,你把他了解透彻了也等于你对java技术已经有了一个系统的掌握了。至于linux 这个东西遇到不懂就百度,不会有什么难度的。
6.学习hadoop技术的话一台机器就够了,但是如果要实战的话 最好能弄三台机器。不过你可以先一台的情况下学习。
7.培训说实在,我也没什么时间,你可以自己先学习,要是遇到一些问题,给我发邮件,我可以给你答疑。
那么接下来你该怎么做: 1.多看看hadoop的官网,了解官网上都有什么,官网的结构,以后遇到问题懂得去找
2.第2想办法了解hadoop的原理是什么,网上资源很多,你要搞清楚他包含什么,什么是hdfs,什么是mapreduce,他能做什么。有人问你的时候你能深入浅出的解答。想想你们公司现在的应用哪些是可以用hadoop解决的,为什么?
3.买一本叫做hadoop权威指南的书看看
4.以上几点都搞清楚了,开始搭个环境跑一个wordcount
5.wordcount跑完你就可以改代码了
按照这个顺序 去执行,当你完成自己的一个业务场景的时候,你就可以去投简历了。
hadoop 就是一个 存储系统+计算框架的 东东!主要解决海量数据的存储与计算。其他你自己上网查查,我希望你能充分的查阅过一些资料,认真的阅读!