错误“org.apache.spark.SparkException:找不到目录'spark_catalog'的目录插件类:org.apache.spark.sql.delta.catalog.DeltaCatalog”

问题描述 投票:0回答:1

问题描述:

尝试执行下面的代码时遇到以下错误。编写代码的目的是将 csv 文件读入数据帧,然后创建增量表。

Py4JJavaError:调用 o95.csv 时发生错误。 :org.apache.spark.SparkException:找不到目录“spark_catalog”的目录插件类:org.apache.spark.sql.delta.catalog.DeltaCatalog

Jupyter 笔记本、Spark(3.3.3)、Java(17.0.8)、Python 3.10.13

示例代码:

import findspark

findspark.init()
findspark.find()

from pyspark.sql import SparkSession
from pyspark.sql.types import *
from pyspark.sql.functions import *

spark = (SparkSession.builder.appName("DeltaLakeApp").master("local[4]")
    .config("spark.dynamicAllocation.enabled","false")
    #add package for delta lake
    .config("spark.jars.package","io.delta:delta-core_2.12:2.4.0")
    #add settings to use delta lake with Spark session
    .config("spark.sql.extensions", "io.delta.sql.DeltaSparkSessionExtension")
    .config("spark.sql.catalog.spark_catalog","org.apache.spark.sql.delta.catalog.DeltaCatalog")         
    .getOrCreate()
    )
    sc = spark.sparkContext`

    taxiDF = (spark.read.option("hearder", "true").option("inferSchema", "true")
    .csv("C:\DataFiles\Raw\Taxis_01.csv"))

尝试加载下面的软件包但从未安装但失败。

spark-submit --packages org.apache.spark:spark-sql-kafka-0-10_2.12:3.3.3,io.delta:delta-core_2.12:2.4.0 kafka_to_delta.py

pyspark
1个回答
0
投票

你需要将 delta-core_2.12:2.4.0.jar 和 delta-storage_2.4.0.jar 添加到你的 Spark\jars 文件夹中..你可以从 MavenRepository 下载 jars

© www.soinside.com 2019 - 2024. All rights reserved.