一、实现功能
1、从hbase里读数据
将hbase里的数据作为map的输入
2、将数据写入hbase
将hbase作为reduce的输出
3、从hbase里读数据,再写入hbase
数据迁移,比如有张表:tb01有20列数据,将其中的10列数据读出来,写入另一张表tb02
二、集成步骤
1.hadoop的添加缺少hbase相关jar包
(1)方法一:可以在hadoop的运行环境中添加HADOOP_CLASSPATH的相关依赖路径
修改hadoop-env.sh文件
# Extra Java CLASSPATH elements. Automatically insert capacity-scheduler.
for f in $HADOOP_HOME/contrib/capacity-scheduler/*.jar; do
if [ "$HADOOP_CLASSPATH" ]; then
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$f
else
export HADOOP_CLASSPATH=$f
fi
done
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/opt/modules/hbase-1.2.0-cdh5.7.0/lib/*
(2)方法二:可以在系统中的环境变量中去添加HADOOP_CLASSPATH的相关依赖路径
修改配置文件
vi /etc/profile
export HBASE_HOME=/opt/modules/hbase-1.2.0-cdh5.7.0
export HADOOP_HOME=/opt/modules/hadoop-2.6.0-cdh5.7.0
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/opt/modules/hbase-1.2.0-cdh5.7.0
刷新配置文件
source /etc/profile
三、测试
1.开启resourcemanager和nodemanager和history服务
-》resourcemanager
sbin/yarn-daemon.sh start resourcemanager
-》nodemanager
sbin/yarn-daemon.sh start nodemanager
-》history
sbin/mr-jobhistory-daemon.sh start historyserver
2.运行rowcounter
bin/yarn jar /opt/modules/hbase-1.2.0-cdh5.7.0/lib/hbase-server-1.2.0-cdh5.7.0.jar rowcounter hadoop22:actor
结果:
ROWS=1