一、讀取hdfs檔案
public class readhdfsfileutil
//獲取 conf 對應的 hdfs 集群的物件引用
filesystem fs = filesystem.get(conf);
//將給定的 hdfspath 構建成乙個 hdfs 的路徑物件 path
path path = new path(hdfspath);
//位元組轉字元
fsdatainputstream fsdis = fs.open(path);
inputstreamreader isr = new inputstreamreader(fsdis);
bufferedreader br = new bufferedreader(isr);
string temp = null;
while((temp = br.readline()) != null)
br.close();
}}
二、寫入hdfs檔案
1)、位元組流
public static void writetohdfsfile(string tohdfspath,string localpath) throws exception
2)、位元組轉字元
這個時候要注意關閉流,即bw.close。在寫檔案的操作中如果不關閉是寫不進去的,因為資料並沒有落地到檔案中,而是在記憶體中,程式執行完成後就被**了。而且在讀寫檔案操作的時候,不關閉流可能會占用過多的記憶體資源,導致記憶體溢位。
public static void writetohdfsfile(string tohdfspath,string localpath) throws exception
bw.close();
}
HDFS讀寫檔案
hdfs讀寫檔案 hdfs讀檔案 首先,由client下達命令交給distributed file system系統翻譯成linux命令,然後把命令傳送給namenode,namenode去搜尋fsimage和edit logs,搜到以後把檔案的塊位址 get block locations 返回給...
hdfs讀寫流程 HDFS 檔案讀寫流程
開啟分布式檔案 呼叫分布式檔案 distributedfilesystem.open 方法 定址請求 從 namenode 處得到 datanode 的位址,distributedfilesystem使用 rpc 方式呼叫了namenode,namenode 返回存有該副本的datanode 位址,...
開啟關閉檔案和讀寫檔案
一 開啟和關閉檔案 int open char filename,int flags,mode t mode 開啟檔案 open函式將filename轉換為乙個檔案描述符 flags引數也可以是乙個或者更多位掩蓋的 mode引數指定了新檔案的訪問許可權位 int close int fd 關閉檔案 ...