Sqoop部署、使用以及排错

1、Sqoop部署

Sqoop1.4.4在Hadoop2.2.0集群上的安装

sqoop安装部署(笔记)

2、Sqoop的使用

①相关链接

使用sqoop将MySQL数据库中的数据导入Hbase

Sqoop1.4.4将MySQL数据库表中数据导入到HBase表中

详细总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入、导出

②Sqoop将Oracle数据导入至Hive

a、单表导入

sqoop import --hive-import --connect jdbc:oracle:thin:@168.168.207.71:1521:orcl --username NEWOAUAT --password newoauat --table T_ORGANIZATION_CODE --hive-database weishu --hive-table T_ORGANIZATION_CODE --verbose -m 1

说明:Sqoop-1.4.6将测试Oracle的数据导入至Hive

注意事项:username大写,密码小写,笔者环境下两者都小写不报错也不显示内容,两者都大写连不上,并不需要网上文档所说的--hive-create-table参数,通过--hive-table指定一个表名(无需新建)即可。

b、整库导入:

sqoop 整库导入数据hive

sqoop import-all-tables --hive-import --connect jdbc:oracle:thin:@168.168.207.71:1521:orcl --username NEWOAUAT --password newoauat --hive-database test --verbose -m 1

说明:import用import-all-tables替换,无需--table(原表参数)以及--hive-table(目的表)这两个参数。

注意事项:username大写,密码小写,笔者环境下两者都小写不报错也不显示内容,两者都大写连不上。

③Sqoop将Oracle数据导入至HBase

./sqoop import --connect jdbc:oracle:thin:@192.168.136.130:1521:orcl --username NEWOAUAT --password newoauat --m 1 --table T_PROCESSAPPLY --columns ID,BASE_APP_DEPT,BASE_APP_DEPT_CODE,BASE_APP_ID,BASE_APP_ORG,BASE_APP_ORG_CODE,BASE_DEAL_LAUNCH_USER,BASE_FLOWLEVEL,BASE_FLOWLEVELNAME,BASE_SYSTEM_CODE,ENDTIME,ORIGINATOR,STARTTIME,STATUS,STEPNAME,SUBJECT,WORKFLOWNAME,WORKFLOWNAMECN,WORKFLOWNUMBER,WORKFLOWNUM,BASE_DEAL_USERID,SUBMITTYPE,DOCNUMBER,COLLECTDATE,COLLECTHOSTDEPT,DISPATCHCATEGORYSTR,DISPATCHTYPESTR,DOCORG,SUBMITOBJECT,SIMPLIFY,SEALSNAME,COLLECTDOCNUMBER --hbase-create-table --hbase-table or1 --hbase-row-key ID --column-family or1

注意事项:①username大写,密码小写,笔者环境下两者都小写不报错也不显示内容,两者都大写连不上;

②要导入的表名,即--table参数大写;

--columns参数中的列族都是大写,且列族与要导入的Oracle表中字段一一对应;

④与Hive不一样,当所要导入表不存在时,hbase需要--hbase-create-table进行表的创建(去掉没测,兴许也能?);

--hbase-row-key用的是columns内的值,如果自己定义,也可以吧;

⑥起初在Debug无错也不显现时(后来验证是columns没大写),查询资料,发现这种情况也有可能是指定分隔符 --fields-terminated-by','参数未加,Oracle默认分隔符为',',所以如果你columns大写了,其他格式与上述格式一致,却依旧没有数据,尝试下添加一下这个分隔符参数吧。

3、Sqoop常见问题

找不到类class org.apache.sqoop.Sqoop

使用sqoop从mysql导入数据到Hive报错

你可能感兴趣的:(Sqoop部署、使用以及排错)