繁体   English   中英

使用AWS EMR进行文件处理

[英]File processing using AWS EMR

对于我正在研究的这个问题,我需要建筑建议。 我在gzip文件夹中每隔15分钟就有一个日志文件。 其中每个都有大约100,000个要处理的文件。 我有一个python代码,对每个文件执行相同的处理。 没有地图缩减代码。 只是我们正在重新安排该文件夹中的数据。

我想使用Hadoop的并行处理能力来更快地处理这些文件。 所以,我的问题是,我是否总是要写一个map / reduce代码来使用hadoop的并行处理能力,或者有一种方法可以在EMR实例上运行我当前的Python代码并并行处理这些文件?

谢谢你的帮助,Amey

我可以运行我当前的Python代码吗?

也许。

看看Hadoop Streaming。

http://hadoop.apache.org/docs/r2.5.1/hadoop-mapreduce-client/hadoop-mapreduce-client-core/HadoopStreaming.html

您可以使用Hadoop Streaming执行“仅映射”作业。 将以下内容添加到启动作业的hadoop命令中:

 -D mapred.reduce.tasks=0

我是否总是必须使用MapReduce?

没有。

MapReduce是一个在Hadoop之上运行的框架。 即使您使用它,也可以在没有减速器的情况下配置作业。 这将基本上在每个输入上运行地图代码并输出任何地图任务输出。

您还可以在YARN之上本地编写应用程序。 我对此没有多少经验,所以我会把你推荐给文档。 它看起来像一个相当沉重,以Java为中心的过程。

http://hadoop.apache.org/docs/r2.3.0/hadoop-yarn/hadoop-yarn-site/WritingYarnApplications.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM