将本地文件上传为hdfs文件
String localSrc = "";
String dst = "";
InputStream in = new BufferedInputStream(new FileInputStream(new File(localSrc)));
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(new URI(dst),conf);
OutputStream out = fs.create(new Path(dst),new Progressable() {
@Override
public void progress() {
System.out.print("*");
}
});
IOUtils.copyBytes(in,out, 4096,true);
如果你是在window环境下操作的,可能会有权限文件,
解决问题的办法:
1.将window下的名字改成hadoop的名字相同
2.执行hadoop fs -chmod 777 /命令
3.在系统的环境变量中添加HADOOP_USER_NAME为hadoop的用户
4.在hdfs的配置文件中,将dfs.permissions修改为False
本文介绍了一种在Hadoop分布式文件系统(HDFS)中上传本地文件的方法,并详细展示了使用Java API进行文件上传的具体步骤。此外,针对Windows环境下的权限问题,提供了四种解决方案。
1513

被折叠的 条评论
为什么被折叠?



