在Hive中发布加载数据(与组相关)

时间:2018-02-21 06:11:38

标签: hadoop hive

我有一个sample_data文件(先前在hive表中创建了架构 运行以下命令以加载表人员中的数据:

LOAD DATA LOCAL INPATH 'sample_data.csv' OVERWRITE INTO TABLE people;

我得到以下追踪:

  

将数据加载到表default.people失败,异常无法执行   将源文件:/home/hduser1/sample_data.csv移动到目标   HDFS://蜂巢主:54310 /用户/蜂巢/仓储/人/ sample_data.csv   FAILED:执行错误,返回代码1   org.apache.hadoop.hive.ql.exec.MoveTask

尝试了以下但是徒劳无功:

hadoop fs -chmod g+w /user/hive/warehouse 
sudo chmod -R 777 /home/hduser1/sample_data.csv 

此外,分析显示了一些有趣的东西

-rwxrwxrwx 1 hduser1 hadoop_group      2874 Feb 21 09:50 sample_data.csv

注意:文件 sample_data.csv 具有 hadoop_group 中hduser1的访问权限,而以下行显示 / user / hive / warehouse 具有超级组中hduser1的访问权限。

drwxrwxrwx   - hduser1 supergroup          0 2018-02-21 10:35 /user/hive/warehouse/people

我如何克服这个问题?我错过了任何配置吗?

1 个答案:

答案 0 :(得分:0)

LOCAL使用LOAD DATA INPATH...选项时,该文件应位于运行Hive的服务器上。如果您无法访问它,最好的方法是手动将数据移至HDFS并使用LOAD DATA INPATH...