python - 使用 Hadoop 流式处理线程

标签 python multithreading hadoop hadoop-streaming amazon-emr

我正在使用 Hadoop 流来编写基于 python 的 HTML 抓取器。我发现运行单线程 python 脚本很慢。我想将其修改为多线程版本。有谁知道将映射器中的线程数设置为一个好的数字。我不确定集群中每个节点的规范,但我认为它至少支持两个线程。

最佳答案

我尝试在 python 中使用线程,全局解释器锁存在问题。移植代码以使用多处理模块,内部 hadoop 分配与集群中的内核一样多的映射器,因此如果您需要加速,多处理不是要走的路。如果执行得当,多线程可能会带来一些加速

关于python - 使用 Hadoop 流式处理线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18087121/

相关文章:

python - 这个 Pandas 警告从何而来?

python - 在 Visual Studio Code 中运行外部程序时出现 "Unable to find thread for evaluation."

java - Java 中静态同步方法到底是如何工作的?

jdbc - 汇集 Hive JDBC 连接的最佳实践是什么

hadoop - Pig/Hive中如何根据关键子集进行聚合?

python - 使用 VGG 进行数据生成和损失计算时,元素不属于图形

python - 如何使用 aws_cdk 将资源参数从一个堆栈传递到另一个堆栈

python - 无法在 tensorflow 中实现可重复性

java - Wait() 和 NotifyAll()

hadoop - 数据节点中的文件传输 - hadoop