小编Pan*_*nos的帖子

如何手动将 spark 2.2 与 hadoop 3.1 集成?

我想使用 Spark 2.2 版和 Hadoop 最新版 3.1。我可以手动集成 Spark 和 Hadoop 吗?

我已经在 Hadoop 2.6 或更高版本中安装了 Spark 2.2,但我想更新 Hadoop。是否可以使用 Hadoop 文件夹在 Spark 中找到 Hadoop 目录?

我已经下载了没有 hadoop 的 Spark 2.2 和 hadoop 3.1.0。两者都在运行,但是当我使用 hadoop_home 配置 spark.env.sh.template 文件时,它不起作用。任何人都可以分享正确的配置吗?

谢谢

apache-spark hadoop3

6
推荐指数
0
解决办法
795
查看次数

Apache Spark - shuffle 写入的数据多于输入数据的大小

我在本地模式下使用 Spark 2.1,我正在运行这个简单的应用程序。

val N = 10 << 20

sparkSession.conf.set("spark.sql.shuffle.partitions", "5")
sparkSession.conf.set("spark.sql.autoBroadcastJoinThreshold", (N + 1).toString)
sparkSession.conf.set("spark.sql.join.preferSortMergeJoin", "false")

val df1 = sparkSession.range(N).selectExpr(s"id as k1")
val df2 = sparkSession.range(N / 5).selectExpr(s"id * 3 as k2")

df1.join(df2, col("k1") === col("k2")).count()
Run Code Online (Sandbox Code Playgroud)

在这里,范围(N)创建了一个Long数据集(具有唯一值),所以我假设的大小

  • df1 = N * 8 字节 ~ 80MB
  • df2 = N / 5 * 8 字节 ~ 16MB

好的,现在让我们以 df1 为例。 df1 由 8 个分区5 个 shuffledRDDs 组成,所以我假设

  • 映射器数量 (M) = 8
  • 减速器数量 (R) = 5

由于分区数较低,Spark …

shuffle apache-spark

4
推荐指数
1
解决办法
1585
查看次数

标签 统计

apache-spark ×2

hadoop3 ×1

shuffle ×1