天天看點

beeline 執行資料導入load data報錯No files matching path

問題:

    記錄一次Hive導入資料找不到檔案的錯誤

    load data local inpath '/data/test/ftp/test.txt' into table test;

    FAILED: SemanticException Line 1:23 Invalid path ''/data/test/ftp/test.txt'': No files matching path file:/data/test/ftp/test.txt

    報錯找不到檔案,确定目前機器确實存在這個檔案。

環境:實存在這個檔案。在Hive的cli端執行load語句,加載測試檔案;Hive版本2.3.7,Hadoop版本2.x

問題分析:可以參考這篇部落格https://blog.csdn.net/hao495430759/article/details/80529456 

問題解決:

    1)将檔案上傳到metastore服務端,在metastore服務端進行操作

    将檔案上傳到metastore服務端

    scp /data/test/ftp/test.txt node003:/data/test/ftp/

    登陸metastore服務端

    ssh node003

     登陸beeline後執行load語句

     beeline -u jdbc:hive2://node003:10000 -n root

     load data local inpath '/data/test/ftp/test.txt' into table test;

    查詢結果

     select * from test;

    2)将檔案上傳到hdfs,通過load進行加載

   重新打開一個shell視窗,上産物檔案到HDFS

    hdfs dfs -put /data/test/ftp/test.txt /data/test/RAW/

   在已經登陸beeline的視窗加載資料

    load data inpath '/data/test/RAW/test.txt' into table test;

   檢視結果

    select * from test;

繼續閱讀