24th of July 2011
 

Hive@cygwinのソース変更

Hive(v0.7.1)をcygwinで動かすためには、以下tmpディレクトリの変更(参考)と、

  <property>
    <name>mapred.child.tmp</name>
    <value>../work2/tmp</value>
  </property>

以下ソース変更が必要だった(参考)。

      if (gWork == null) {
        String jtConf = HiveConf.getVar(job, HiveConf.ConfVars.HADOOPJT);
        String path;

        //if (jtConf.equals("local")) {
        //  String planPath = HiveConf.getVar(job, HiveConf.ConfVars.PLAN);
        //  path = new Path(planPath).toUri().getPath();
        //} else {
        //  path = "HIVE_PLAN" + jobID;
        //}
        //InputStream in = new FileInputStream(path);

        Path planPath = new Path(HiveConf.getVar(job, HiveConf.ConfVars.PLAN));
        FileSystem fs = planPath.getFileSystem(job);
        InputStream in = fs.open(planPath);

        MapredWork ret = deserializeMapRedWork(in, job);
        gWork = ret;
        gWork.initialize();
        gWorkMap.put(jobID, gWork);
      }

以前は、でもこんなことをしなくても動いていたような気もするのだけど。。。

Clipart: FETC     Theme: Robert Boylan     Host: Tumblr     Feed: RSS     History: Archive