一、概述
Sqoop是apache旗下一款“Hadoop和关系型数据库服务器之间传送数据”的工具。
导入数据:把MySQL,Oracle数据导入到Hadoop的HDFS、HIVE、HBASE等数据存储系统;
导出数据:从Hadoop的文件系统中导出数据到关系数据库mysql等
二、sqoop1与sqoop2架构对比
sqoop1架构:
sqoop2架构:
三、Sqoop工作机制
将导入或导出命令翻译成mapreduce程序来实现
在翻译出的mapreduce中主要是对inputformat和outputformat进行定制
四、Sqoop的安装配置
安装sqoop的前提是已经具备java和hadoop的环境
1、下载并解压
下载地址
http://archive.cloudera.com/cdh5/cdh/5/
sqoop1版本详细下载地址
http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.6-cdh5.14.0.tar.gz
sqoop2版本详细下载地址
http://archive.cloudera.com/cdh5/cdh/5/sqoop2-1.99.5-cdh5.14.0.tar.gz
我们这里使用sqoop1的版本,下载之后上传到/export/softwares目录下,然后进行解压
#cd /export/softwares #tar -zxvf sqoop-1.4.6-cdh5.14.0.tar.gz -C ../servers/
2、修改配置文件
#cd /export/servers/sqoop-1.4.6-cdh5.14.0/conf/ #cp sqoop-env-template.sh sqoop-env.sh
#vim sqoop-env.sh export HADOOP_COMMON_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0 export HADOOP_MAPRED_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0 export HIVE_HOME=/export/servers/hive-1.1.0-cdh5.14.0
3、加入额外的依赖包
sqoop的使用需要添加三个额外的依赖包,mysql的驱动包,oracle的驱动包,java-json依赖包,不然就会报错
mysql-connector-java-5.1.40.jar
ojdbc8.jar
java-json.jar
4、验证启动
# cd /export/servers/sqoop-1.4.6-cdh5.14.0 # bin/sqoop-version