小编fre*_*bhi的帖子

一个 Spark 应用程序何时可以创建多个作业和阶段?

我使用 Databricks 社区版。

我的 Spark 程序创建了多个作业。为什么?我认为应该有一份工作,并且可以有多个阶段。

我的理解是,当spark程序提交时,它会创建一个JOB,多个阶段(通常每个shuffle操作都会创建一个新阶段)。下面是正在使用的代码,其中我有 2 个可能的洗牌操作(reduceByKey / SortByKey)和一个操作(Take(5))。

rdd1 = sc.textFile('/databricks-datasets/flights')
rdd2 = rdd1.flatMap(lambda x: x.split(",")).map(lambda x: (x,1)).reduceByKey(lambda x,y:x+y,8).sortByKey(ascending=False).take(5)
Run Code Online (Sandbox Code Playgroud)

Spark作业执行截图

再观察一下,工作似乎有了新的阶段(其中一些被跳过),是什么导致了新的工作创造。

apache-spark pyspark

6
推荐指数
1
解决办法
1757
查看次数

标签 统计

apache-spark ×1

pyspark ×1