大数据全系列 教程
1869个小节阅读:464.9k
目录
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
4.主入口类:Hdfs2HbaseMain
xxxxxxxxxx
package com.itbaizhan.hdfs2hbase;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
public class Hdfs2HbaseMain {
public static void main(String[] args) throws Exception {
Configuration conf = new Configuration(true);
//设置本地运行
conf.set("mapreduce.framework.name","local");
//指定hbase的zk集群
conf.set("hbase.zookeeper.quorum","node2,node3,node4");
//创建job对象
Job job = Job.getInstance(conf, "hdfs2hbase demo");
//指定入口类
job.setJarByClass(Hdfs2HbaseMain.class);
//指定输入文件路径
FileInputFormat.addInputPath(job,new Path("/usr/local/hello.txt"));
//指定Mapper相关属性
job.setMapOutputKeyClass(Text.class);
job.setMapOutputValueClass(IntWritable.class);
job.setMapperClass(Hdfs2HbaseMapper.class);
//指定Reducer类,以及处理后的数据放入到Hbase的哪种表中
TableMapReduceUtil.initTableReducerJob(
"wordcount",//表名称
Hdfs2HbaseReducer.class,//指定Reducer类
job,//指定作业的job对象
null,null,null,null,
false//false表示不需要将依赖的jar上传到集群
);
//提交作业
job.waitForCompletion(true);
}
}