gpt4 book ai didi

python - Apache spark 是如何处理 python 多线程问题的?

转载 作者:太空狗 更新时间:2023-10-29 18:07:37 27 4
gpt4 key购买 nike

根据 python's GIL我们不能在 CPU 绑定(bind)进程中使用线程,所以我的问题是 Apache Spark 如何在多核环境中使用 python?

最佳答案

多线程 python 问题与 Apache Spark 内部结构分开。 Spark 上的并行性在 JVM 内部处理。

enter image description here

原因是在 Python 驱动程序中,SparkContext 使用 Py4J 启动 JVM 并创建 JavaSparkContext。

Py4J 仅在驱动程序上用于 Python 和 Java SparkContext 对象之间的本地通信;大数据传输通过不同的机制执行。

Python 中的 RDD 转换映射到 Java 中 PythonRDD 对象的转换。在远程 worker 机器上,PythonRDD 对象启动 Python 子进程并使用管道与它们通信,发送用户代码和要处理的数据。

PS:我不确定这是否真的完全回答了你的问题。

关于python - Apache spark 是如何处理 python 多线程问题的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38036528/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com