Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 如何将文本文件转换为序列文件?_Hadoop_Apache Pig - Fatal编程技术网

Hadoop 如何将文本文件转换为序列文件?

Hadoop 如何将文本文件转换为序列文件?,hadoop,apache-pig,Hadoop,Apache Pig,我有一个大的.txt记录文件,需要将其转换为(hadoop)序列格式以提高效率。我在网上找到了一些答案(比如),但我对hadoop还不熟悉,不太了解。如果你能多解释一点,或者如果你有另一个解决方案,那就太好了。如果有帮助的话,记录将以行分隔 提前感谢。既然你说你是hadoop新手,你知道Mapper和Reducer的基本概念吗?它们都有KEY\u IN\u类、VALUE\u IN\u类、KEY\u OUT\u类、VALUE\u OUT\u类,因此在您的情况下,您可以简单地使用mapper进行转换

我有一个大的.txt记录文件,需要将其转换为(hadoop)序列格式以提高效率。我在网上找到了一些答案(比如),但我对hadoop还不熟悉,不太了解。如果你能多解释一点,或者如果你有另一个解决方案,那就太好了。如果有帮助的话,记录将以行分隔


提前感谢。

既然你说你是hadoop新手,你知道
Mapper
Reducer
的基本概念吗?它们都有KEY\u IN\u类、VALUE\u IN\u类、KEY\u OUT\u类、VALUE\u OUT\u类,因此在您的情况下,您可以简单地使用mapper进行转换

对于类中的键,可以使用默认的
LongWritable

类中的值,您需要使用
Text
,因为
Text
类处理文本输入

对于KEY\u OUT\u类,您可以使用
nullwriteable
,如果您没有特定的键,则它是一个null键

对于值输出类,请使用
SequenceFileOutputFormat


我相信为了使用
SequenceFileOutputFormat
,您需要告诉SequenceFileOutputFormat您使用的键类和值类。

您希望如何将该行标记为键和值?(通常键是行号,值是行文本)如您所说。键:行号,值:行文本。在您链接到的答案中,您不理解或需要更多说明的具体部分是什么?通常,键是字节偏移量,值是文本行,只是为了澄清。@ThomasJungblut-感谢您的指正