亚洲国产日韩人妖另类,久久只有这里有精品热久久,依依成人精品视频在线观看,免费国产午夜视频在线

      
      

        HDFS_CRUD

        package com.hdfsdemo;

        import java.io.FileNotFoundException;

        import java.io.IOException;

        import org.apache.hadoop.conf.Configuration;

        import org.apache.hadoop.fs.BlockLocation;

        import org.apache.hadoop.fs.FileStatus;

        import org.apache.hadoop.fs.FileSystem;

        import org.apache.hadoop.fs.LocatedFileStatus;

        import org.apache.hadoop.fs.Path;

        import org.apache.hadoop.fs.RemoteIterator;

        import org.junit.Before;

        import org.junit.Test;

        public class HDFS_CRUD {

        FileSystem fs = null;

        @Before

        public void init() throws Exception {

        // 構(gòu)造一個(gè)配置參數(shù)對(duì)象,設(shè)置一個(gè)參數(shù):我們要訪問的hdfs的URI

        Configuration conf = new Configuration();

        // 這里指定使用的是HDFS文件系統(tǒng)

        conf.set(“fs.defaultFS”, “hdfs://hadoop01:9000”);

        // 通過如下的方式進(jìn)行客戶端身份的設(shè)置

        System.setProperty(“HADOOP_USER_NAME”, “root”);

        // 通過FileSystem的靜態(tài)方法獲取文件系統(tǒng)客戶端對(duì)象

        fs = FileSystem.get(conf);

        }

        @Test

        public void testAddFileToHdfs() throws IOException {

        // 要上傳的文件所在本地路徑

        Path src = new Path(“D:/test.txt”);

        // 要上傳到hdfs的目標(biāo)路徑

        Path dst = new Path(“/testFile”);

        // 上傳文件方法

        fs.copyFromLocalFile(src, dst);

        // 關(guān)閉資源

        fs.close();

        }

        // 從hdfs中復(fù)制文件到本地文件系統(tǒng)

        @Test

        public void testDownloadFileToLocal() throws IllegalArgumentException, IOException {

        // 下載文件

        fs.copyToLocalFile(new Path(“/testFile”), new Path(“D:/”));

        }

        // 創(chuàng)建,刪除,重命名文件

        @Test

        public void testMkdirAndDeleteAndRename() throws Exception {

        // 創(chuàng)建目錄

        fs.mkdirs(new Path(“/a/b/c”));

        fs.mkdirs(new Path(“/a2/b2/c2”));

        // 重命名文件或文件夾

        fs.rename(new Path(“/a”), new Path(“/a3”));

        // 刪除文件夾,如果是非空文件夾,參數(shù)2必須給值true

        fs.delete(new Path(“/a2”), true);

        }

        // 查看目錄信息,只顯示文件

        @Test

        public void testListFiles() throws FileNotFoundException, IllegalArgumentException, IOException {

        // 獲取迭代器對(duì)象

        RemoteIterator listFiles = fs.listFiles(new Path(“/”), true);

        while (listFiles.hasNext()) {

        LocatedFileStatus fileStatus = listFiles.next();

        // 打印當(dāng)前文件名

        System.out.println(fileStatus.getPath().getName());

        // 打印當(dāng)前文件塊大小

        System.out.println(fileStatus.getBlockSize());

        // 打印當(dāng)前文件權(quán)限

        System.out.println(fileStatus.getPermission());

        // 打印當(dāng)前文件內(nèi)容長度

        System.out.println(fileStatus.getLen());

        // 獲取該文件塊信息(包含長度,數(shù)據(jù)塊,datanode的信息)

        BlockLocation[] blockLocations = fileStatus.getBlockLocations();

        for (BlockLocation bl : blockLocations) {

        System.out.println(“block-length:” + bl.getLength() + “–” + “block-offset:” + bl.getOffset());

        String[] hosts = bl.getHosts();

        for (String host : hosts) {

        System.out.println(host);

        }

        }

        System.out.println(“—————————-“);

        }

        }

        // 查看文件及文件夾信息

        @Test

        public void testListAll() throws FileNotFoundException, IllegalArgumentException, IOException {

        // 獲取HDFS系統(tǒng)中文件和目錄的元數(shù)據(jù)等信息

        FileStatus[] listStatus = fs.listStatus(new Path(“/”));

        String flag = “d– “;

        for (FileStatus fstatus : listStatus) {

        // 判斷是文件還是文件夾

        if (fstatus.isFile())

        flag = “f– “;

        System.out.println(flag + fstatus.getPath().getName());

        }

        }

        }

        鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請(qǐng)聯(lián)系管理員(admin#wlmqw.com)刪除。
        上一篇 2022年6月16日 12:03
        下一篇 2022年6月16日 12:04

        相關(guān)推薦

        聯(lián)系我們

        聯(lián)系郵箱:admin#wlmqw.com
        工作時(shí)間:周一至周五,10:30-18:30,節(jié)假日休息