天天看点

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;

继续阅读