Sqoop2基础

安装Sqoop2


通过Cloudera Manager的Add a service来安装Sqoop2 Server即可,不需要安装client。



试用Sqoop


不需要下载client,启动Sqoop2 server之后,直接在CDH中的某个节点上运行命令sqoop2即可

这里写图片描述




配置Sqoop


JDBC Drivers

安装好Sqoop2之后,会发现Sqoop自带的JDBC driver只有一个

这里写图片描述


连接不同的数据库需要用到不同放入JDBC Driver,例如连接MySQL需要用mysql-jdbc-driver,连接Oracle需要用ojdbc。


如果想要额外的JDBC Driver需要自己下载并放入到Sqoop系统中去(这是Sqoop官网的原话)。

Cloudera的Blog说:Sqoop also ships with specialized connectors for MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server, IBM DB2, and Netezza, so there is usually no need to download extra connectors

实际上,Sqoop自带的JDBC Driver就已经可以适用于大部分的数据库了,例如MySQL,不需要另外安装




使用Sqoop2(Interactive Way)


摘自Sqoop 5 Minutes Demo

显示所有的connector

show connector -all

这里写图片描述



创建Connection Object

create connection -cid <connection-id>

这里写图片描述



创建Job Object (Export)

create job --xid <job-id> --type <job-type>
job-type可以为 import或者export
这里写图片描述

这里, Schema name是数据库的名字,Table name是要被导出的MySQL表的名字, 其他的可以先不填

上面配置的Job的目的是:将MySQL的数据库njzd中的表product中的全部内容以文本的形式import到HDFS的目录/user/tao/xt-data/exported/中。



提交运行被创建的Job

start job -j <job-id>
这里写图片描述



从Resource Manager中可以看到该MapReduce Job的执行

这里写图片描述


也可以通过命令status来查看Job的运行状态

status job -j <job-id>

这里写图片描述



查看该Job的结果

可以看到,该Job运行完成后,目标数据库中的数据已经被写入到了HDFS中了。

这里写图片描述



Kill Job

当某个job在运行时,可以将其kill

stop job -j <job-id>
这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值