jjzjj

TextInputFormat

全部标签

map - PIG UDF 加载 .gz 文件失败

我编写了UDF以将文件加载到Pig中。它适用于加载文本文件,但是,现在我还需要能够读取.gz文件。我知道我可以解压缩文件然后处理,但我只想读取.gz文件而不解压缩它。我的UDF从LoadFunc扩展,然后在我的自定义输入文件MyInputFileextendsTextInputFormat中。我还实现了MyRecordReader。只是想知道extendsTextInputFormat是否是问题所在?我尝试了FileInputFormat,仍然无法读取文件。有人写过UDF从.gz文件读取数据吗? 最佳答案 TextInputForm

java - Hadoop MultipleInputs,具有不同分隔符的TextInputFormat

如何最简单地运行多个不同的映射器类(使用MultipleInputs),所有映射器类都使用相同的输入格式,但使用不同的输入分隔符?MultipleInput允许您添加多个映射器,每个映射器都有自己的输入格式:MultipleInputs.addInputPath(Jobjob,Pathpath,ClassinputFormatClass,ClassmapperClass)TextInputFormat输入中的输入分隔符是通过在作业配置中设置配置键textinputformat.record.delimiter来配置的。方便!但是,这意味着使用MultipleInput.addInput

hadoop - Input Split 大小是常量还是取决于逻辑记录?

Hadoop权威指南说:WhenyouhaveMinimumsplitsize1,MaximumsplitsizeLong.MAX_VALUE,Blocksize64MBthentheSplitsizeis64MB.TextInputFormat的逻辑记录是行。由于每行长度不同,我们如何才能将大小拆分为恰好64MB? 最佳答案 HDFSblock是字节序列。他们不知道线条或任何其他结构。所以你可能有一个只有一个block(当然大小为64MB)的分割,在一行的中间结束(即不包括整个最后一行)。当您使用TextInputFormat读取

hadoop - hadoop 中的 KeyValueTextInputFormat 和 TextInputFormat 之间的主要区别是什么?

谁能给我一个我们必须使用KeyValueTextInputFormat和TextInputFormat的实际场景?? 最佳答案 TextInputFormat类将源文件的每一行转换为键/值类型,其中BytesWritable键表示记录的偏移量,Text值表示整个记录本身。KeyValueTextInputFormat是TextInputFormat的扩展版本,当我们必须将每个源记录作为文本/文本对获取时,这很有用,其中键/值是通过拆分记录从记录中填充的一个固定的分隔符。考虑以下文件内容,AL#AlabamaAR#ArkansasFL

java - hadoop映射器中对象类型的键

hadoop新手并试图理解来自here的mapreducewordcount示例代码.文档中的映射器是-Mapper我看到在mapreduce字数统计例子中map代码如下publicvoidmap(Objectkey,Textvalue,Contextcontext)问题-这个对象类型的键有什么意义?如果映射器的输入是文本文档,我假设其中的值是hadoop已分区并存储在HDFS中的文本block(64MB或128MB)。更笼统地说,这个输入键输入map代码有什么用?任何指点将不胜感激 最佳答案 InputFormat描述了Map-R

Hadoop MapReduce TextInputFormat - 如何完成文件拆分

根据我的理解,TextInputFormat应该在换行符处准确拆分,但根据我在网站上看到的一些答案,我似乎错了。有没有人有更好的解释,哪个选项是正确的?以下哪项最能描述TextInputFormat的工作原理?输入文件拆分可能会跨行。包含虚线末尾的拆分的RecordReader读取跨越文件拆分的行。输入文件恰好在换行符处被拆分,因此每个RecordReader都会读取一系列完整的行。输入文件拆分可能会跨行。包含断行开头的拆分的RecordReader读取跨越文件拆分的行。输入文件拆分可能会跨行。忽略穿过图block分割线的线。输入文件拆分可能会跨行。包含断线的两个拆分的RecordRe

java - 不能在 Java 中使用 XmlInputFormat extends TextInputFormat

我正在尝试使用Hadoop进行WordCount。我想使用XmlInputFormat.class根据XML标记拆分文件。XmlInputFormat.class是hereXmlInputFormat.class继承自TextInputFormat.classJobjob=newJob(getConf());job.setInputFormatClass(XmlInputFormat.class);显示错误ThemethodsetInputFormatClass(Class)inthetypeJobisnotapplicableforthearguments(Class)但是我用的时候

java - hadoop textinputformat 每个文件只读一行

我为hadoop0.20.2写了一个简单的map任务,输入数据集由44个文件组成,每个大约3-5MB。任何文件的每一行都具有int,int格式.输入格式默认为TextInputFormat映射器的工作是解析输入Text转化为整数。任务运行后,hadoop框架的统计显示map任务的输入记录数只有44条,调试了一下发现方法map的输入记录数只是每个文件的第一行。有人知道问题出在哪里吗?我在哪里可以找到解决方案?先谢谢你。编辑1输入数据是由不同的map-reduce任务生成的,其输出格式为TextOutputFormat.toString()IntXInt的方法|应该给出一串int,int.

python - Hadoop Streaming with TextInputFormat 和 Python - 跟踪行号

我正在尝试计算方阵上每条对角线的总和。我正在使用Python和Hadoop流式处理,但我找不到任何方法来配置Hadoop流式处理以获取每行的偏移量thisguy说,使用TextInputFormat。还有一个question在StackOverflow上询问同样的事情,但没有关于如何去做的回应。和hadoopdoc说了一些关于丢弃LongWritable类的键但我不确定这是否是偏移量。如何配置作业以获得偏移量?我是否需要创建一个从TextInputFormat派生的新类而不返回LongWritable?如果我不懂Java,我该怎么做?谢谢 最佳答案

hadoop - 如果 hadoop 中的 TextInputFormat,KeyClass 和 ValueClass 的输入类型是什么

如果我们使用TextInputFormat,我想知道KeyClass和ValueClass的数据类型是什么。InRef,来自Hadoop权威指南第4版。“输入类型是通过输入格式控制的,我们没有明确设置,因为我们使用的是默认的TextInputFormat。” 最佳答案 键是行号,它使用LongWritable,值是Text。publicclassTextInputFormatextendsFileInputFormat 关于hadoop-如果hadoop中的TextInputFormat
12