【发布时间】:2012-12-31 09:56:55
【问题描述】:
我有一个从 FTP 服务器读取文件并将其写入HDFS 的代码。我已经实现了一个自定义的InputFormatReader,它将输入的isSplitable 属性设置为false。但是这给了我以下错误。
INFO mapred.MapTask: Record too large for in-memory buffer
我用来读取数据的代码是
Path file = fileSplit.getPath();
FileSystem fs = file.getFileSystem(conf);
FSDataInputStream in = null;
try {
in = fs.open(file);
IOUtils.readFully(in, contents, 0, contents.length);
value.set(contents, 0, contents.length);
}
任何想法如何在不拆分输入文件的情况下避免java heap space error?或者如果我让isSplitable true 我该如何读取文件?
【问题讨论】:
标签: java hadoop mapreduce elastic-map-reduce amazon-emr