Hadoop S3DistCp按文件夹分组

Hadoop S3DistCp按文件夹分组,hadoop,amazon-web-services,amazon-s3,emr,Hadoop,Amazon Web Services,Amazon S3,Emr,我试图使用S3DistCp来解决Hadoop中的小文件问题。它正在工作,但是输出有点烦人。我要处理的文件路径如下所示: s3://test-bucket/test/0000eb6e-4460-4b99-b93a-469d20543bf3/201402.csv 该文件夹中可以有多个文件。我想按文件夹名称分组,因此在s3distcp中使用以下group by参数: --groupBy '.*(........-.........-....-............).*' 它确实会对文件进行分组

我试图使用
S3DistCp
来解决Hadoop中的小文件问题。它正在工作,但是输出有点烦人。我要处理的文件路径如下所示:

s3://test-bucket/test/0000eb6e-4460-4b99-b93a-469d20543bf3/201402.csv
该文件夹中可以有多个文件。我想按文件夹名称分组,因此在s3distcp中使用以下group by参数:

--groupBy '.*(........-.........-....-............).*'
它确实会对文件进行分组,但仍然会产生多个输出文件夹,每个文件夹中有一个文件。有没有办法将分组的文件输出到一个文件夹中,而不是多个文件夹中


谢谢

我想你可以试试这个:
--groupBy“*/(…-…-…-…-…)/.*”

在您的示例中,您应该使用如下内容:
--src“s3://test bucket/test/”


这样,您将拥有多个文件夹,这些文件夹中的所有文件将合并在一起。

从2015年11月20日起,这是S3DistCp的行为。它将基于源目录创建多个目录。它不会跨目录合并

你弄明白了吗?我也有同样的问题。@Binal Patel:如果你发布由s3distCp生成的日志,我将能够更好地帮助你。我正在尝试解决类似的问题,但无法实现。