一.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/