我有一个Hive脚本我在EMR中运行,它在S3中创建了一个分区的Parquet表,它还存储在S3中的~40GB gzip压缩文件中。
该脚本运行正常大约4个小时,但达到一个点(非常确定它刚刚完成创建Parquet表)它出错。日志显示错误是:
HiveException: Hive Runtime Error while processing row
引起的:
AmazonS3Exception: Bad Request
我能看到的日志中确实没有更多有用的信息。它正在从S3中读取CSV文件并且它在S3中创建了几个元数据文件,所以我已经确认该实例具有对Bucket的读/写权限。
我真的想不出其他任何事情,我希望日志中有更多关于Hive对S3的“错误请求”的信息。有人有主意吗?
BadRequest是来自AWS的一个相当无意义的响应,如果有任何理由它不喜欢调用者,它会发送它。没有人真正知道发生了什么。
如果它让你感觉更好,当我尝试在对象存储中准确列出一个目录时,我就会看到它,而且我是s3a连接器的共同作者。就像我说的“猜测”。找到答案后,在此处添加评论,或者,如果故障排除文档中没有,请在主题上提交针对hadoop的补丁。