1

以下のスクリプトを実行して、24k レコードのファイルをロードしようとしています。Spark UI で単一のロードに対して 2 つのジョブが表示される理由はありますか?

コード


from pyspark.sql import SparkSession

spark = SparkSession\
    .builder\
    .appName("DM")\
    .getOrCreate()


trades_df = spark.read.format("csv")\
    .option("header", "true")\
    .option("inferSchema", "true")\
    .load("s3://bucket/source.csv") 

trades_df.rdd.numPartitions() は 1 です

Spark UI イメージ

4

1 に答える 1

0

これは、inferSchema を有効にしてから、spark が csv ファイルを 2 回読み取るためです。

ここdef csv(csvDataset: Dataset[String]): DataFrameで、spark の github リポジトリの関数に関するコメントをお読みください。

于 2021-08-05T05:55:14.043 に答える