使用emr连接数千个文件

7lrncoxx  于 2021-06-03  发布在  Hadoop
关注(0)|答案(0)|浏览(248)

我目前有一个进程,从awss3读取文件并使用emr连接它们。输入文件的格式如下:1个标题行和1个数据行。字段以逗号分隔并用双引号括起来。
例子:
“header-field1”、“header-field2”、“header-field3”,。。。
“数据域1”、“数据域2”、“数据域3”,。。。
文件大小在90到200字节之间变化。
输出文件的格式如下:
“header-field1”、“header-field2”、“header-field3”,。。。
“file1-data-field1”、“file1-data-field2”、“file1-data-field3”,。。。
“file2-data-field1”、“file2-data-field2”、“file2-data-field3”,。。。
“file3-data-field1”、“file3-data-field2”、“file3-data-field3”,。。。
....
我当前的方法使用一个默认Map器和一个reducer来连接所有数据行,并在最终输出文件的顶部预先添加一个头行。因为我想在输出final中有一个标题行,所以我被迫在emr作业中只使用一个reducer。我觉得,这大大增加了运行时间。
早期的测试运行良好,有几十个文件。但是,我正在尝试扩展这个应用程序以运行数千个文件,最终目标是连接100万个文件。
我当前处理1000个文件的过程在30多分钟后仍在运行,这太长了。您对如何改进应用程序以显著提高整体性能有何建议?
谢谢您。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题