2011-10-06 65 views
2

我最近创建了一个执行一些自然语言处理任务并在解决我的问题方面工作得很好的python脚本。但花了9个小时。我首先研究了使用hadoop将问题分解成多个步骤,并希望利用通过使用Amazon Web Services获得的可扩展并行处理。Python中的并行处理选项

但是我的一位朋友指出,Hadoop真的需要在磁盘上存储大量数据,因此您需要执行许多简单的操作。在我的情况下,我有一个相对较小的初始数据集(低于100的Mbs),在这个数据集上执行许多复杂的操作,在此过程中占用大量内存并花费很多时间。

我的脚本中可以使用什么框架来利用AWS(或类似服务)上的可伸缩群集?

回答

0

This example演示了如何在单台机器上使用进程来执行类似MapReduce的脚本。其次,如果可以,请尝试缓存中间结果。我为了NLP任务做了这个,并且获得了显着的加速。

0

我的包裹,jug,可能是非常适合您的需求。没有更多的信息,我无法确定代码的外观如何,但是我设计的代码是针对次级hadoop大小的问题。

+0

我给它一个快速阅读 - 更像芹菜壶或更像Hadoop?罐子解决了什么问题他们不解决? – Trindaz

+0

更像芹菜,但它有不同的风味。它的开销比Hadoop少(但不能扩展)。 – luispedro