開始使用免費開始

以 Parquet 格式儲存 DataFrame

在使用 Spark 時,你常會從 CSV、JSON,或其他資料來源開始。這在載入各種類型的資料時很有彈性,但對 Spark 來說並不是最佳格式。Parquet 是一種欄式資料儲存格式,讓 Spark 可以使用「述詞下推」(predicate pushdown)。也就是說,Spark 只會處理完成你所定義操作所需的資料,而不是讀取整個資料集。這讓 Spark 在存取資料時更有彈性,而且在大型資料集上通常能大幅提升效能。

在這個練習中,我們要練習建立一個新的 Parquet 檔,然後從中處理一些資料。

spark 物件以及 df1 與 df2 這兩個 DataFrame 都已為你準備好。

本練習屬於課程

使用 PySpark 清理資料

檢視課程

練習說明

  • 檢視 df1 和 df2 的列數。
  • 使用 union 方法將 df1 和 df2 合併成名為 df3 的新 DataFrame。
  • 將 df3 儲存為名為 AA_DFW_ALL.parquet 的 parquet 檔。
  • 讀取 AA_DFW_ALL.parquet 檔並顯示筆數。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# View the row count of df1 and df2
print("df1 Count: %d" % df1.____())
print("df2 Count: %d" % ____.____())

# Combine the DataFrames into one
df3 = df1.union(df2)

# Save the df3 DataFrame in Parquet format
df3.____.____('AA_DFW_ALL.parquet', mode='overwrite')

# Read the Parquet file into a new DataFrame and run a count
print(spark.read.____('AA_DFW_ALL.parquet').count())
編輯並執行程式碼