Man*_*Das 7 python apache-spark pyspark
Bill在《Spark权威指南》一书中说,阅读是一种转变,而且是一种狭义的转变,
现在,如果我运行下面的 Spark 代码并尝试查看 Spark UI,我会看到创建的作业
df = spark.read.csv("path/to/file")
现在根据我的理解,工作是一个被称为的动作。另外,如果我在读取 CSV 时尝试输入一些选项,我会在 Spark UI 中看到另外一项作业,因此,例如,如果我们运行以下代码,则 Spark UI 中会有 2 个作业
df = spark.read.option("inferSchema", "true").csv("path/to/file")
所以我的问题是,如果spark.read这是一种转变,为什么它会创造就业机会?
akh*_*lly 37
根据您提供的参数,转换(尤其是读取操作)可以以两种方式运行。
如果是 read.csv()
您可以在 Spark UI 中看到下面的 WholeStageCodeGen,如下所示:
您还可以看到如下的物理计划:
对于第二个作业,Spark UI 中执行器的聚合指标将如下所示(突出显示读取的记录数):
