<p>这听起来像是Hadoop上MapReduce的一个用例。在</p>
<p>Hadoop Map/Reduce是一个软件框架,它可以方便地编写应用程序,以可靠、容错的方式在大型集群(数千个节点)上并行处理大量数据(数TB的数据集)。<em>在您的情况下,这将是一个较小的集群。</em></p>
<p>Map/Reduce作业通常将输入数据集拆分为独立的块,这些块由Map任务以完全并行的方式处理。在</p>
<p>你提到过</p>
<blockquote>
<p><em>i've thought of breaking the app up in
a manner that would allow the master
to essentially pass packets to the
client boxes, in a way to allow each
client/function to be run directly
from the master.</em></p>
</blockquote>
<p>据我所知,你希望一台主机(box)充当主机,并拥有运行其他功能的客户机。例如,可以运行main()函数并解析其上的初始URL。好的一点是,您可以在不同的机器上并行处理这些url的任务,因为它们看起来彼此独立。在</p>
<p>因为level4依赖于level3,level3依赖于level2。。依此类推,您可以通过管道将每个输出传递到下一个,而不是从每个输出中调用一个。在</p>
<p>在下面的教程中,我将推荐如何做这件事</p>
<ul>
<li><p><a href="http://hadoop.apache.org/common/docs/current/mapred_tutorial.html" rel="nofollow noreferrer">The Hadoop tutorial</a>是对什么是map reduce及其工作原理的简单介绍和概述。</p></li>
<li><p><a href="http://www.michael-noll.com/blog/2007/09/21/tutorial-writing-an-hadoop-mapreduce-program-in-python/" rel="nofollow noreferrer">Michael Noll's tutorial</a>介绍如何在Python之上使用Hadoop(Mapper和Reducer的基本概念)</p></li>
<li><p>最后,<a href="http://wiki.github.com/klbostee/dumbo/short-tutorial" rel="nofollow noreferrer">a tutorial for a framework called Dumbo</a>,由姓氏.fm,它自动化并基于Michael Noll的基本示例构建,以便在生产系统中使用。</p></li>
</ul>
<p>希望这有帮助。在</p>