• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 200, comments - 8, trackbacks - 0, articles - 0

            hadoop jar xxxx.jar的流程

            Posted on 2013-03-02 17:28 鑫龍 閱讀(4024) 評論(0)  編輯 收藏 引用 所屬分類: Hadoop
            jar -cvf xxx.jar .
            hadopp jar xxx.jar clalss-name [input] [output]
            ----------------------------------------------------------------------
            hadoop jar hadoop-0.20.2-examples.jar [class name]的實質(zhì)是:
            1.利用hadoop這個腳本啟動一個jvm進(jìn)程;
            2.jvm進(jìn)程去運行org.apache.hadoop.util.RunJar這個java類;
            3.org.apache.hadoop.util.RunJar解壓hadoop-0.20.2-examples.jar到hadoop.tmp.dir/hadoop-unjar*/目錄下;
            4.org.apache.hadoop.util.RunJar動態(tài)的加載并運行Main-Class或指定的Class;
            5.Main-Class或指定的Class中設(shè)定Job的各項屬性
            6.提交job到JobTracker上并監(jiān)視運行情況。
            注意:以上都是在jobClient上執(zhí)行的。
            運行jar文件的時候,jar會被解壓到hadoop.tmp.dir/hadoop-unjar*/目錄下(如:/home/hadoop/hadoop-fs/dfs/temp/hadoop-unjar693919842639653083, 注意:這個目錄是JobClient的目錄,不是JobTracker的目錄)。解壓后的文件為:
            drwxr-xr-x 2 hadoop hadoop 4096 Jul 30 15:40 META-INF
            drwxr-xr-x 3 hadoop hadoop 4096 Jul 30 15:40 org
            有圖有真相:

            提交job的實質(zhì)是:
            生成${job-id}/job.xml文件到hdfs://${mapred.system.dir}/(比如hdfs://bcn152:9990/home/hadoop/hadoop-fs/dfs/temp/mapred/system/job_201007301137_0012/job.xml),job的描述包括jar文件的路徑,map|reduce類路徑等等.
            上傳${job-id}/job.jar文件到hdfs://${mapred.system.dir}/(比如hdfs://bcn152:9990/home/hadoop/hadoop-fs/dfs/temp/mapred/system/job_201007301137_0012/job.jar)
            有圖有真相:

            生成job之后,通過static JobClient.runJob()就會向jobTracker提交job:
            JobClient jc = new JobClient(job);
            RunningJob rj = jc.submitJob(job);
            之后JobTracker就會調(diào)度此job,
            提交job之后,使用下面的代碼獲取job的進(jìn)度:
                try {
                  if (!jc.monitorAndPrintJob(job, rj)) {
                    throw new IOException("Job failed!");
                  }
                } catch (InterruptedException ie) {
                  Thread.currentThread().interrupt();
                }


            免费观看久久精彩视频| 亚洲AV无一区二区三区久久| 爱做久久久久久| 久久久久国产一级毛片高清板| 免费精品国产日韩热久久| 亚洲精品无码久久千人斩| 99久久国产免费福利| 久久精品国产免费观看三人同眠| 成人国内精品久久久久一区| 亚洲国产成人精品91久久久| 久久九九精品99国产精品| 久久亚洲视频| 热久久这里只有精品| 久久婷婷成人综合色综合| 亚洲国产精品无码久久九九| 久久99免费视频| 亚洲AV无码久久| 欧美日韩精品久久免费| 久久精品二区| 精品久久人人爽天天玩人人妻| 亚洲愉拍99热成人精品热久久 | 中文字幕热久久久久久久| 久久高潮一级毛片免费| 99精品国产在热久久无毒不卡| 超级97碰碰碰碰久久久久最新| 精品人妻伦一二三区久久| 久久99精品国产99久久| 国产精品久久久久无码av| a级成人毛片久久| 91久久精一区二区三区大全| 亚洲精品无码久久久久去q| 国产欧美久久久精品影院| 色综合久久中文字幕综合网| 久久亚洲欧洲国产综合| 亚洲人成网站999久久久综合| 青春久久| 亚洲午夜久久久久久久久电影网| 日本强好片久久久久久AAA| 久久精品国产亚洲av高清漫画 | 一本久久a久久精品综合香蕉 | 久久无码精品一区二区三区|