title: hbase map-reduce job with oozie for best performance
body: <p>I want to run a Hbase TableMapReduce job from oozie scheduler.
  I have a driver, mapper and no reducer class. What is the best way to run this job from oozie with max-performance of hadoop ecosystem.
  Currently I am using an Java action for the driver class in oozie workflow.</p>
  
  <pre><code>&lt;action name="custom-java-action-mr"&gt;
      &lt;java&gt;
          &lt;main-class&gt;com.mr.sample.MyJobDriver&lt;/main-class&gt;
          &lt;capture-output/&gt;
      &lt;/java&gt;
      &lt;ok to="fork1"/&gt;
      &lt;error to="kill"/&gt;
  &lt;/action&gt;
  </code></pre>
  
  <p>Is using it as map-reduce action will have benefits ?
  If yes then help me with example .</p>
  
  <pre><code>Job job = Job.getInstance();
  
  job.setJobName("My Custom Job");
  
  job.setInputFormatClass(TextInputFormat.class);
  job.setOutputFormatClass(NullOutputFormat.class);
  
  job.setJarByClass(MyJobDriver.class);
  Scan scan = new Scan();
  scan.addFamily(Bytes.toBytes(Entity.FAMILY_NAME));
  scan.setCaching(10000);
  scan.setCacheBlocks(false);
  TableMapReduceUtil.initTableMapperJob(Entity.TABLE_NAME, scan,
          MyJobMapper.class, ImmutableBytesWritable.class, Result.class, job);
  </code></pre>
  
  <p>Currently Hbase connection is not secure , but we do have hbase secure connection in production env.
  Thanks </p>