据我所知,到目前为止,每当在数据集/数据帧上调用动作时,都会提交作业。这项工作可以进一步划分为阶段和任务,据我了解,如何找出阶段和任务的数量。下面给出的是我的小代码
val spark = SparkSession.builder().master("local").getOrCreate()
val df = spark.read.json("/Users/vipulrajan/Downloads/demoStuff/data/rows/*.json").select("user_id", "os", "datetime", "response_time_ms")
df.show()
df.groupBy("user_id").count().show
据我所知,我在阅读时应该在第4行提交了一份工作。一个在第一个节目中,一个在第二个节目中。前两个假设是正确的,但第二个显示它提交了5个工作。我不明白为什么。下面是我的用户界面的屏幕截图
如您所见,作业0用于读取json,作业1用于第一个节目,而5个作业用于第二个节目。谁能帮助我了解spark UI中的这项工作是什么?
答案 0 :(得分:0)
添加类似
df.groupBy("user_id").count().explain()
看看,最后一个show()
的实际含义是什么。