| 1 | ◢ <[wiki:III140412/Lab10 實作十]> | <[wiki:III140412 回課程大綱]> ▲ | <[wiki:III140412/Lab12 實作十二]> ◣ |
| 2 | |
| 3 | = 實作十一 Lab11 = |
| 4 | |
| 5 | {{{ |
| 6 | #!html |
| 7 | <p style="text-align: center;"><big style="font-weight: bold;"><big>Hadoop FileSystem API 實作(二)<br/>HDFS 下載檔案到 Local<br/>Download HDFS Files and Directories to Local</big></big></p> |
| 8 | }}} |
| 9 | [[PageOutline]] |
| 10 | {{{ |
| 11 | #!text |
| 12 | 請先連線至 nodeN.3du.me , N 為您的報名編號 |
| 13 | }}} |
| 14 | |
| 15 | * 延續上一個實作,我們也可以參考 !FsShell.java 的 copyToLocal(String[]argv, int pos) 函數,來撰寫從 HDFS 下載到本地端的程式 |
| 16 | {{{ |
| 17 | #!java |
| 18 | 159 void copyToLocal(String[]argv, int pos) throws IOException { |
| 19 | .... 略 .... |
| 20 | 183 Path srcpath = new Path(srcstr); |
| 21 | 184 FileSystem srcFS = getSrcFileSystem(srcpath, verifyChecksum); |
| 22 | .... 略 .... |
| 23 | }}} |
| 24 | * 讓我們先來觀察程式運作的情形,請剪貼以下步驟,並嘗試思考觀察到的現象(特別是 ls 指令列出的結果差異): |
| 25 | {{{ |
| 26 | cd ~/hadoop_labs/lab005 |
| 27 | ant |
| 28 | hadoop fs -ls |
| 29 | ls |
| 30 | hadoop jar copyToLocal.jar input input |
| 31 | ls |
| 32 | hadoop jar copyToLocal.jar file file |
| 33 | ls |
| 34 | ant clean |
| 35 | }}} |