Hadoop 0.20之前的版本应该不支持文件追加功能,我用的是1.0版本的。要想使用文件追加写入功能,先配置hdfs-site.xml,如下:
<property>
<name>dfs.support.append</name>
<value>true</value>
</property>
dfs.support.append默认是关闭的。
然后程序打开文件时用:
FileSystem fs = FileSystem.get(URI.create(dst), conf);
FSDataOutputStream out = fs.append(new Path(dst));
在网上找了一天都没有找到解决方法,而且都说hadoop没有这个功能。最后没办法看了下异常,突然发现异常中用个dfs.support.append设置的提示,配置了下,居然成功了,特此分享。