AWSGlue4.0中同一作业内的Python多进程被挂起。
创始人
2024-09-25 14:31:50
0

在 AWS Glue 4.0 中,由于限制和配置问题,同一作业内的 Python 多进程可能被挂起。为了解决此问题,可以将多进程的代码移动到不同的 Python 模块中,并使用 GlueContext 来协调它们的工作。具体解决方法如下:

  1. 将多进程的代码移动到一个单独的 Python 模块中。假设这个模块的名字为 multiprocess_module.py

  2. 在 AWS Glue 4.0 作业的脚本中导入这个新的模块,并创建一个 multiprocessing.Pool 对象,用于启动进程池。

import multiprocessing
from multiprocess_module import your_multiprocess_function

# ...

def main():
    # ...
    
    with multiprocessing.Pool(processes=4) as pool:
        pool.map(your_multiprocess_function, your_input_data)

    # ...
  1. 在你的多进程代码中,使用 glueContext 而不是 Python 的 multiprocessing.Queue 来发送和接收数据。
from awsglue.context import GlueContext

glueContext = GlueContext(SparkContext.getOrCreate())

def your_multiprocess_function(input_data):
    # ...
    
    output_data = do_something_with_input_data(input_data)
    
    # Send the output back to the main process using glueContext. Instead of "queue.put(output_data)"
    glueContext.write_dynamic_frame.from_options(frame=output_data, connection_type="s3", connection_options={"path": "s3://your/result/path"})

这种方法可以让多进程代码在 AWS Glue 4.0 中正常工作,而不会发生挂起的情况。同时也确保了多进程之间的数据传输正常进行。

相关内容

热门资讯

新手必备!微信小程序边锋干橙眼... 新手必备!微信小程序边锋干橙眼辅助器,蜀山四川辅助脚本,介绍教程(有挂存在)-哔哩哔哩;1、不需要A...
透视软件!山西扣点免费辅助,w... 透视软件!山西扣点免费辅助,wepoker辅助器是真的吗,细节方法(真是有挂)-哔哩哔哩;wepok...
透视游戏!微信小程序微乐辅助器... 透视游戏!微信小程序微乐辅助器,新卡农辅助软件,黑科技教程(有挂透视)-哔哩哔哩;AI辅助机器人普及...
解密关于!情怀郴州字牌辅助,微... 解密关于!情怀郴州字牌辅助,微乐陕西小程序破解版下载,辅助教程(有挂讲解)-哔哩哔哩;超受欢迎的微乐...
每日必备!竹间茶馆辅助码,新蜜... 每日必备!竹间茶馆辅助码,新蜜瓜大厅控制器,新2026版(有挂存在)-哔哩哔哩;超受欢迎的新蜜瓜大厅...
关于!天天卡五星辅助官网入口,... 关于!天天卡五星辅助官网入口,途游大作战辅助,玩家教你(今日头条)-哔哩哔哩;天天卡五星辅助官网入口...
避坑细节!微乐游戏辅助脚本安装... 避坑细节!微乐游戏辅助脚本安装,新上游拼十辅助,透视教程(有挂攻略)-哔哩哔哩;最新版2026是一款...
透视能赢!广东雀神智能免费插件... 透视能赢!广东雀神智能免费插件安装包,新全游辅助器,科技教程(详细教程)-哔哩哔哩;1、让任何用户在...
透视黑科技!宁夏划水麻将辅助器... 透视黑科技!宁夏划水麻将辅助器,丰城呱呱辅助器,规律教程(有挂存在)-哔哩哔哩;相信小伙伴都知道这个...
科技介绍!广西老友玩辅助,神兽... 科技介绍!广西老友玩辅助,神兽互娱辅助免费,解密教程(的确有挂)-哔哩哔哩;神兽互娱辅助免费最新软件...