Hadoop入门(课程教案).ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hadoop入门(课程教案)

Hadoop入门简介 主要内容 什么是Hadoop Hadoop的组成 Hadoop的使用(hive) Hadoop经典案例 什么是Hadoop 简述 Apache Hadoop 是一个用java语言实现的软件框架,在由大量计算机组成的集群中运行海量数据的分布式计算,它可以让应用程序支持上千个节点和PB级别的数据。 Hadoop的组成 Hadoop core PIG HBase ZooKeeper Hadoop的组成 Hadoop core Hadoop的核心子项目,提供了一个分布式文件系统(HDFS)和支持MapReduce的分布式计算。 HBase 建立在Hadoop内核之上,提供可靠的,可扩展的分布式数据库。 ZooKeeper 一个高效的,可扩展的协调系统。分布式应用可以使用ZooKeeper来存储和协调关键共享状态。 PIG 建立于Hadoop内核之上,是一种支持并行计算运行框架的高级数据流语言。 Hadoop core MapReduce Map:任务的分解 Reduce:结果的汇总 两大核心设计 HDFS NameNode DataNode Client MapReduce HDFS HDFS NameNode 可以看作是分布式文件系统中的管理者,存储文件系统的meta-data,主要负责管理文件系统的命名空间,集群配置信息,存储块的复制。 DataNode 是文件存储的基本单元。它存储文件块在本地文件系统中,保存了文件块的meta-data,同时周期性的发送所有存在的文件块的报告给NameNode。 Client 就是需要获取分布式文件系统文件的应用程序。 HDFS操作举例 文件写入: 1. Client向NameNode发起文件写入的请求。 2. NameNode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。 3. Client将文件划分为多个文件块,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。 ? 文件读取: 1.?Client向NameNode发起文件读取的请求。 2.?NameNode返回文件存储的DataNode的信息。 3. Client读取文件信息。 文件块复制: 1. NameNode发现部分文件的文件块不符合最小复制数或者部分DataNode失效。 2.?通知DataNode相互复制文件块。 3.?DataNode开始直接相互复制。 HDFS操作举例 public static void main(String[] args) throws Exception { Configuration conf = new Configuration(); String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs(); if (otherArgs.length != 2) { System.err.println(Usage: wordcount in out); System.exit(2); } Job job = new Job(conf, word count); job.setJarByClass(WordCount.class);//主类 job.setMapperClass(TokenizerMapper.class);//mapper job.setCombinerClass(IntSumReducer.class);//作业合成类 job.setReducerClass(IntSumReducer.class);//reducer job.setOutputKeyClass(Text.class);//设置作业输出数据的关键类 job.setOutputValueClass(IntWritable.class);//设置作业输出值类 FileInputFormat.addInputPath(job, new Path(otherArgs[0]));//文件输入 FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));//文件输出 System.exit(job.waitForCompletion(true) ? 0 : 1);//等待完成退出. } Hadoop Map/Reduce (input) k1, v1 - map - k2, v2 - co

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档