sqoop的基本用法介绍

注意:下面的用法都以mysql为例

  • RDBMS数据导入到hive

sqoop import --connect jdbc:mysql://172.17.210.180/dc_scheduler_client --username dc_scheduler_cli --password dc_scheduler_cli --table t_class --split-by id -m 2 --verbose --hive-import --create-hive-table --hive-table dc_test.t_class1 --<span style="font-family: Arial, Helvetica, sans-serif;">fields-terminated-by</span> '\t' --bindir /root/tmp --outdir /root/tmp <span style="font-family: Arial, Helvetica, sans-serif;">--null-string '\\N' --null-non-string '\\N'</span>

  1. import:导入
  2. connect:jdbc串
  3. username:mysql的用户名
  4. password:mysql的密码
  5. table:mysql中的源表
  6. split-by:按字段分割map,结合参数m进行使用
  7. verbose:打印详细日志
  8. hive-import:导入数据至hive
  9. hive-create-table:根据原表导入hive表结构,当表已存在时会报错
  10. fileds-terminated-by:hive中的表数据字段分隔符
  11. bindir:存放sqoop产生的java代码对于的class文件及jar包
  12. outdir:存放sqoop生产的java代码
  13. null-string:源表数据字段为字符且为空时,用指定字符代替
  14. null-non-string:源表数据字段不为字符且为空时,用指定字符代替
  • hive中的数据导出至RDBMS

sqoop export -export-dir /hive/warehouse/dc_test.db/t_class1  --connect jdbc:mysql://172.17.210.180/dc_scheduler_client --username dc_scheduler_cli --password dc_scheduler_cli --update-key id --update-mode allowinsert --table t_class --input-fields-terminated-by '\t' -m 1 --bindir /root/tmp --outdir /root/tmp --input-null-string '\\N' --input-null-non-string '\\N'
    1. export:hive中导出数据
    2. update-key:更新时依据的字段
    3. update-mode:更新模式(updateonly:只更新 allowinsert:没有更新的情况,将数据插入)
    4. table:目的端的表
    5. input-fields-terminated-by:hive中的数据字段分隔符
    6. input-null-string:当输出的字段为字符串并且为空时,用指定的字符替换
    7. input-null-non-string:当输出的字段不是字符串且为空时,用指定的字符替换

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值