首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MapReduce InputFormat之FileInputFormat

在MapReduce框架中最常用的FileInputFormat为例,其内部使用的就是FileSplit来描述InputSplit。...InputFormat MapReduce自带了一些InputFormat的实现类: 下面我们看几个有代表性的InputFormat: FileInputFormat...FileInputFormat是一个抽象类,它最重要的功能是为各种InputFormat提供统一的getSplits()方法,该方法最核心的是文件切分算法和Host选择算法:...FileInputFormat使用了一个启发式的host选择算法:首先按照rack机架包含的数据量对rack排序,然后再在rack内部按照每个node节点包含的数据量对node排序,最后选取前N个(N为...SequenceFileInputFormat SequenceFileInputFormat是一个顺序的二进制的FileInputFormat,内部以key/value的格式保存数据

33530
您找到你想要的搜索结果了吗?
是的
没有找到

Hadoop旧mapreduce的map任务切分原理

在开发过程中对map任务的划分进行性能调优,发现mapreduce中关于FileInputFormat的参数调整都不起作用,最后发现这些老任务都是用旧版的mapreduce开发的,于是顺便研究下旧版mapreduce...有关新版mapreduce的任务划分策略,大家可以参考我之前的博文《Hadoop2.6.0的FileInputFormat的任务切分原理分析(即如何控制FileInputFormat的map任务数量)》...源码分析 根据《Hadoop2.6.0的FileInputFormat的任务切分原理分析(即如何控制FileInputFormat的map任务数量)》一文的内容,我们知道map任务的划分关键在于FileInputFormat...FileInputFormat.SPLIT_MINSIZE, 1), minSplitSize); // generate splits ArrayList<FileSplit...这个计算很简单,即使用totalSize除以numSplits,最后得到的目标划分大小存储在变量goalSize中; 常量SPLIT_MINSIZE实际是由参数mapreduce.input.fileinputformat.split.minsize

926100

MapReduce中map并行度优化及源码分析

FileInputFormat切片机制 原文和作者一起讨论:http://www.cnblogs.com/intsmaze/p/6733968.html 1、默认切片定义在InputFormat类中的getSplit...2、FileInputFormat中默认的切片机制: a) 简单地按照文件的内容长度进行切片 b) 切片大小,默认等于hdfs的block大小 c) 切片时不考虑数据集整体,而是逐个针对每一个文件单独切片...比如待处理数据有两个文件: file1.txt 260M file2.txt 10M 经过FileInputFormat的切片机制运算后,形成的切片信息如下:   file1.txt.split1...minsize:默认值:1 配置参数: mapreduce.input.fileinputformat.split.minsize maxsize:默认值:Long.MAXValue...配置参数:mapreduce.input.fileinputformat.split.maxsize blocksize:值为hdfs的对应文件的blocksize 配置读取目录下文件数量的线程数

88120

Hadoop-2.4.1学习之如何确定Mapper数量

确定分片数量的任务交由FileInputFormat的getSplits(job)完成,在此补充一下FileInputFormat继承自抽象类InputFormat,该类定义了MapReduce作业的输入规范...下面将分为两部分学习该方法是如何在FileInputFormat中实现的,为了将注意力集中在最重要的部分,对日志输出等信息将不做介绍,完整的实现可以参考源代码。...,默认值为1L和mapreduce.input.fileinputformat.split.maxsize,默认值为Long.MAX_VALUE,十六进制数值为 0x7fffffffffffffffL,...、mapreduce.input.fileinputformat.split.maxsize和所使用的输入格式。...mapreduce.input.fileinputformat.split.maxsize参数的值设置InputSplit的大小来影响InputSplit的数量,进而决定mapper的数量。

47220
领券