pyspark 需要本地安装 Spark 吗?
Do pyspark need a local Spark installation?
我正在尝试使用 spark。尝试创建一个简单的 SQL 数据库连接,同时 运行 在 docker 容器中使用 Spark。
我的笔记本电脑上没有安装 Spark。仅在我的 docker 容器内。
我的笔记本电脑上有以下代码:
spark = SparkSession \
.builder \
.master("spark://localhost:7077") \ # <-- Docker container with master and worker
.appName("sparktest") \
.getOrCreate()
jdbcDF = spark.read.format("jdbc") \
.option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver") \
.option("url", "jdbc:sqlserver://xxx") \
.option("dbtable", "xxx") \
.option("user", "xxx") \
.option("password", "xxx").load()
我无法让它工作。
我从 Java 得到 java.sql.SQLException: No suitable driver
或 ClassNotFoundException
。
我已经将文件移动到容器中,那里似乎一切正常。
我已确保 mssql jar 文件位于驱动程序和执行程序的 SPARK_CLASSPATH 上。
我是否应该在本地安装 Spark 以便在我的 docker 容器中使用 PySpark 对抗远程主机 运行ning?
它似乎在尝试在我的笔记本电脑上找到 SQL 驱动程序?
如果我 运行 从 docker 容器中使用 spark-submit 代码,一切都很好。
我试图避免走 docker 容器中托管的 jupyter 路线,但希望不必在我的 Windows 笔记本电脑上安装 Spark 并将其保存在我的 [=39] =]容器。
我以前遇到过,要找到解决方案,您可以下载 jdbc 驱动程序并通过提供 jdbc 驱动程序路径
手动设置驱动程序配置
from pyspark.context import SparkConf
conf = SparkConf()
conf.set('spark.jars', '/PATH_OF_DRIVER/driver.jar')
conf.set('spark.executor.extraClassPath', '/PATH_OF_DRIVER/driver.jar')
我正在尝试使用 spark。尝试创建一个简单的 SQL 数据库连接,同时 运行 在 docker 容器中使用 Spark。
我的笔记本电脑上没有安装 Spark。仅在我的 docker 容器内。
我的笔记本电脑上有以下代码:
spark = SparkSession \
.builder \
.master("spark://localhost:7077") \ # <-- Docker container with master and worker
.appName("sparktest") \
.getOrCreate()
jdbcDF = spark.read.format("jdbc") \
.option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver") \
.option("url", "jdbc:sqlserver://xxx") \
.option("dbtable", "xxx") \
.option("user", "xxx") \
.option("password", "xxx").load()
我无法让它工作。
我从 Java 得到 java.sql.SQLException: No suitable driver
或 ClassNotFoundException
。
我已经将文件移动到容器中,那里似乎一切正常。
我已确保 mssql jar 文件位于驱动程序和执行程序的 SPARK_CLASSPATH 上。
我是否应该在本地安装 Spark 以便在我的 docker 容器中使用 PySpark 对抗远程主机 运行ning?
它似乎在尝试在我的笔记本电脑上找到 SQL 驱动程序?
如果我 运行 从 docker 容器中使用 spark-submit 代码,一切都很好。
我试图避免走 docker 容器中托管的 jupyter 路线,但希望不必在我的 Windows 笔记本电脑上安装 Spark 并将其保存在我的 [=39] =]容器。
我以前遇到过,要找到解决方案,您可以下载 jdbc 驱动程序并通过提供 jdbc 驱动程序路径
手动设置驱动程序配置from pyspark.context import SparkConf
conf = SparkConf()
conf.set('spark.jars', '/PATH_OF_DRIVER/driver.jar')
conf.set('spark.executor.extraClassPath', '/PATH_OF_DRIVER/driver.jar')