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 中正常工作,而不会发生挂起的情况。同时也确保了多进程之间的数据传输正常进行。

相关内容

热门资讯

5分钟透视!广西友乐软件辅助(... 5分钟透视!广西友乐软件辅助(辅助挂)一贯是有挂(必备教程开挂辅助插件)>>您好:软件加136704...
第六分钟讲解!花花生活圈私人局... 您好:花花生活圈私人局辅助器这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用...
6分钟详情!边锋老友填大坑辅助... 边锋老友填大坑辅助是一款专注玩家量身打造的游戏记牌类型软件,在边锋老友填大坑辅助这款游戏中我们可以记...
第九分钟发现!随意玩房卡代理有... 第九分钟发现!随意玩房卡代理有挂吗(辅助挂)果然有挂(必胜教程开挂辅助下载)【无需打开直接搜索加薇1...
四分钟了解!途游四川bug(辅... 途游四川bug 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: 1、...
第8分钟明白!情怀透明器看手机... 第8分钟明白!情怀透明器看手机纸牌(辅助挂)其实真的是有挂(AI教程开挂辅助软件);超受欢迎的情怀透...
第六分钟透视!微乐小程序游戏破... 第六分钟透视!微乐小程序游戏破解器(辅助挂)原来是有挂(普及教程开挂辅助神器);无需打开直接搜索薇:...
5分钟发现!广西友乐解码器下载... 5分钟发现!广西友乐解码器下载安装(辅助挂)果然是有挂(介绍教程开挂辅助安装) 了解更多开挂安装加(...
第六分钟科普!湖北休闲辅助(辅... 第六分钟科普!湖北休闲辅助(辅助挂)一直确实有挂(安装教程开挂辅助神器)1、下载安装好湖北休闲辅助,...
第二分钟辅助!至余干辅助(辅助... 第二分钟辅助!至余干辅助(辅助挂)其实确实有挂(教你攻略开挂辅助平台) >>您好:软件加薇13670...