in java/dataproc-wordcount/src/main/java/com/example/bigtable/sample/WordCountHBase.java [91:120]
public static void main(String[] args) throws Exception {
Configuration conf = HBaseConfiguration.create();
String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();
if (otherArgs.length < 2) {
System.err.println("Usage: wordcount-hbase <in> [<in>...] <table-name>");
System.exit(2);
}
Job job = Job.getInstance(conf, "word count");
for (int i = 0; i < otherArgs.length - 1; ++i) {
FileInputFormat.addInputPath(job, new Path(otherArgs[i]));
}
TableName tableName = TableName.valueOf(otherArgs[otherArgs.length - 1]);
try {
CreateTable.createTable(tableName, conf,
Collections.singletonList(Bytes.toString(COLUMN_FAMILY)));
} catch (Exception e) {
LOG.error("Could not create the table.", e);
}
job.setJarByClass(WordCountHBase.class);
job.setMapperClass(TokenizerMapper.class);
job.setMapOutputValueClass(IntWritable.class);
TableMapReduceUtil.initTableReducerJob(tableName.getNameAsString(), MyTableReducer.class, job);
System.exit(job.waitForCompletion(true) ? 0 : 1);
}