java - 尝试为 PySpark 导入 Java 8 JDK,但 PySpark 仍然不允许我开始会话
问题描述
好的,在我继续之前,这是我的基本信息:
MacBook Pro:OS X 10.14.2
Python 版本:3.6.7
Java JDK:V8.u201
我正在尝试在我的计算机上安装 Apache Spark Python API (PySpark)。我做了一个康达安装:conda install -c conda-forge pyspark
似乎模块本身已正确下载,因为我可以导入它并从中调用方法。但是,打开交互式 shellmyuser$ pyspark
会出现错误:
No Java runtime present, requesting install.
好没问题。我去 Java 的下载页面获取了当前的 JDK,为了让它运行,然后在 Safari 上下载了它。Chrome 显然不支持某些插件才能正常工作(尽管最初我确实尝试使用 Chrome 安装它)。仍然没有工作。
好的,我刚决定开始尝试使用它。
from pyspark.sql import SparkSession
它似乎正确地导入了模块,因为它自动识别 SparkSession 的方法。然而,
spark = SparkSession.builder.getOrCreate()
给出了错误:
Exception: Java gateway process exited before sending its port number
重新安装 JDK 似乎无法解决问题,现在我遇到了一个似乎无法正常工作的模块,因为我没有看到 Java 的问题。关于如何解决这个问题的任何想法?任何和所有的帮助表示赞赏。
解决方案
spark 2.4 出现了这个问题。请尝试火花2.3。
推荐阅读
- php - Amazon SES 预期响应代码 250,但收到代码“550”,消息“550 5.7.1 Relaying denied”
- java - 查找两个大文件的差异
- javascript - 带有 Vue 3 和 Typescript 的 Flickity API
- java - JPA 生成的列名没有下划线(列名不匹配)
- flutter - 未处理的异常:'package:flutter/src/widgets/basic.dart':断言失败:第 7419 行 pos 15:'child != null':不正确
- firebase - 访问数据时 _buildStoryPage( Map
data,bool active) 其显示错误图 不是ty'地图 ' - javascript - ZipObject.async 函数在浏览器中不起作用
- javascript - 为什么状态在foreach中更新时不会将所有数组状态的数据保留在钩子中?
- sql - 如何比较 2 个不同数据库中的 2 个表并仅更新更改的值?
- javascript - 创建一个 isAllX 以确定整个字符串是由小写 x 还是大写 X 组成。如果是则返回 true,否则返回 false。- Javascript