hadoop安装中mapreduce.input.keyvaluelinerecordreader.key.value.



我在java中使用mapreduce读取用":"分隔的键值类型文件。我了解了如何解析该文件(使用getConf().set("mapreduce.input.keyvaluelinerecordreader.key.value.separator",":");)。我试图找出这些参数的存储位置,但无法找到。我在hadoop安装上做了一个grep,但没有设置这些参数的xml文件。根据Configuration类的文档,我试图在mapred-default.xml中找到这个值,但没有成功。

在哪里可以找到这些值?其他一些参数也是如此。

谢谢。

这应该存在于mapred-site.xml中。但是,默认情况下,它不会添加到xml文件中。如果每个作业都使用相同的分隔符,那么您可以将此参数添加到Hadoop安装中的mapred-site.xml文件中。

此参数的此设置在代码中处理。

org.apache.hadoop.mapreduce.lib.input.KeyValueLineRecordReader.java(检查KeyValueLineRecordReader.java)中,该值默认设置为tab("\t")。

public static final String KEY_VALUE_SEPERATOR = 
"mapreduce.input.keyvaluelinerecordreader.key.value.separator";

该值在KeyValueLineRecordReader类的构造函数中设置:

String sepStr = conf.get(KEY_VALUE_SEPERATOR, "t");

相关内容

  • 没有找到相关文章

最新更新