[英]EMR fails to run python 3.x
我在EMR中添加了一個步驟來運行pyspark作業。 但是我最終得到錯誤
TypeError: makedirs() got an unexpected keyword argument 'exist_ok'
這使我懷疑正在運行EMR默認版本python2.7。 我使用的ami版本是5.25.0,這是相當新的,根據文檔,應該已經安裝了3.6。
#!/usr/bin/env python3.6
我添加了shebang以提供可執行文件。 還有別的嗎?
沒錯 python的系統默認版本是2.7,但也有帶有python3
命令的pythoh3.x。 您可以按照以下文檔進行更改。
如何配置Amazon EMR以使用Python 3.4或3.6運行PySpark作業?
基本上,在正在運行的集群上鍵入以下命令
sudo sed -i -e '$a\export PYSPARK_PYTHON=/usr/bin/python3' /etc/spark/conf/spark-env.sh
或在創建群集時設置配置,例如
[
{
"Classification": "spark-env",
"Configurations": [
{
"Classification": "export",
"Properties": {
"PYSPARK_PYTHON": "/usr/bin/python3"
}
}
]
}
]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.