【发布时间】:2014-08-08 20:39:00
【问题描述】:
我在 Amazon S3 上有一个包含 gzip 压缩文本文件的目录,我正在尝试使用 Amazon Elastic MapReduce 上的 Hadoop 流向每个文件单独应用一个函数(特别是解析多行标题)。默认的 Hadoop 流式“每一行都是一条记录”格式在这里不起作用。
我的尝试是将 -input 设置为列出每个 gzip 文件的 S3 路径的文本文件,然后在映射器中使用“Hadoop fs -get”或“Hadoop fs -copyToLocal”将文件复制到工作节点,然后在整个文件上运行函数。但是,这样做会导致步骤失败并出现“权限被拒绝”错误。
我猜这与 dfs.permissions.enabled 变量有关,但我没有运气通过 Hadoop 设置引导接口传递这些。
任何人都知道是什么导致了错误以及如何解决它?或者,如果有其他方法可以使用 EMR(或其他 Amazon 工具)将函数应用于整个文件,我也愿意接受这些方法。谢谢!
【问题讨论】:
标签: hadoop amazon-web-services amazon-s3 hadoop-streaming elastic-map-reduce