Sqoop数据导入到HBase遇上的问题及解决方法

  1. 运行bin/sqoop import --connect jdbc:mysql://ip:port/database --username *** --password ****--hbase-bulkload --hbase-create-table --column-family info --hbase-row-key username --hbase-table detects --table detects将Mysql中detects表导入到Hbase中的detects表,提示找不到users Class错误

解决方法:  将/tmp/sqoop-hadoop/compile 文件夹下的 detects.jar包 放到sqoop安装目录lib下。重新执行即可。确实重新运行好了.

 2.使用importtsv将文件数据导入到Hbase中,x运行${HADOOP_HOME}/bin/hadoop jar ${HBASE_HOME}/lib/hbase-server-1.2.6.jar,提示:


解决方法: 错误提示说明hadoop中找不到hbase的jar包,只要将hbase的路径添加到hadoop路径就可以了HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase classpath` ${HADOOP_HOME}/bin/hadoop jar ${HBASE_HOME}/lib/hbase-server-1.2.6.jar;

最后可以使用命令将文件数据导入到hbase中,例子:HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase classpath` ${HADOOP_HOME}/bin/hadoop jar ${HBASE_HOME}/lib/hbase-server-1.2.6.jar importtsv -Dimporttsv.columns=HBASE_ROW_KEY,info:name,info:age -Dimporttsv.separator=, user /hbase_user -Dimporttsv.bulk.output=/hbase_user 将use数据导入到hbase的user中,提示Bad lines =0 就说明全部导入成功啦

ps: 下图这个错误提示可以不用管他,不影响运行


猜你喜欢

转载自blog.csdn.net/u011249920/article/details/79699453
今日推荐