1、什么是Sqoop
Apache Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
Sqoop是RDBMS和Hadoop之间的一个桥梁
2、Sqoop版本
Sqoop 1===》1.4.x
底层是通过MapReduce来实现的,而且是只有map没有reduce的
InputFormat OutputFormat
Sqoop 2===》1.99.x
两者不兼容,是完全不同的分支
3、导入导出
导入:RDBMS ==> Hadoop
导出:Hadoop ==> RDBMS
4、Sqoop部署
1、下载
wget http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.6-cdh5.7.0.tar.gz
2.解压
[hadoop@hadoop000 software]$ tar -xzvf sqoop-1.4.6-cdh5.7.0.tar.gz -C ~/app
3、配置环境变量
export SQOOP_HOME=/home/hadoop/app/sqoop-1.4.6-cdh5.7.0
export PATH=$SQOOP_HOME/bin:$PATH
4、修改配置文件
[hadoop@hadoop000 conf]$ cp sqoop-env-template.sh sqoop-env.sh
export HADOOP_COMMON_HOME=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0
export HADOOP_MAPRED_HOME=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0
export HIVE_HOME=/home/hadoop/app/hive-1.1.0-cdh5.7.0
5、 拷贝驱动至$SQOOP_HOME/lib
[hadoop@hadoop000 mysql-connector-java-8.0.11]$ cp mysql-connector-java-8.0.11.jar $SQOOP_HOME/lib
6、启动
[hadoop@hadoop000 ~]$ sqoop
xxxxxxx一堆警告
Try 'sqoop help' for usage.
5、查看版本
[hadoop@hadoop000 ~]$ sqoop version
Sqoop 1.4.6-cdh5.7.0
git commit id
Compiled by jenkins on Wed Mar 23 11:30:51 PDT 2016
6、显示本地数据库
hadoop@hadoop000 ~]$ sqoop list-databases \
> --connect jdbc:mysql://localhost:3306/ruozedata_basic03 \
> --username root --password 123456;
information_schema
mysql
performance_schema
ruozedata_basic03
ruozedb
test
网友评论