用通俗易懂的话说下hadoop是什么,能做什么

hadoop是什么?

(1)Hadoop是一个开源的框架,可编写和运行分布式应用处理大规模数据,是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式。Hadoop=HDFS(文件系统,数据存储技术相关)+ Mapreduce(数据处理),Hadoop的数据来源可以是任何形式,在处理半结构化和非结构化数据上与关系型数据库相比有更好的性能,具有更灵活的处理能力,不管任何数据形式最终会转化为key/value,key/value是基本数据单元。用函数式变成Mapreduce代替SQL,SQL是查询语句,而Mapreduce则是使用脚本和代码,而对于适用于关系型数据库,习惯SQL的Hadoop有开源工具hive代替。

(2)Hadoop就是一个分布式计算的解决方案.

hadoop能做什么?

hadoop擅长日志分析,facebook就用Hive来进行日志分析,2009年时facebook就有非编程人员的30%的人使用HiveQL进行数据分析;淘宝搜索中的自定义筛选也使用的Hive;利用Pig还可以做高级的数据处理,包括Twitter、LinkedIn 上用于发现您可能认识的人,可以实现类似Amazon.com的协同过滤的推荐效果。淘宝的商品推荐也是!在Yahoo!的40%的Hadoop作业是用pig运行的,包括垃圾邮件的识别和过滤,还有用户特征建模。(2012年8月25新更新,天猫的推荐系统是hive,少量尝试mahout!)

hadoop的个人理解

举个简单的例子,现在需要数一个图书馆有多少本书,一个人数肯定很慢,需要很多个人数,而且最好每一个区域的书都有2-3个人数一遍,这样统计的数量才比较准确。所以就需要有一个机制将书籍分好区,规定每一个人负责数哪几个区的书,这样即使有人生病了也不会影响到总体统计工作的完成。这里的人就是Hadoop所操控的一台台个人计算机,机制就是Hadoop的核心MapReduce方法。在我看来,Hadoop的分布式计算功能就像一个精明的资本家设计的工作分配制度,既保证工作的完成不会特别依赖某一个人,又保证了如果工作量上升了只需要再雇一个劳工就能解决问题。

赞(1) 打赏

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址