ImageVerifierCode 换一换
格式:PPTX , 页数:243 ,大小:7.37MB ,
资源ID:10251483      下载积分:25 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/10251483.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(Hadoop大数据开发基础整本书教学教程电子教案(.pptx)为本站上传会员【人****来】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

Hadoop大数据开发基础整本书教学教程电子教案(.pptx

1、单击此处编辑母版标题样式,单击此处编辑母版文本样,单击此处编辑母版标题样式,单击此处编辑母版文本样,单击此处编辑母版标题样式,单击此处编辑母版文本样,大数据,-Hadoop,基础,30-4月-25,大数据-Hadoop基础,30-4月-25,1,安装,Java,目录,安装配置虚拟机,2,搭建,Hadoop,完全分布式集群,3,JDK,是,Java,语言的软件开发工具包,主要用移动设备、嵌入式设备上的,Java,应用程序。,JDK,是整个,Java,开发的核心,它包含了,Java,的运行环境,,Java,工具和,Java,基础的类库。,Hadoop,开发是基于,Java,语言开发的,所以需要在,

2、Windows,下安装,JDK,。,Windows下安装Java,Windows下安装Java,双击,更改,jdk,安装目录;,更改,jre,安装目录;,配置环境变量,安装步骤:,右键单击“计算机”,属性,高级系统设置,系统属性,环境变量,Windows下安装Java配置环境变量,新建,JAVA_HOME,变量,变量值填写,JDK,安装路径,Windows下安装Java配置环境变量,新建,CLASSPATH,变量,变量值输入“,.;%JAVA_HOME%jrelibrt.jar;.;,”,Windows下安装Java配置环境变量,找到,Path,变量,在变量值最后输入“,;%JAVA_HOME

3、bin;,”,(,注意在最前面有个“,;,”号,),Windows下安装Java配置环境变量,测试环境变量是否配置成功,单击电脑开始,所有程序,附件,命令提示符,Windows下安装Java配置环境变量,Windows下安装Java,动手实践!,上传,JDK,安装包到,/opt,目录下,在Linux下安装Java,进入,/opt,目录,执行命令“,rpm ivh jdk-7u80-linux-x64.rpm,”安装,JDK,在Linux下安装Java,Linux下安装Java,动手实践!,大数据-Hadoop基础,30-4月-25,1,安装,Java,目录,安装配置虚拟机,2,搭建,Hado

4、op,完全分布式集群,3,Hadoop安装与配置,新建虚拟机,4,台,分别命名,master,、,slave1,、,slave2,、,slave3,;,每台虚拟机设置固定,IP,;,每台虚拟机安装必要软件;,准备工作:,Hadoop安装与配置,准备工作:,master:1.5G 2G,内存、,20G,硬盘、,NAT,、,12,核,;,slave1slave3:1G,内存、,20G,硬盘、,NAT,、,1,核,Hadoop安装与配置,新建虚拟机,master,,配置固定,IP,,关闭防火墙,安装必要软件;,克隆,master,到,salve1,、,slave2,、,slave3,;,修改,sla

5、ve1slave3,的,IP,,改为固定,IP,;,具体做法,:,Hadoop安装与配置,master,192.168.128.130,NameNode/JobHistoryServer,ResourceManager/,SecodaryNameNode,slave1,slave2,slave3,192.168.128.131,DataNode/,NodeManager,192.168.128.132,DataNode/,NodeManager,192.168.128.133,DataNode/,NodeManager,Hadoop安装与配置,上传、解压缩;,修改配置文件;,配置,ssh,无密

6、码登录;,配置,ntp,,统一时间;,安装文件拷贝到子节点;,格式化,并启动集群,Hadoop安装与配置,core-site.xml,相关配置解读;,hdfs-site.xml,相关配置解读;,mapred-site.xml,相关配置解读;,yarn-site.xml,相关配置文件解读;,Hadoop安装与配置,动手实践!,Hadoop安装目录解读,执行命令,配置文件,日志文件,启动,命令,软件,jar,包,Hadoop启动,启动集群,rootmaster hadoop-2.6.0#sbin/start-dfs.sh,rootmaster hadoop-2.6.0#jps,1296 NameN

7、ode,1498 SecondaryNameNode,rootmaster hadoop-2.6.0#sbin/start-yarn.sh,rootmaster hadoop-2.6.0#jps,1722 ResourceManager,。,rootmaster hadoop-2.6.0#sbin/mr-jobhistory-daemon.sh start historyserver,rootmaster hadoop-2.6.0#jps,2175 JobHistoryServer,。,HDFS,YARN,JobHistoryServer,Hadoop关闭,关闭,集群,rootmaster,h

8、adoop-2.6.0#sbin/stop-yarn.sh,rootmaster hadoop-2.6.0#sbin/stop-dfs.sh,rootmaster hadoop-2.6.0#sbin/mr-jobhistory-daemon.sh stop historyserver,HDFS,YARN,JobHistoryServer,Hadoop 监控任务监控,192.168.128.130:8088/cluster,功能导航,集群信息,具体任务信息,Hadoop 监控任务监控,Hadoop 监控任务监控,Hadoop 监控任务监控,Hadoop监控文件监控,,192.168.128.13

9、0:50070/dfshealth.html#tab-overview,功能导航,Hadoop监控文件监控,Hadoop监控文件监控,Hadoop监控文件监控,Hadoop监控文件监控,Hadoop监控文件监控,192.168.128.130:50070/dfshealth.jsp,Hadoop集群问题,1.,集群节点相关服务没有启动?,检查对应机器防火墙状态;,检查对应机器的时间是否与主节点同步;,Hadoop集群问题,2.,集群状态不一致,,clusterID,不一致?,删除,dfs.namenode.name/data.dir,配置的目录;,重新执行,hadoop,格式化;,1,HDFS

10、基础操作,目录,学习查看,Hadoop,集群,2,运行当,MapReduce,任务,3,管理多个,MapReduce,任务,4,查看Hadoop集群信息,存储系统信息,在,WEB,浏览器的地址栏输入“,master:50070/,”,查看Hadoop集群信息,数据节点信息,查看Hadoop集群信息,存储系统信息,hdfs dfsadmin-report-live-dead-decommissioning,在集群服务器的终端,输入相关的查询命令“,hdfs dfsadmin-report”,就可以获得。,hdfs dfsadmin-report,命令的基本格式如下。,各个子选项的用法说明如下。

11、report,:输出文件系统的基本信息及相关数据统计。,-report-live,:输出文件系统中在线节点的基本信息及相关数据统计。,-report-dead,:输出文件系统中失效节点的基本信息及相关数据统计。,-report-decommissioning,:输出文件系统中停用节点的基本信息及相关数据,统计。,通过命令查询集群信息:,Hadoop命令HDFS常用shell命令,查看集群数据节点:,#hdfs dfsadmin-report,Configured Capacity:58426654720(54.41 GB),Present Capacity:51292434432(47.7

12、7 GB),DFS Remaining:51291844608(47.77 GB),DFS Used:589824(576 KB),DFS Used%:0.00%,Under replicated blocks:5,Blocks with corrupt replicas:0,Missing blocks:0,-,Live datanodes(2):,Name:192.168.0.101:50010(),Hostname:,Decommission Status:Normal,Configured Capacity:29213327360(27.21 GB),DFS Used:294912(2

13、88 KB),Non DFS Used:3872731136(3.61 GB),DFS Remaining:25340301312(23.60 GB),DFS Used%:0.00%,DFS Remaining%:86.74%,Configured Cache Capacity:0(0 B),Cache Used:0(0 B),Cache Remaining:0(0 B),Cache Used%:100.00%,Cache Remaining%:0.00%,Xceivers:1,Last contact:Tue Jul 21 14:18:39 CST 2015,Name:192.168.0.1

14、02:50010(),Hostname:,Decommission Status:Normal,Configured Capacity:29213327360(27.21 GB),DFS Used:294912(288 KB),Non DFS Used:3261489152(3.04 GB),DFS Remaining:25951543296(24.17 GB),DFS Used%:0.00%,DFS Remaining%:88.83%,Configured Cache Capacity:0(0 B),Cache Used:0(0 B),Cache Remaining:0(0 B),Cache

15、 Used%:100.00%,Cache Remaining%:0.00%,Xceivers:1,Last contact:Tue Jul 21 14:18:38 CST 2015,查看Hadoop集群信息,计算资源信息,在浏览器的地址栏输入“,master:8088/cluster/nodes,”,1,HDFS,基础操作,目录,学习查看,Hadoop,集群,2,运行当,MapReduce,任务,3,管理多个,MapReduce,任务,4,Hadoop命令,hadoop,Hadoop命令,hdfs,Hadoop命令,hadoop fs/hdfs dfs,Hadoop命令,hadoop fs/h

16、dfs dfs,HDFS文件系统,HDFS文件系统,在浏览器输入,master:50070/nn_browsedfscontent.jsp,HDFS基本操作,创建新目录,hdfs dfs-mkdir-p,-p:,不加只能逐级创建目录,加了可以多级创建目录,HDFS基本操作,上传文件,命令,解释,hdfs dfs-copyFromLocal-f-p-l .,将文件从本地文件系统拷贝到,HDFS,文件系统,主要参数,为本地文件路径,,为拷贝的目标路径。,hdfs dfs-moveFromLocal .,将文件从本地文件系统移动到,HDFS,文件系统,主要参数,为本地文件路径,,为移动的目标路径。,

17、hdfs dfs-put-f-p-l .,将文件从本地文件系统上传到,HDFS,文件系统,主要参数,为本地文件路径,,为上传的目标路径。,HDFS基本操作,下载文件,命令,解释,hdfs dfs-copyToLocal-p-ignoreCrc-crc.,将文件从,HDFS,文件系统拷贝到本地文件系统,主要参数,为,HDFS,文件系统路径,,为本地文件系统路径。,hdfs dfs-get-p-ignoreCrc-crc.,获取,HDFS,文件系统上指定路径的文件到本地文件系统,主要参数,为,HDFS,文件系统路径,,为本地文件系统路径。,HDFS基本操作,查看文件,命令,解释,hdfs dfs-

18、cat-ignoreCrc .,查看,HDFS,文件内容,主要参数,指示文件路径。,hdfs dfs-tail-f,输出,HDFS,文件最后,1024,字节,主要参数,指定文件。,HDFS基本操作,删除文件或目录,命令,解释,hdfs dfs-rm-f-r|-R-skipTrash .,删除,HDFS,上的文件,主要参数,-r,用于递归删除,,指定删除文件的路径。,hdfs dfs-rmdir-ignore-fail-on-non-empty .,如果删除的是一个目录,则可以用该方法,主要参数,指定目录路径。,1,HDFS,基础操作,目录,学习查看,Hadoop,集群,2,运行当,MapRed

19、uce,任务,3,管理多个,MapReduce,任务,4,运行单个MapReduce任务,示例程序包,hadoop-mapreduce-examples-2.6.4.jar,运行单个Mapreduce任务,模块名称,内容,multifilewc,统计多个文件中单词的数量。,pi,应用,quasi-Monte Carlo,算法来估算圆周率,的值。,randomtextwriter,在每个数据节点随机生成,1,个,10GB,的文本文件。,wordcount,对输入文件中的单词进行频数统计。,wordmean,计算输入文件中单词的平均长度。,wordmedian,计算输入文件中单词长度的中位数。,w

20、ordstandarddeviation,计算输入文件中单词长度的标准差。,示例程序包,hadoop-mapreduce-examples-2.6.4.jar,运行单个Mapreduce任务,hadoop jar,用法:,实例:,执行,Jar,文件,运行单个Mapreduce任务,实例:,运行单个Mapreduce任务,实例:,1,HDFS,基础操作,目录,学习查看,Hadoop,集群,2,运行当,MapReduce,任务,3,管理多个,MapReduce,任务,4,管理多个Mapreduce任务,查询,MapReduce,任务,在浏览器输入:“,master:8088/cluster/nod

21、es,”,管理多个Mapreduce任务,查询,MapReduce,任务,提交一个任务后:,它的状态值为“,RUNNNING,”,表示这个任务正执行中。,管理多个Mapreduce任务,查询,MapReduce,任务,查看任务信息,管理多个Mapreduce任务,同时提交多个任务,作业,0001,的状态“,RUNNING,”,表示它正在执行中。而作业,0002,的状态是“,ACCEPTED,”,表示它已被资源管理器,YARN,接受,目前在等待被分配计算资源,只有当计算资源满足后,才会开始执行。,管理多个Mapreduce任务,同时提交多个任务,在提交两个作业后,集群上的计算资源使用情况,管理多

22、个Mapreduce任务,中断任务,人为中断第,1,个作业:点击任务,1,的,ID,进入任务,1,,点击图中,Kill Application,即可中断该任务。,管理多个Mapreduce任务,中断任务,中断后任务状态,Hadoop大数据开发基础,30-4月-25,1,MapReduce,原理与编程,目录,下载和安装,Eclipse,2,实践操作,3,下载和安装Eclipse,在官网下载,Eclipse,安装包“,Eclipse IDE for Java EE Developers,”,下载和安装Eclipse,2.,将,Eclipse,安装包解压到本地的安装目录,3.,将插件,hadoop-

23、eclipse-plugin-2.6.0jar,拷贝到,Eclipse,安装目录下的,dropins,目录,4.,双击解压文件下,Eclipse,文件夹中的图标,打开,Eclipse,配置MapReduce环境,增加,Map/Reduce,功能区,配置MapReduce环境,增加,Hadoop,集群的连接,配置MapReduce环境,增加,Hadoop,集群的连接,配置MapReduce环境,增加,Hadoop,集群的连接,新建MapReduce工程,导入,MapReduce,运行依赖的相关,Jar,包,新建MapReduce工程,下载和安装,Eclipse,1,2,MapReduce,原理与

24、编程,3,实践操作,目录,Hadoop MapReduce 单词计数源码,Hadoop MapReduce 单词计数源码,Hadoop MapReduce 单词计数源码,MapReduce 原理,MapReduce,,在名称上就表现出了它的核心原理,它是由两个阶段组成的。,Map,,表示“映射”,在,map,阶段进行的一系列数据处理任务被称为,Mapper,模块。,Reduce,,表示“归约”,同样,在,reduce,阶段进行的一系列数据处理任务也被称为,Reducer,模块。,MapReduce,通常也被简称为,MR,MapReduce 原理,(,1,),Mapper,:映射器。,(,2,)

25、Mapper,助理,InputFormat,:输入文件读取器。,(,3,),Shuffle,:运输队。,(,4,),Shuffle,助理,Sorter,:排序器。,(,5,),Reducer,:归约器。,(,6,),Reducer,助理,OutputFormat,:输出结果写入器。,MapReduce 原理,数据分片,。假设原始文件中,8000,万行记录被系统分配给,100,个,Mapper,来处理,那么每个,Mapper,处理,80,万行数据。相当于,MapReduce,通过数据分片的方式,把数据分发给多个单元来进行处理,这就是分布式计算的第一步。,数据映射,。在数据分片完成后,由,Map

26、per,助理,InputFormat,从文件的输入目录中读取这些记录,然后由,Mapper,负责对记录进行解析,并重新组织成新的格式。然后,Mapper,把自己的处理结果输出,等待,Shuffle,运输队取走结果。,数据混洗,。由,Shuffle,运输队把获取的结果按照相同的键,(Key),进行汇集,再把结果送到,Shuffle,助理,Sorter,,由,Sorter,负责对这些结果排好序,然后提交给,Reducer,。,数据归约,。,Reducer,收到传输过来的结果后,接着进行汇总与映射工作,得到最终计算结果。最后由,Reducer,助理,OutputFormat,把结果输出到指定位置。,

27、MapReduce 实现词频统计的执行流程,词频统计的输入输出,输入,输出,Hello World Our World,Hello BigData Real BigData,Hello Hadoop Great Hadoop,Hadoop MapReduce,BigData 2,Great1,Hadoop3,Hello3,MapReduce1,Our1,Real1,World2,Hadoop MapReduce 单词计数源码,MapReduce 实现词频统计的执行流程,map,任务的处理过程,MapReduce 实现词频统计的执行流程,reduce,任务的处理过程,Hadoop MapRedu

28、ce 单词计数源码分析Driver,单词计数源码分析Driver流程,FileInputFormat,Mapper,Combiner,Reducer,Partitioner,FileOutputFormat,单词计数源码分析Driver键值对类型,Hadoop MapReduce 单词计数源码分析Mapper,Hadoop MapReduce 单词计数源码分析Reducer,下载和安装,Eclipse,1,2,MapReduce,原理与编程,3,实践操作,目录,Hadoop MapReduce获取成绩表中最高分,打开,eclipse,,新建,MapReduce,工程;,参考上面单词计数代码编写

29、程序;,使用,eclipse,的,Export-JAR file,工具打包成,jar,包,并运行;,查看输出结构:终端输出信息、,Job,任务监控、,HDFS,输出信息;,Hadoop MapReduce获取成绩表中最高分,Mapper,类,Hadoop MapReduce获取成绩表中最高分,Reducer,类,Hadoop MapReduce获取成绩表中最高分,Driver,类,Hadoop大数据开发基础,30-4月-25,1,Hadoop Java API,目录,MapReduce,输入输出格式,2,自定义键值对,3,Combiner,、,Partitioner,、计数器,4,Eclips

30、e,提交,MapReduce,任务,5,Hadoop MapReduce 输入格式,Hadoop MapReduce 输入格式,Hadoop MapReduce 输入格式(常用),输入格式,描述,键类型,值类型,TextInputFormat,默认格式,读取文件的行,行的字节偏移量(,LongWriable,),行的内容(,Text,),SequenceFileInputFormat,Hadoop,定义的高性能二进制格式,用户自定义,KeyValueInputFormat,把行解析为键值对,第一个,tab,字符前的所有字符(,Text,),行剩下的内容(,Text,),紧凑:高效使用存储空间。

31、快速:读取数据的额外开销小。,可扩展:可透明地读取老格式的数据。,互操作:可以使用不同的语言读,/,写永久存储的数据。,Hadoop MapReduce Hadoop序列化特点,1.,设置,MapReduce,的输入格式是在驱动类中通过,Job,对象的,setInputFormatClass(),方法来设定,2.,输入格式是,TextInputFormat,的时候驱动类可以不设置输入格式,Hadoop MapReduce 设置输入格式,job.setInputFormatClass(SequenceFileAsTextInputFormat.,class);,Hadoop MapReduce

32、 输出格式,Hadoop MapReduce 输出格式,Hadoop MapReduce 输出格式(常用),输出格式,描述,TextOutputFormat,默认的输出格式,以,key t value,的方式输出行,SequenceFileOutputFormat,输出二进制文件,适合于读取为子,MapReduce,作业的输入,job.setOutputFormatClass(SequenceFileOutputFormat.class);,1,Hadoop Java API,目录,MapReduce,输入输出格式,2,自定义键值对,3,Combiner,、,Partitioner,、计数器,

33、4,Eclipse,提交,MapReduce,任务,5,Hadoop文件系统,Path,:文件路径定义,FileSystem,:文件系统定义,FileSystem,是一个通用的文件系统,API,,使用它的第一步需要先获取它的一个实例,获取,FileSystem,实例的静态方法。,Hadoop Java API,1,、,public static FileSystem get(Configuration conf)throws IOException,2,、,public static FileSystem get(URI uri,Configuration conf)throws IOExce

34、ption,3,、,public static FileSystem get(URI uri,Configuration conf,String user)throws IOException,Hadoop文件系统 文件操作实例,Configuration conf=new Configuration();,conf.set(“fs.defaultFS”,”hdfs:/master:8020”),FileSystem fs=FileSystem.,get(conf);,fs.delete(new Path(“knn/test.csv”),true);,Hadoop Java APIFileSy

35、stem类的方法,hadoop.apache.org/docs/current/api/,修饰符和类型,方法,abstract FileStatus,listStatus(Path f),FileStatus,listStatus(Path files),FileStatus,listStatus(Path files,PathFilter filter),FileStatus,listStatus(Path f,PathFilter filter),Hadoop Java API管理文件夹,列举文件夹及文件的方法,列举指定目录下的所有文件夹,Hadoop Java API管理文件夹,列举指定

36、目录下的所有文件,Hadoop Java API管理文件夹,修饰符和类型,方法,static boolean,mkdirs(FileSystem fs,Path dir,FsPermission permission),boolean,mkdirs(Path f),abstract boolean,mkdirs(Path f,FsPermission permission),Hadoop Java API创建目录,相关参数说明如下:,fs,:文件系统对象。,dir,:要创建的目录名称。,permission,:为该目录设置的权限,。,Hadoop Java API创建目录,修饰符和类型,方法,

37、boolean,delete(Path f),abstract boolean,delete(Path f,boolean recursive),Hadoop Java API删除文件,相关参数说明如下:,f,:删除文件的路径。,recursive,:如果路径是一个目录并且不为空,,recursive,设置为,true,,则该目录将被删除,否则会引发异常。在是文件的情况下,,recursive,可以设置为,true,或,false,。,Hadoop Java API删除文件,修饰符和类型,方法,void,copyFromLocalFile(boolean delSrc,boolean over

38、write,Path srcs,Path dst),void,copyFromLocalFile(boolean delSrc,boolean overwrite,Path src,Path dst),void,copyFromLocalFile(boolean delSrc,Path src,Path dst),void,copyFromLocalFile(Path src,Path dst),Hadoop Java API上传或下载文件,修饰符和类型,方法,void,copyToLocalFile(boolean delSrc,Path src,Path dst),void,copyToL

39、ocalFile(boolean delSrc,Path src,Path dst,boolean useRawLocalFileSystem),void,copyToLocalFile(Path src,Path dst),Hadoop Java API上传或下载文件,Hadoop Java API上传或下载文件,修饰符和类型,方法,FSDataInputStream,open(Path f),abstractFSDataInputStream,open(Path f,int bufferSize),Hadoop Java API读写数据,相关参数说明如下:,f,:打开的文件。,buffer

40、Size,:要使用的缓冲区的大小,。,Hadoop Java API读写数据,Hadoop Java API读写数据,1,Hadoop Java API,目录,MapReduce,输入输出格式,2,自定义键值对,3,Combiner,、,Partitioner,、计数器,4,Eclipse,提交,MapReduce,任务,5,Hadoop MapReduce Hadoop内置数据类型,Hadoop MapReduce,Hadoop内置数据类型,类,型,解,释,BooleanWritable,标准布尔型数值,相当于,Java,数据类型里面的,boolean,,当,的,key,或者,value,为

41、布尔型时使用,ByteWritable,单字节数值,相当于,Java,数据类型里面的,byte,,当,中,key,或者,value,为单字节类型时使用,DoubleWritable,双精度浮点型,相当于,Java,数据类型里面的,double,,当,中的,key,或者,value,为双字节类型时使用,FloatWritable,单精度浮点型,相当于,Java,数据类型里面的,float,,当,中的,key,或者,value,为浮点类型时使用,IntWritable,整型数,相当于,Java,数据类型里面的,int,,当,中的,key,或者,value,为整形类型时使用,LongWritable

42、长整型数,相当于,Java,数据类型里面的,long,,当,中的,key,或者,value,为长整型时使用,Text,使用,UTF-8,格式存储的文本,在,Java,数据类型中主要针对,String,类型,NullWritable,空值,当,中的,key,或,value,为空时使用,Hadoop MapReduce 键值对类型,自定义值类型必须实现,Writable,接口,自定义键类型必须实现,WritableComparable,接口,实现,writeFields(DataOutput out),与,readFields(DataInput in),方法,自定义键值类型还需实现,compa

43、reTo(T o),方法,Hadoop MapReduce自定义键值类型,Hadoop MapReduce,自定义键值类型,自定义值类型必须实现,Writable,接口,接口,Writable,是一个简单高效的基于基本,I/O,的序列化接口对象,其包含两个方法,write(DataOutput out),与,readFields(DataInput in),,其功能分别是将数据写入指定的流中和从指定的流中读取数据。,返回类型,方法和描述,void,readFields(DataInput in),,从,in,中反序列化该对象的字段,void,write(DataOuput out),,将该对象

44、的字段序列化到,out,中,Hadoop MapReduce 键值对类型(实例),Hadoop MapReduce,自定义键值类型,自定义键类型必须实现,WritableComparable,接口,,WritableComparable,接口自身又实现了,Writable,接口,所以,Hadoop,中的键也可以作为值使用,但是实现,Writable,接口的值不能作为键使用。,WritableComparable,接口中不仅有,readFields(DataInput in),方法和,write(DataOuput out),方法,还提供了一个,compareTo(T o),方法,该方法提供了三

45、种返回类型,返回类型,解释,负整数,表示小于被比较对象,0,表示等于被比较对象,正整数,表示大于被计较对象,Hadoop MapReduce 键值对类型(实例),1,Hadoop Java API,目录,MapReduce,输入输出格式,2,自定义键值对,3,Combiner,、,Partitioner,、计数器,4,Eclipse,提交,MapReduce,任务,5,Hadoop MapReduce Combiner组件,如单词统计问题,若有,1,亿个单词,就会传输,1,亿个键值对,合理的使用,Combiner,可以减少键值对的网络传输,提示效率,。,Combiner,发生在,map,端,通

46、常与,reduce,有相同的实现,Combiner,一般适用于求和,求最大值或最小值,不适用与求平均值,声明,Combiner,类的时候必须继承,Reducer,Hadoop MapReduce Combiner组件,Hadoop MapReduce Combiner,Mapper-out,Reducer-in,Combiner,Key,Value,0,This is my,10,What is that,21,And What if,Key,Value,This,1,Is,1,My,1,What,1,Is,1,That,1,Key,Value,This,1,Is,2,My,1,What,1,

47、And,1,That,1,Hadoop MapReduce Combiner,Key,Value,0,This is my,10,What is that,21,And What if,Key,Value,This,1,Is,1,My,1,What,1,Key,Value,This,1,Is,2,My,1,What,1,Key,Value,0,I love Hadoop,10,If I,Key,Value,I,1,love,1,Hadoop,1,If,1,i,1,Key,Value,I,2,Hadoop,1,If,1,i,1,Key,Value,This,1,Hadoop,1,If,2,I,2

48、input0,input0,map0,map1,combine0,combine1,reduce0,统计,用户每天登录该网站次数,public class LogCountCombiner extends Reducer,Override,protected void reduce(MemberLogTime key,Iterable value,Reducer.Context context),throws IOException,InterruptedException,int sum=0;,for(IntWritable val:value),sum+=val.get();,conte

49、xt.write(key,new IntWritable(sum);,Hadoop MapReduce分区器(Partitioner),分区器决定键值对发送的,reducer,地址,Hadoop MapReduce分区器(Partitioner),1.Mapper,输出键值对,2.,每个键值对被发送到,Partitioner,中,3.Partitioner,的,getPartition,方法返回,0N-1,对应,reducer,的,id,Hadoop MapReduce 分区器(Partitioner),Hadoop MapReduce分区器(Partitioner),计数器,属性名,MapR

50、educe,任务计数器,org.apache.hadoop.mapreduce.TaskCounter,文件系统计数器,org.apache.hadoop.mapreduce.FileSystemCounter,输入文件计数器,org.apache.hadoop.mapreduce.lib.input.FileInputFormatCounter,输出文件计数器,org.apache.hadoop.mapreduce.lib.input.FileOutputFormatCounter,作业计数器,org.apache.hadoop.mapreduce.JobCounter,Hadoop Map

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服