Hadoop Distribute File System HDFS( 四 )


1.3客户端操作--简单易操作
public class HDFSClient {FileSystem fs = null;//初始化hdfs文件系统@Beforepublic void createFS() throws Exception{Configuration conf = new Configuration();fs = FileSystem.get(new URI("hdfs://node01:9000"),conf,"root");//获取到所有datanode节点信息DatanodeInfo[] dataNodeStats = ((DistributedFileSystem) fs).getDataNodeStats();for (DatanodeInfo dataNodeStat : dataNodeStats) {System.out.println(dataNodeStat.getName());}}//文件的上传@Testpublic void copyFromLocalFile() throws Exception{//文件上传参数1:是否会删除本地原文件 参数2:是否会覆盖掉hdfs上目标的文件 参数3:本地文件路径参数4:目标hdfs文件路径fs.copyFromLocalFile(true,true,new Path("d:/Maven_Repository.zip"),new Path("/hadoop32"));}//文件的下载@Testpublic void copyToLocalFile() throws Exception {fs.copyToLocalFile(true,new Path("/hadoop32/Maven_Repository.zip"),new Path("d:/y.zip"));}@Testpublic void testMkdirAndDeleteAndRename() throws IllegalArgumentException, IOException {// 创建目录fs.mkdirs(new Path("/a1/b1/c1"));// 删除文件夹  , 如果是非空文件夹 , 参数2必须给值truefs.delete(new Path("/aaa"), true);// 重命名文件或文件夹fs.rename(new Path("/a1"), new Path("/a2"));}}