gpt4 book ai didi

python - mrjob:无效的引导操作路径,必须是 Amazon S3 中的一个位置

转载 作者:太空狗 更新时间:2023-10-29 17:50:35 27 4
gpt4 key购买 nike

我在 Windows 7 上。我安装了 mrjob,当我运行 example word_count file 时从网站上看,它在本地机器上运行良好。但是,我在尝试在 Amazon EMR 上运行它时遇到错误。我什至测试了仅使用 boto 连接到 amazon s3 并且它有效。

mrjob.conf 文件

runners:
emr:
aws_access_key_id: xxxxxxxxxxxxx
aws_region: us-east-1
aws_secret_access_key: xxxxxxxx
ec2_key_pair: bzy
ec2_key_pair_file: C:\aa.pem
ec2_instance_type: m1.small
num_ec2_instances: 3
s3_log_uri: s3://myunique/
s3_scratch_uri: s3://myunique/

在我的 cmd 中运行以下命令

python word_count.py -c mrjob.conf -r emr mytext.txt

产生

enter image description here

根据建议这是一个windows路径相关的问题,我仔细检查了源代码中的parse.py,它似乎有处理window文件类型的相关检查

# Used to check if the candidate candidate uri is actually a local windows path.
WINPATH_RE = re.compile(r"^[aA-zZ]:\\")


def is_windows_path(uri):
"""Return True if *uri* is a windows path."""
if WINPATH_RE.match(uri):
return True
else:
return False


def is_uri(uri):
"""Return True if *uri* is any sort of URI."""
if is_windows_path(uri):
return False

return bool(urlparse(uri).scheme)

我不明白的是,即使在更新代码后我仍然收到错误,我不确定如何继续处理这个问题。

最佳答案

您遇到的问题是由于 Windows 文件系统在其路径中使用了转义符\(反斜杠)。只需将其加倍,您就不会再有任何问题。

将您的 mrjob.conf 文件更改为:

runners:
emr:
aws_access_key_id: xxxxxxxxxxxxx
aws_region: us-east-1
aws_secret_access_key: xxxxxxxx
ec2_key_pair: bzy
ec2_key_pair_file: C:\\aa.pem
ec2_instance_type: m1.small
num_ec2_instances: 3
s3_log_uri: s3://myunique/
s3_scratch_uri: s3://myunique/

欲了解更多信息,请访问:http://yaml.org/spec/1.2/spec.html#id2770814

关于python - mrjob:无效的引导操作路径,必须是 Amazon S3 中的一个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23213158/

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