apache-spark - 在没有互联网访问的服务器上安装 Delta Lake 库

标签 apache-spark installation pyspark delta-lake

我有一台无法访问互联网的服务器,我想在其中使用 Delta Lake。 所以spark session 中正常使用Delta Lake是不行的。 从 pyspark.sql 导入 SparkSession

spark = SparkSession \
   .builder \
   .appName("...") \
   .master("...") \
   .config("spark.sql.extensions", "io.delta.sql.DeltaSparkSessionExtension") \
   .config("spark.sql.catalog.spark_catalog", "org.apache.spark.sql.delta.catalog.DeltaCatalog") \
   .getOrCreate()

我应该在哪里复制 Delta-lake github 存储库? 如何将 Spark session 指向正确的库

最佳答案

感谢@blackbishop,我找到了答案how-to-add-third-party-java-jar-files-for-use-in-pyspark

对于 Delta Lake,下载 jar 文件:delta-core_2_12_0.8.0.jar

您可以在运行时使用 Spark 配置添加 jar 文件的路径。

这是一个例子:

    conf = SparkConf().set("spark.jars", "/path-to-jar/spark-streaming-kafka-0-8-assembly_2.11-2.2.1.jar")

sc = SparkContext( conf=conf)

请参阅document了解更多信息。

对于 Jupyter 笔记本:

spark = (SparkSession
    .builder
    .appName("Spark_Test")
    .master('yarn-client')
    .config("spark.sql.warehouse.dir", "/user/hive/warehouse")
    .config("spark.executor.cores", "4")
    .config("spark.executor.instances", "2")
    .config("spark.sql.shuffle.partitions","8")
    .enableHiveSupport()
    .getOrCreate())

# Do this 

spark.sparkContext.addPyFile("/path/to/jar/xxxx.jar")

链接到我找到它的来源:https://github.com/graphframes/graphframes/issues/104

关于apache-spark - 在没有互联网访问的服务器上安装 Delta Lake 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66600286/

相关文章:

jakarta-ee - 安装 Java EE 6

python - Windows 上的 Xgboost 安装错误 .OSError : [WinError 127] The specified procedure could not be found

python - 如何在 jupyter 笔记本中运行 Spark-Submit?

python - 在 pySpark 中使用 paramGrid 从 CrossValidator 中提取结果

java - 如何在特定用例的reduceByKeyAndWindow()中实现invFunc

build - 如何从源代码构建 Chromium 的安装可执行文件

python - 合并月份和年份列以创建日期列

pyspark - 如何使用具有 Spark 数据流结构的非基于时间的窗口?

pandas - Spark DataFrame是否等效于Pandas Dataframe `.iloc()`方法?

hadoop - 使用Spark转换文件压缩格式