<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Hadoop第4周練習—HDFS讀寫文件操作

      1    運行環境說明... 3

      1.1     硬軟件環境... 3

      1.2     機器網絡環境... 3

      2    書面作業1:編譯并運行《權威指南》中的例3.2. 3

      2.1     書面作業1內容... 3

      2.2     運行代碼... 3

      2.3     實現過程... 4

      2.3.1   創建代碼目錄... 4

      2.3.2   建立例子文件上傳到hdfs... 4

      2.3.3   配置本地環境... 5

      2.3.4   編寫代碼... 5

      2.3.5   編譯代碼... 6

      2.3.6   使用編譯代碼讀取文件... 6

      3    書面作業2:寫入HDFS成為一個新文件... 7

      3.1    書面作業2內容... 7

      3.2    運行代碼... 7

      3.3    實現過程... 8

      3.3.1   編寫代碼... 8

      3.3.2   編譯代碼... 9

      3.3.3   建立測試文件... 9

      3.3.4   使用編譯代碼上傳文件內容到hdfs10

      3.3.5   驗證是否成功... 10

      4    書面作業3:作業2反向操作... 10

      4.1    書面作業2內容... 10

      4.2    程序代碼... 10

      4.3    實現過程... 11

      4.3.1   編寫代碼... 11

      4.3.2   編譯代碼... 11

      4.3.3   建立測試文件... 12

      4.3.4   使用編譯代碼把文件內容從hdfs輸出到文件系統中... 12

      4.3.5   驗證是否成功... 12

       

      1    運行環境說明

      1.1  硬軟件環境

      l  主機操作系統:Windows 64 bit,雙核4線程,主頻2.2G6G內存

      l  虛擬軟件:VMware? Workstation 9.0.0 build-812388

      l  虛擬機操作系統:CentOS 64位,單核,1G內存

      l  JDK1.7.0_55 64 bit

      l  Hadoop1.1.2

      1.2  機器網絡環境

      該開發機器處于能連接互聯網的局域網中,具體信息為:

      序號

      IP地址

      機器名

      類型

      用戶名

      運行進程

      1

      10.88.147.220

      Hadoop0

      單機節點

      hadoop

      NN、SNNTaskTracer、DNJobTracer

      2    書面作業1:編譯并運行《權威指南》中的例3.2

      2.1  書面作業1內容

      Hadoop集群中編譯并運行《權威指南》中的例3.2

      2.2  運行代碼

      import java.io.InputStream;

       

      import java.net.URI;

      import org.apache.hadoop.conf.Configuration;

      import org.apache.hadoop.fs.*;

      import org.apache.hadoop.io.IOUtils;

       

      publicclass FileSystemCat {

          publicstaticvoid main(String[] args) throws Exception {

              String uri = args[0];

              Configuration conf = new Configuration();

          FileSystem fs = FileSystem. get(URI.create (uri), conf);

          InputStream in = null;

          try {

               in = fs.open( new Path(uri));

               IOUtils.copyBytes(in, System.out, 4096, false);

              } finally {

               IOUtils.closeStream(in);

              }

          }

      }

      2.3  實現過程

      Hadoop集群中編譯并運行《權威指南》中的例3.2

      2.3.1創建代碼目錄

      啟動Hadoop,在/usr/local/hadoop-1.1.2目錄下使用如下命令建立myclassinput目錄:

      mkdir myclass

      mkdir input

      clip_image002

      2.3.2建立例子文件上傳到hdfs

      進入/usr/local/hadoop-1.1.2/input目錄,在該目錄中建立quangle.txt文件,內容為:

      clip_image004

      使用如下命令在hdfs中建立/usr/hadoop/文件夾

      hadoop fs -mkdir /usr/hadoop/

      hadoop fs -ls /usr/

      clip_image006

      把例子文件上傳到hdfs/usr/hadoop/文件夾中

      hadoop fs -copyFromLocal ../input/quangle.txt /usr/hadoop/quangle.txt

      hadoop fs -ls /usr/hadoop

      clip_image008

      2.3.3配置本地環境

      /usr/local/hadoop-1.1.2/conf目錄中的hadoop-env.sh進行配置,如下如所示:

      ls

      vi hadoop-env.sh

      clip_image010

      加入對HADOOP_CLASPATH變量值,值為/usr/local/hadoop-1.1.2/myclass

      clip_image012

      2.3.4編寫代碼

      進入/usr/local/hadoop-1.1.2/myclass目錄,在該目錄中建立FileSystemCat.java代碼文件,命令如下:

      cd /usr/local/hadoop-1.1.2/myclass/

      vi FileSystemCat.java

      clip_image014

      輸入代碼內容:

      clip_image016

      2.3.5編譯代碼

      /usr/local/hadoop-1.1.2/myclass目錄中,使用如下命令編譯代碼:

      javac -classpath ../hadoop-core-1.1.2.jar FileSystemCat.java

      ls

      clip_image018

      2.3.6使用編譯代碼讀取文件

      使用如下命令讀取quangle.txt內容:

      hadoop FileSystemCat /usr/hadoop/quangle.txt

      clip_image020

      3    書面作業2:寫入HDFS成為一個新文件

      3.1  書面作業2內容

      自行在本地文件系統生成一個大約100字節的文本文件,寫一段程序(可以利用Java APIC API),讀入這個文件,并將其第101-120字節的內容寫入HDFS成為一個新文件,提供代碼和執行結果演示抓圖

      3.2  運行代碼

      注意:在編譯前請先刪除中文注釋!

      import java.io.File;

      import java.io.FileInputStream;

      import java.io.FileOutputStream;

      import java.io.OutputStream;

      import java.net.URI;

       

      import org.apache.hadoop.conf.Configuration;

      import org.apache.hadoop.fs.FSDataInputStream;

      import org.apache.hadoop.fs.FileSystem;

      import org.apache.hadoop.fs.Path;

      import org.apache.hadoop.io.IOUtils;

      import org.apache.hadoop.util.Progressable;

       

      publicclass LocalFile2Hdfs {

          publicstaticvoid main(String[] args) throws Exception {

       

              // 獲取讀取源文件和目標文件位置參數

              String local = args[0];

              String uri = args[1];

             

              FileInputStream in = null;

              OutputStream out = null;

              Configuration conf = new Configuration();

              try {

                  // 獲取讀入文件數據

                  in = new FileInputStream(new File(local));

       

                  // 獲取目標文件信息

                  FileSystem fs = FileSystem.get(URI.create(uri), conf);

                  out = fs.create(new Path(uri), new Progressable() {

                      @Override

                      publicvoid progress() {

                          System.out.println("*");

                      }

                  });

       

                  // 跳過前100個字符

                  in.skip(100);

                  byte[] buffer = newbyte[20];

                     

                  // 101的位置讀取20個字符到buffer

                  int bytesRead = in.read(buffer);

                  if (bytesRead >= 0) {

                      out.write(buffer, 0, bytesRead);

                  }

              } finally {

                  IOUtils.closeStream(in);

                  IOUtils.closeStream(out);

              }      

          }

      }

      3.3  實現過程

      3.3.1編寫代碼

      進入/usr/local/hadoop-1.1.2/myclass目錄,在該目錄中建立LocalFile2Hdfs.java代碼文件,命令如下:

      cd /usr/local/hadoop-1.1.2/myclass/

      vi LocalFile2Hdfs.java

      clip_image022

      輸入代碼內容:

      clip_image024

      3.3.2編譯代碼

      /usr/local/hadoop-1.1.2/myclass目錄中,使用如下命令編譯代碼:

      javac -classpath ../hadoop-core-1.1.2.jar LocalFile2Hdfs.java

      ls

      clip_image026

      3.3.3建立測試文件

      進入/usr/local/hadoop-1.1.2/input目錄,在該目錄中建立local2hdfs.txt文件,內容為:

      cd /usr/local/hadoop-1.1.2/input/

      vi local2hdfs.txt

      clip_image028

      clip_image030

      3.3.4使用編譯代碼上傳文件內容到hdfs

      使用如下命令讀取local2hdfs101-120字節的內容寫入HDFS成為一個新文件:

      cd /usr/local/hadoop-1.1.2/bin/

      hadoop LocalFile2Hdfs ../input/local2hdfs.txt /usr/hadoop/local2hdfs_part.txt

      clip_image032

      3.3.5驗證是否成功

      使用如下命令讀取local2hdfs_part.txt內容:

      hadoop fs -cat /usr/hadoop/local2hdfs_part.txt

      clip_image034

      4    書面作業3:作業2反向操作

      4.1  書面作業2內容

      2的反向操作,在HDFS中生成一個大約100字節的文本文件,寫一段程序(可以利用Java APIC API),讀入這個文件,并將其第101-120字節的內容寫入本地文件系統成為一個新文件,提供代碼和執行結果演示抓圖

      4.2  程序代碼

       

      4.3  實現過程

      4.3.1編寫代碼

      進入/usr/local/hadoop-1.1.2/myclass目錄,在該目錄中建立Hdfs2LocalFile.java代碼文件,命令如下:

      cd /usr/local/hadoop-1.1.2/myclass/

      vi Hdfs2LocalFile.java

      clip_image036

      輸入代碼內容:

      clip_image038

      4.3.2編譯代碼

      /usr/local/hadoop-1.1.2/myclass目錄中,使用如下命令編譯代碼:

      javac -classpath ../hadoop-core-1.1.2.jar Hdfs2LocalFile.java

      ls

      clip_image040

      4.3.3建立測試文件

      進入/usr/local/hadoop-1.1.2/input目錄,在該目錄中建立hdfs2local.txt文件,內容為:

      cd /usr/local/hadoop-1.1.2/input/

      vi hdfs2local.txt

      clip_image042

      clip_image044

      把該文件上傳到hdfs/usr/hadoop/文件夾中

      cd /usr/local/hadoop-1.1.2/bin/

      hadoop fs -copyFromLocal ../input/hdfs2local.txt /usr/hadoop/hdfs2local.txt

      hadoop fs -ls /usr/hadoop

      clip_image046

      4.3.4使用編譯代碼把文件內容從hdfs輸出到文件系統中

      使用如下命令讀取hdfs2local.txt101-120字節的內容寫入本地文件系統成為一個新文件:

      hadoop Hdfs2LocalFile /usr/hadoop/hdfs2local.txt ../input/hdfs2local_part.txt

      ls ../input

      clip_image048

      4.3.5驗證是否成功

      使用如下命令讀取hdfs2local_part.txt內容:

      cat ../input/hdfs2local_part.txt

      clip_image050

      posted @ 2014-12-19 07:17  shishanyuan  閱讀(84106)  評論(4)    收藏  舉報
      主站蜘蛛池模板: 国产激情一区二区三区成人| 熟女人妻aⅴ一区二区三区电影 | 日韩在线成年视频人网站观看| 2021精品亚洲中文字幕| 欧美国产成人久久精品| 四虎国产精品永久在线| 亚洲中文字幕第一页在线| 日本欧洲亚洲高清在线| 午夜综合网| 常宁市| 亚洲欧洲一区二区天堂久久| 中文字幕人妻精品在线| 屏山县| 人人玩人人添人人澡超碰| 亚洲成av人片在www色猫咪| 国产一区二区不卡在线| 乱60一70归性欧老妇| 亚洲熟妇自偷自拍另类| 日韩中文字幕亚洲精品 | 精品人妻伦一二二区久久| 国产亚洲av嫩草久久| 97人人添人人澡人人澡人人澡| 国产精品白丝久久av网站| 国产精品久久久午夜夜伦鲁鲁| 亚洲乱理伦片在线观看中字| 亚洲av尤物一区二区| 99久久免费精品色老| 国产熟睡乱子伦午夜视频| 亚洲国产美女精品久久久| 国产午夜福利短视频| 色爱区综合激情五月激情| 一卡2卡三卡4卡免费网站| 巨大黑人极品videos精品| 91亚洲国产成人久久蜜臀| 亚洲丰满熟女一区二区蜜桃| 国产日韩一区二区四季| 国产精品va在线观看无码不卡| 中文字幕免费一二三区乱码| 日韩精品有码中文字幕| 人妻少妇88久久中文字幕| 亚洲国产午夜精品理论片|