一.Sqoop
Sqoop介绍
Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、oracle...)间进行数据的传递,可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。一般情况下,是将数据分析的结果导出到关系型数据库中,供其他部门使用。Sqoop成立于2009年,刚开始是作为hadoop的一个模块而存在的,不过后来为了更好的进行部署使用,成为apache基金会组织的一个项目。Sqoop专门为大数据而设计,可以通过分割数据集来启动多个mapreduce程序来处理每个数据块。
sqoop结构图
二、Sqoop安装步骤
1. 下载
下载地址:http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.5-cdh5.3.6.tar.gz
打开该网址即可自动下载
参考:
http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.5-cdh5.3.6/SqoopUserGuide.html
https://cwiki.apache.org/confluence/display/SQOOP/Home
2. 解压
tar -zxvf sqoop-1.4.5-cdh5.3.6.tar.gz
3. copy mysql的驱动类到lib文件夹中
cp mysql-connector-java-5.1.27-bin.jar /home/hadoop/bigdatasoftware/sqoop-1.4.5-cd h5.3.6/lib/
4. copy hadoop的hadoop-common-2.5.0-cdh5.3.6.jar hadoop-hdfs-2.5.0-cdh5.3.6.jar hadoop-mapreduce-client-core-2.5.0-cdh5.3.6.jar三个jar到lib文件夹中。
cp ~/bigdatasoftware/hadoop-2.7.2/share/hadoop/common/hadoop-common-2.7.2.jar ./lib/
cp ~/bigdatasoftware/hadoop-2.7.2/share/hadoop/hdfs/hadoop-hdfs-2.7.2.jar ./lib/
cp ~/bigdatasoftware/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.2.jar ./lib/
5. 配置sqoop-env.sh文件内容,
cp ./sqoop-env-template.sh ./sqoop-env.sh
vim conf/sqoop-env.sh
内容如下:
export HADOOP_COMMON_HOME=/home/hadoop/bigdatasoftware/hadoop-2.7.2
export HADOOP_MAPRED_HOME=/home/hadoop/bigdatasoftware/hadoop-2.7.2
export HBASE_HOME=/home/hadoop/bigdatasoftware/hbase-0.98.6-cdh5.3.6
export HIVE_HOME=/home/hadoop/bigdatasoftware/apache-hive-0.13.1-bin/