os.walk()的并行化

时间:2013-03-20 11:22:26

标签: python

我有一个托管在网络存储设备上的大型目录结构,我想使用os.walk进行遍历。系统相当慢,但我认为如果我可以同时查询多个目录(所有具有相同的公共根目录),则可以更快地完成该过程。我不关心输出的顺序是什么,只要最后我解析了所有内容。

我正在考虑重新实现os.walk以将新目录传递给线程工作者池。我宁愿使用别人的代码,如果它已经存在(为什么重新发明轮子?),但是没有遇到任何代码。

当然这是一项常见的任务?以前有没有人遇到这样的事情?也许我错过了一些东西,但这不会导致加速。

如果我在一周左右没有得到答案,毫无疑问我会在这里发布我的尝试。

1 个答案:

答案 0 :(得分:1)

您似乎需要一个分布式作业执行系统。我一直在使用Gearman一段时间并发现它是一个很棒的框架,如果你不想从基本的Thread模块开始,我会推荐它。它支持用Python编写的客户端和工作者,因此可能符合您的需求。但是你可能仍然需要做分工。