gpt4 book ai didi

python - 在 Elastic MapReduce 的分布式缓存中使用文件的问题

转载 作者:行者123 更新时间:2023-12-02 21:46:44 26 4
gpt4 key购买 nike

我正在尝试在 AWS Elastic MapReduce 作业中使用我的 Python 映射器脚本中的外部库。
但是,我的脚本似乎无法在缓存中找到模块。我将文件归档到一个名为 helper_classes.tar 的压缩包中并将压缩包上传到 Amazon S3 存储桶。在控制台上创建 MapReduce 作业时,我将参数指定为:

cacheArchive s3://folder1/folder2/helper_classes.tar#helper_classes

在我的 Python 映射器脚本的开头,我包含以下代码来导入库:
import sys
sys.path.append('./helper_classes')
import geoip.database

当我运行 MapReduce 作业时,它失败并显示 ImportError: No module named geoip.database. ( geoiphelper_classes.tar 顶层的文件夹,数据库是我要导入的模块。)
有什么想法我可能做错了吗?

最佳答案

这个话题可能已经晚了。

原因是模块 geoip.database 未安装在所有 Hadoop 节点上。
您可以尝试不要在 map/reduce 代码中使用不常见的导入,
或尝试在所有 Hadoop 节点上安装所需的模块。

关于python - 在 Elastic MapReduce 的分布式缓存中使用文件的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24668888/

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