hadoop mapreduce 一些比较重要的类
来源:互联网 发布:c 验证码识别 源码 编辑:程序博客网 时间:2024/05/25 08:15
InputFormat类:该类的作用是将输入的文件和数据分割成许多小的split文件,并将split的每个行通过LineRecorderReader解析成<Key,Value>,通过job.setInputFromatClass()函数来设置,默认的情况为类TextInputFormat,其中Key默认为字符偏移量,value是该行的值。
Map类:根据输入的<Key,Value>对生成中间结果,默认的情况下使用Mapper类,该类将输入的<Key,Value>对原封不动的作为中间按结果输出,通过job.setMapperClass()实现。实现Map函数。
Combine类:实现combine函数,该类的主要功能是合并相同的key键,通过job.setCombinerClass()方法设置,默认为null,不合并中间结果。实现map函数
Partitioner类: 该该主要在Shuffle过程中按照Key值将中间结果分成R份,其中每份都有一个Reduce去负责,可以通过job.setPartitionerClass()方法进行设置,默认的使用hashPartitioner类。实现getPartition函数
Reducer类:将中间结果合并,得到中间结果。通过job.setReduceCalss()方法进行设置,默认使用Reducer类,实现reduce方法。
OutPutFormat类:该类负责输出结果的格式。可以通过job.setOutputFormatClass()方法进行设置。默认使用TextOUtputFormat类,得到<Key,value>对。
note:hadoop主要是上面的六个类进行mapreduce操作,使用默认的类,处理的数据和文本的能力很有限,具体的项目中,用户通过改写这六个类(重载六个类),完成项目的需求。说实话,我刚开始学的时候,我怀疑过Mapreudce处理数据功能,随着学习深入,真的很钦佩mapreduce的设计,基本就二个函数,通过重载,可以完成所有你想完成的工作。
Map类:根据输入的<Key,Value>对生成中间结果,默认的情况下使用Mapper类,该类将输入的<Key,Value>对原封不动的作为中间按结果输出,通过job.setMapperClass()实现。实现Map函数。
Combine类:实现combine函数,该类的主要功能是合并相同的key键,通过job.setCombinerClass()方法设置,默认为null,不合并中间结果。实现map函数
Partitioner类: 该该主要在Shuffle过程中按照Key值将中间结果分成R份,其中每份都有一个Reduce去负责,可以通过job.setPartitionerClass()方法进行设置,默认的使用hashPartitioner类。实现getPartition函数
Reducer类:将中间结果合并,得到中间结果。通过job.setReduceCalss()方法进行设置,默认使用Reducer类,实现reduce方法。
OutPutFormat类:该类负责输出结果的格式。可以通过job.setOutputFormatClass()方法进行设置。默认使用TextOUtputFormat类,得到<Key,value>对。
note:hadoop主要是上面的六个类进行mapreduce操作,使用默认的类,处理的数据和文本的能力很有限,具体的项目中,用户通过改写这六个类(重载六个类),完成项目的需求。说实话,我刚开始学的时候,我怀疑过Mapreudce处理数据功能,随着学习深入,真的很钦佩mapreduce的设计,基本就二个函数,通过重载,可以完成所有你想完成的工作。
0 0
- hadoop mapreduce 一些比较重要的类
- 一些比较重要的算法
- 一些比较重要的算法
- 一些比较重要的经验
- 一些比较重要的算法
- 一些比较重要的算法
- 一些比较重要的算法
- 一些比较重要的算法
- 黑马程序员__一些比较重要的类
- 黑马程序员__另外一些比较重要的IO类
- Hadoop MapReduce编程的一些个人理解
- Hadoop MapReduce的一些相关代码Code
- hadoop维护时候的一些重要命令
- 一些比较重要的数据(方便查阅)
- 分享一些比较重要的算法
- 关于github一些比较重要的命令
- 分享一些比较重要的算法
- MyEclipse:一些比较重要的配置
- web.xml加载顺序和配置详解
- Adaboost 算法的原理与推导
- jQuery animate()写弹层
- Android 事件处理
- ccflow与jflow的异表单分合流设计说明
- hadoop mapreduce 一些比较重要的类
- Android开发者上手宝典(二)
- oracle如何用sql查询某个表中所有的字段名称(列名)?
- TableLayout布局
- Spark集群安装之——Zookeeper+Kafka 安装教程
- ubuntu ssh 客户端查看服务器端图形界面
- Myeclipse项目转成Eclipse项目
- oc 元类 元数据
- 关键字自动化-方法执行