開始使用免費開始

以 Parquet 格式儲存 DataFrame

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

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

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

本練習屬於課程

使用 PySpark 清理資料

檢視課程

練習說明

  • 檢視 df1df2 的列數。
  • 使用 union 方法將 df1df2 合併成名為 df3 的新 DataFrame。
  • df3 儲存為名為 AA_DFW_ALL.parquetparquet 檔。
  • 讀取 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())
編輯並執行程式碼