我想在 Spark 会话中使用一些 Maven 存储库 JAR 文件,因此我使用“spark.jars.packages”创建会话,它将自动下载 JAR。这没有按预期工作,因为我正确配置了会话配置(('spark.jars.packages', 'net.snowflake:snowflake-jdbc:3.13.6,net.snowflake:spark-snowflake_2.12:2.9. 0-spark_3.1'), ) 但仍然出现错误“无法找到数据源:net.snowflake.spark.snowflake。请在以下位置查找包 https://spark.apache.org/third-party-projects.html”如果我手动上传 JAR 就可以解决。
对此有什么想法吗? 谢谢
以下代码对我有用。将此代码复制到脚本中并重新运行。大多数问题是 Maven 坐标未正确提供。
示例代码:
from pyspark import SQLContext
from pyspark.sql.functions import *
import pyspark.sql.functions as F
packages_so = 'net.snowflake:snowflake-jdbc:3.13.6,net.snowflake:spark-snowflake_2.12:2.9.0-spark_3.1'
spark = SparkSession \
.builder \
.config("spark.jars.packages", packages_so) \
.getOrCreate()
sc = spark.sparkContext
sqlContext = SQLContext(sc)