Sqoop導入導出的幾個例子


 


Sqoop導入導出的幾個例子

 
node2
Sqoop參數介紹_其他命令_導入導出

導入

例一:從DBMS到HDFS
1.node4下啟動mysql
service mysqld start
mysql -u root -p
輸入密碼:123
 
2.node4下創建test數據庫
create database test;
創建psn表
 
3. node2中創建sqoop_test,編輯sqoop1
  1. import
  2. --connect
  3. jdbc:mysql://node4/test
  4. --username
  5. root
  6. --password
  7. 123
  8. --as-textfile
  9. --columns
  10. id,name,msg
  11. --table
  12. psn
  13. --delete-target-dir
  14. --target-dir
  15. /sqoop/data
  16. -m
  17. 1
 
4.執行命令--從DBMS導入到HDFS
  1. sqoop --options-file sqoop1//選項使用腳本
sqoop --options-file sqoop1
 
 
 
 
 
例二:從DBMS到Hive
注意!
$CONDITIONS規定
--as-textfile  //以文本的方式進行存儲
/sqoop/tmp先將數據導入hdfs的臨時目錄,再將數據導入hive的目錄
 
1.node4下啟動mysql
service mysqld start
mysql -u root -p
輸入密碼:123
 
2.node4下創建test數據庫
create database test;
創建psn表
 
3. node2中創建sqoop_test,編輯sqoop2
-e,--query和--table兩個選項是沖突的,因為一個是指定單表,一個是指定多表的導入;
--warehouse-dir指定導入到hive中的時候到底從哪個目錄下面導入;這個選項和hive中的warehouse-dir
配置項很像;
--hive-home指定hive的安裝目錄,如果節點上面配置了環境變量,並且導入了需要的jar包,那么就不需要
指定了;
 
sqoop將關系型數據庫中的數據導入到hive中去的話,首先需要將數據導入到hdfs上面,因此需要先指定
hdfs上面一個臨時存儲這些數據的目錄,然后才會把hdfs上面的數據導入到hive中去;也就是首先使用mr
到hdfs上面,然后在創建hive的表;可以再打開一個終端,查看hive中的表創建的情況;創建的時候
首先在mysql通過查看表字段,然后在hive中創建; 我們沒有指定hive表存放在什么位置。這個位置是由
hive的配置文件指定的,需要在那個位置查看;
  1. import
  2. --connect
  3. jdbc:mysql://node4/test
  4. --username
  5. root
  6. --password
  7. 123
  8. --as-textfile
  9. --query
  10. 'select id, name, msg from psn where id like "1%" and $CONDITIONS'
  11. --delete-target-dir
  12. -target-dir
  13. /sqoop/tmp
  14. -m
  15. 1
  16. --hive-home
  17. /home/hive-1.2.1
  18. --hive-import
  19. --create-hive-table
  20. --hive-table
  21. t_test
 
4.執行命令--從DBMS導入到Hive
先啟動hive服務端node2:    hive --service metastore
再啟動hive客戶端node1:
    hive
sqoop --options-file sqoop2
node1查看表t_test是否生成
 

導出

例三:從HDFS到DBMS
指定HDFS中數據對應的目錄
 
1.node4下啟動mysql
service mysqld start
mysql -u root -p
輸入密碼:123
 
2.node4下創建test數據庫
create database test;
創建h_psn表
 
 
3. node2中創建sqoop_test,編輯sqoop3
  1. export
  2. --connect
  3. jdbc:mysql://node4/test
  4. --username
  5. root
  6. --password
  7. 123
  8. -m
  9. 1
  10. --columns
  11. id,name,msg
  12. --export-dir
  13. /sqoop/data
  14. --table
  15. h_psn
4.執行sqoop命令
查看mysql中的表,看數據是否導入
 
 
 
例四:從Hive到DBMS
 
 
 

 
 

附件列表

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM