jjzjj

Inputsplit

全部标签

hadoop - 关于 MR inputsplit

据我所知,在将文件复制到HDFS时进行文件拆分和在文件上为映射器输入进行输入拆分是完全两种不同的方法。这是我的问题--假设我的File1大小是128MB,它被分成两个block并存储在hadoop集群中的两个不同数据节点(Node1,Node2)中。我想在这个文件上运行MR作业,得到两个大小分别为70MB和58MB的输入分割。第一个映射器将通过获取输入拆分数据(大小为70MB)在节点1上运行,但节点1只有64MB数据,其余6MB数据显示在节点2中。TocompleteMaptaskonNode1,Doeshadooptransfer6MBofdatafromNode2toNode1?i

hadoop - 如何处理 inputsplit 的多行记录?

我有一个100TB的文本文件,它有多行记录。而且我们没有给出每条记录占用多少行。一个记录可以是5行,另一个可以是6行,另一个可以是4行。不确定每条记录的行大小是否不同。所以我不能使用默认的TextInputFormat,我已经编写了自己的输入格式和自定义记录阅读器,但我的困惑是:发生拆分时,我不确定每个拆分是否包含完整记录。记录的某些部分可以进入split1,另一部分进入split2。但这是错误的。那么,您能否建议如何处理这种情况,以便我保证我的完整记录进入单个InputSplit?提前致谢-JE 最佳答案 您需要知道记录是否真的由

hadoop - Hadoop 中的 InputSplit 自定义

我了解到,在Hadoop中,大输入文件拆分为小文件,并通过映射函数在不同的节点中进行处理。我还了解到我们可以自定义InputSplit。我想知道的是InputSplit是否可以进行以下类型的自定义:我有一个大型输入文件进入Hadoop,我想要该文件的一个子集,即文件中的一组行与每个输入拆分一起使用。我的意思是,无论文件以何种方式拆分,大文件的所有数据block都应包含这些行集。为了让我的问题更清楚,如果我们需要将输入文件的一部分(比如A)与文件的其余部分内容进行比较,在这种情况下,所有InputSplit前往map函数的需要包含此A部分以进行比较。请指导我。
12