2017-04-06 206 views
0

我使用如下命令sqoop:sqoop導入錯誤蜂巢

sqoop import 
    --libjars /usr/hdp/2.4.0.0-169/sqoop/lib,/usr/hdp/2.4.0.0-169/hive/lib 
    --connect jdbc:teradata://x/DATABASE=x 
    --connection-manager org.apache.sqoop.teradata.TeradataConnManager 
    --username ec 
    --password dc 
    --query "select * from hb where yr_nbr=2017" 
    --hive-table schema.table 
    --num-mappers 1 
    --hive-import 
    --target-dir /user/hive/warehouse/GG 

我得到這個錯誤:

org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657) at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162) 
    17/04/06 11:15:41 INFO mapreduce.Job: map 100% reduce 0% 
    17/04/06 11:15:41 INFO mapreduce.Job: Task Id : attempt_1491466460468_0029_m_000000_1, Status : FAILED 
    Error: org.apache.hadoop.fs.FileAlreadyExistsException: /user/root/temp_111508/part-m-00000 for client 192.168.211.133 already exists 
+0

編輯您的問題。命令和錯誤混亂,格式不正確。檢查https://stackoverflow.com/help/how-to-ask –

回答

0

從錯誤中,我可以猜測,輸出文件已經在您的目標目錄中,可能來自您之前的sqoop導入。 sqoop導入中有一個選項,名爲--delete-target-dir,它將刪除您的目標輸出目錄,並在您的下一個sqoop導入中重新創建它們。希望有所幫助。