spark运行的是Python3.7.6,但spark上下文显示的是Python2.7如何使用spark上下文修复?

zsohkypk  于 2021-05-27  发布在  Spark
关注(0)|答案(1)|浏览(546)

我已经安装了sagemaker使用 sc.install_pypi_package("sagemaker==2.5.1") . 但是,当我尝试导入sagemaker时,它指向python2.7,出现了以下错误。

我检查了运行pyspark的emr主节点,那里的版本是运行python3.7.6的pyspark2.4.5。

所以我尝试升级我的spark上下文的python版本,但是它说
“valueerror:已为当前spark上下文安装程序包!”

所以我想让我试着从spark上下文中卸载python2.7,但这并不能让我这么做
“未在/usr/lib64/python2.7/lib-dynload,outside environment/tmp/1598628537004-0卸载python”

我做错什么了?我相信sagemaker导入失败是因为spark上下文引用python2.7。我该怎么解决这个问题?

ao218c7q

ao218c7q1#

引用此链接并将spark context的python版本更新为python3。这解决了以下问题:

%%configure -f
{ "conf":{
          "spark.pyspark.python": "python3",
          "spark.pyspark.virtualenv.enabled": "true",
          "spark.pyspark.virtualenv.type":"native",
          "spark.pyspark.virtualenv.bin.path":"/usr/bin/virtualenv"
         }
}

相关问题