首页 首页 大数据 数据技术 查看内容

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

木马童年 2018-9-15 17:15 5 0

运行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 --t ...

运行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: 下图这个错误提示可以不用管他,不影响运行

在不久的将来,多智时代一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏多智时代,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!

未分类
0

聚焦多智时代,引领智能变革

© 多智时代(www.duozhishidai.com)版权所有 / 工信部备案 豫ICP备15012664号-1