Hive 无法将查询结果移动到文件夹
Posted
技术标签:
【中文标题】Hive 无法将查询结果移动到文件夹【英文标题】:Hive unable to move query results to a folder 【发布时间】:2018-08-16 07:05:24 【问题描述】:我在 hive 中编写了一个选择查询来将数据移动到特定文件夹。 但我收到一个错误。 请帮忙。
将数据移动到本地目录 /Dataproviders/DataSurgery/Order/out/jul24msngtxn/negtxns 失败并出现异常无法将源 hdfs://mycluster/tmp/hive/sshuser/253d3089-fcc0-4656-82ca-ccbe893196ed/hive_2018-08-16_06-58-29_220_388527949811395742-1/-mr-10000 移动到目标 /Dataproviders/ DataSurgery/Order/out/jul24msngtxn/negtxns FAILED:执行错误,从 org.apache.hadoop.hive.ql.exec.MoveTask 返回代码 1
INSERT OVERWRITE LOCAL DIRECTORY '/Dataproviders/DataSurgery/Order/out/jul24msngtxn/negtxns/'
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\034'
STORED AS TEXTFILE
select * from sourcetable;
我已授予以下文件夹的完全权限。 但问题依然存在
hdfs dfs -chmod 777 /tmp/hive
hdfs dfs -chmod -R 777 /Dataproviders/DataSurgery/
【问题讨论】:
尝试将数据插入HDFS目录,然后使用hdfs dfs -getmerge
获取数据到本地机器
【参考方案1】:
我犯了一个严重的错误。 不应该存在关键字 LOCAL 来写入 hdfs 目录。 我删除了它并且查询工作正常。 请找到正确的查询。
INSERT OVERWRITE DIRECTORY '/Dataproviders/DataSurgery/Order/out/jul24msngtxn/negtxns/'
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\034'
STORED AS TEXTFILE
select * from sourcetable;
【讨论】:
以上是关于Hive 无法将查询结果移动到文件夹的主要内容,如果未能解决你的问题,请参考以下文章