如何过滤S3文件作为Amazon EMR的输入?

时间:2015-11-07 07:10:49

标签: amazon-web-services amazon-emr

我正在尝试运行Amazon EMR Hadoop流程,该流程将处理S3存储桶中的CloudFront日志。由于CloudFront在同一个存储桶中生成大量日志,如何在不为S3访问生成额外带宽的情况下过滤日志文件?

1 个答案:

答案 0 :(得分:0)

我发现我可以使用FileSystem.globStatus()快速过滤来自CloudFront日志存储桶的文件:

FileSystem fs = new Path("s3://logs").getFileSystem(conf);
for (FileStatus fileStatus: fs.globStatus("s3://logs/prefix-2015-11-01*")) {
   if (fileStatus.isFile()) {
      FileInputFormat.addInputPath(myJob, fileStatus.getPath());
   }
}