访问s3n:// elasticmapreduce/samples/wordcount/input中的文件

iCo*_*ode 9 amazon-s3 amazon-web-services

我如何访问位于S3的以下文件夹中的文件,该文件由其他人拥有

S3N:// elasticmapreduce /样品/单词计数/输入

Sua*_*ehi 5

s3n://elasticmapreduce/samples/wordcount/input 中的文件是公开的,并且可作为 Amazon 示例字数统计 Hadoop 程序的输入。获取它们的最佳方法是

  1. 从 Amazon Web Services 控制台启动新的 Amazon Elastic MapReduce 作业流程(无论是哪一个),并确保使用 Keep Alive 选项使作业保持活动状态
  2. EC2 计算机启动后,从 Amazon Web Services 控制台找到 EC2 上的实例
  3. 例如,使用 hadoop 用户 ssh 到正在运行的 EC2 实例之一 ssh -i keypair.pem hadoop@ec2-IPADDRESS.compute-1.amazonaws.com
  4. 获取您需要的文件,使用hadoop dfs -copyToLocal s3://elasticmapreduce/samples/wordcount/input/0002 .
  5. 通过 sftp 将文件传输到本地系统


Mic*_*riv 3

文件夹的所有者(很可能是文件夹中的文件)必须允许匿名读者访问该文件夹。如果是这种情况, s3n://x/y... 会转换为 http://s3.amazonaws.com/x/y ... 或 http://x.s3.amazonaws.com/y。 ..

x 是存储桶的名称。y... 是桶内的路径。

如果您想确保文件存在,例如,如果您怀疑名称拼写错误,您可以在浏览器中打开 http://s3.amazonaws.com/x ,您将看到描述“文件”的 XML,即 S3对象,可用。试试这个: http: //s3.amazonaws.com/elasticmapreduce

我试过了,看来你想要的路径不是公开的。AWS EBS 文档在“入门”示例之一中引用了 s3://elasticmapreduce/samples/wordcount/input。但 s3 与 s3n 不同,因此输入可能可供 EMR 使用,但不可用于 HTTP 访问。