没有名为 'delta.tables' 的模块

No Module Named 'delta.tables'

我收到以下代码的以下错误,请帮助:

   from delta.tables import *
   ModuleNotFoundError: No module named 'delta.tables'
   INFO SparkContext: Invoking stop() from shutdown hook

代码如下: '''

   from pyspark.sql import *

   if __name__ == "__main__":
     spark = SparkSession \
        .builder \
        .appName("DeltaLake") \
        .config("spark.jars", "delta-core_2.12-0.7.0") \
        .config("spark.sql.extensions", "io.delta.sql.DeltaSparkSessionExtension") \
        .config("spark.sql.catalog.spark_catalog", "org.apache.spark.sql.delta.catalog.DeltaCatalog") \
        .getOrCreate()

    from delta.tables import *

    data = spark.range(0, 5)

   data.printSchema()

'''

在线搜索建议将 scala 版本验证为 delta 核心 jar 版本。这是 scala 和 Jar 版本

"delta-core_2.12-0.7.0"

“使用 Scala 版本 2.12.10,Java HotSpot(TM) 64 位服务器 VM,1.8。0_221”

根据增量包 documentation,有一个名为 tables 的 python 文件。 您应该克隆存储库并将 python/delta 下的 delta 文件夹复制到您的站点包路径(即 ..\python37\Lib\site-packages)。然后重新启动 python 并且您的代码运行时没有错误。

我正在使用 Python3.5.3, pyspark==3.0.1,

spark.jarsspark.jars.packages有区别。由于您正在关注快速入门,请尝试替换

.config("spark.jars", "delta-core_2.12-0.7.0")

.config("spark.jars.packages", "io.delta:delta-core_2.12:0.7.0")

或者你也可以

pip install delta-spark

delta-spark pip page