sqoop

xuexiaogang發表於2015-08-10

3. Sqoop

3.1環境

在以上環境完成以後如果要對關係型資料庫進行互動,那麼需要Sqoop。以上安裝的是元件服務元件中檢查一下是不是有Sqoop或者Sqoop2。這個是與關係型資料庫互動的服務元件。如果沒有。按照下圖進行增加。推薦使用Sqoop,這個屬於客戶端型別,上手比較簡單。

sqoop

 

sqoop選中Sqoop Client元件,進行安裝。角色推薦放在主節點(hbasehive所在的機器)

3.2支援

連線mysql需要相應的包,包名mysql-connector-java-5.1.26-bin.jar可以去下載或者下載更新的。

推薦放在主節點的/opt/cloudera/parcels/CDH-5.4.3-1.cdh5.4.3.p0.6/lib/hadoop/  紅色部分是CDH版本不同可能數字會有點不一樣。

3.3Sqoop連線mysql

示例:

sqoop list-databases --connect jdbc:mysql://172.20.2.105:p/ --username root --password p

 

 sqoop list-tables --connect jdbc:mysql://172.20.2.105:p/mysql --username root --password P

紅色部分是變數,根據實際情況自己填寫。

3.4 mysql匯入hive

先建立表結構

sqoop create-hive-table --connect jdbc:mysql://172.20.2.105:p/test --table yyy --username root --password P --hive-table yyy

紅色部分是變數,根據實際情況自己填寫。

 

再導資料

sqoop import --connect jdbc:mysql://172.20.2.105:p/test --username root --password P --table yyy --hive-import

mysql的表必須有主鍵,才能匯入。

 

3.5 hive匯入mysql

sqoop export --connect jdbc:mysql://172.20.2.105:p/test --username root --password P --table zzz --export-dir /user/hive/warehouse/yyy --input-fields-terminated-by '\0001'

紅色部分是變數,根據實際情況自己填寫。

匯出路徑的地址用命令:hadoop fs -lsr /  進行檢視。 

匯入之前mysql中的表結構也要建立起來才能匯入成功。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/637517/viewspace-1766830/,如需轉載,請註明出處,否則將追究法律責任。