python - 初始化SparkContext时jvm错误中不存在pyspark错误
问题描述
我在 emr 上使用 spark 并编写 pyspark 脚本,但在尝试
from pyspark import SparkContext
sc = SparkContext()
这是错误
File "pyex.py", line 5, in <module>
sc = SparkContext() File "/usr/local/lib/python3.4/site-packages/pyspark/context.py", line 118, in __init__
conf, jsc, profiler_cls) File "/usr/local/lib/python3.4/site-packages/pyspark/context.py", line 195, in _do_init
self._encryption_enabled = self._jvm.PythonUtils.getEncryptionEnabled(self._jsc) File "/usr/local/lib/python3.4/site-packages/py4j/java_gateway.py", line 1487, in __getattr__
"{0}.{1} does not exist in the JVM".format(self._fqn, name)) py4j.protocol.Py4JError: org.apache.spark.api.python.PythonUtils.getEncryptionEnabled does not exist in the JVM
我发现这个答案说我需要导入 sparkcontext 但这也不起作用。
解决方案
PySpark 最近发布了 2.4.0,但是还没有与这个新版本一致的 spark 稳定版本。尝试降级到 pyspark 2.3.2,这为我修复了
编辑:为了更清楚,您的 PySpark 版本需要与下载的 Apache Spark 版本相同,否则您可能会遇到兼容性问题
使用检查 pyspark 的版本
点冻结
推荐阅读
- laravel - 自定义身份验证的 Passport 查询时间
- c# - 从内联 C# 调用 powershell 进程
- intellij-idea - Autocmd 在 Ideavim 中的 Window Select 上触发
- php - 删除不同的数据mysql和laravel
- java - SearchHits 没有给出确切的文档数量
- angular - Angular 只加载脚本一次
- servicenow - 仅在从特定字段移动时才设置必填字段
- typo3 - TYPO3 8.7 TypoScript 重定向在升级后不起作用
- geospatial - 如何使用 R 中的 Spatstat 将强度转换为点模式中的概率?
- eclipse - 如何在 Eclipse 运行配置中取消设置环境变量?