我开始用Hadoop Hive学习BigData
我无法将本地数据上传到Hive表
Hive命令是:
load data local inpath '/usr/local/nhanvien/testHive.txt' into table nhanvien;
我收到错误:
将数据加载到表hivetest.nhanvien失败,异常无法 将源文件:/usr/local/nhanvien/testHive.txt移动到目标 HDFS://本地主机:9000 /用户/蜂巢/仓储/ hivetest.db / nhanvi EN / testHive_copy_3.t XT FAILED:执行错误,返回代码1 org.apache.hadoop.hive.ql.exec.MoveTask
尝试:
hadoop fs -chmod g+w /user/hive/warehouse
sudo chmod -R 777 /home/abc/employeedetails
它仍然会出现此错误
有人可以给我解决方案吗?
答案 0 :(得分:0)
这是一个许可问题。尝试授予您文件所在的本地文件和目录的权限。
sudo chmod -R 777 /usr/local/nhanvien/testHive.txt
然后
以$HDFS_USER
登录并运行以下命令:
hdfs dfs -chown -R $HIVE_USER:$HDFS_USER /user/hive
hdfs dfs -chmod -R 775 /user/hive
hdfs dfs -chmod -R 775 /user/hive/warehouse
您还可以配置hdfs-site.xml
,例如:
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
此配置将禁用HDFS的权限。因此,普通用户可以在HDFS上进行操作。
希望得到这个帮助。
答案 1 :(得分:0)
您可以尝试:
export HADOOP_USER_NAME=hdfs
hive -e "load data local inpath '/usr/local/nhanvien/testHive.txt' into table nhanvien;"