我有一个大的 .txt 记录文件,我需要将其转换为(hadoop)序列格式以提高效率。我在网上找到了一些答案(例如How to convert .txt file to Hadoop's sequence file format),但我是 hadoop 新手,不太了解它们。如果您可以多解释一下,或者您有其他解决方案,那就太好了。如果有帮助,记录将按行分隔。
提前致谢。
我有一个大的 .txt 记录文件,我需要将其转换为(hadoop)序列格式以提高效率。我在网上找到了一些答案(例如How to convert .txt file to Hadoop's sequence file format),但我是 hadoop 新手,不太了解它们。如果您可以多解释一下,或者您有其他解决方案,那就太好了。如果有帮助,记录将按行分隔。
提前致谢。
既然您说您是 hadoop 的新手,那么您知道Mapper
and的基本概念Reducer
吗?它们都有 KEY_IN_CLASS、VALUE_IN_CLASS、KEY_OUT_CLASS、VALUE_OUT_CLASS,所以在你的情况下,你可以简单地使用 mapper 进行转换,
对于 KEY_IN_CLASS,您可以使用默认值LongWritable
,
您需要使用 VALUE_IN_CLASS Text
,因为Text
类处理文本输入。
对于 KEY_OUT_CLASS,您可以使用NullWritable
,如果您没有特定键,则它是一个空键。
对于 VALUE_OUT_CLASS,使用SequenceFileOutputFormat
.
我相信为了使用SequenceFileOutputFormat
,您需要告诉 SequenceFileOutputFormat 您使用什么键类和值类。