以 Parquet 格式保存 DataFrame
在使用 Spark 时,您常常从 CSV、JSON 或其他数据源开始。这样加载数据很灵活,但对 Spark 来说并不是最优格式。Parquet 是一种列式数据存储格式,支持 Spark 执行谓词下推(predicate pushdown)。也就是说,Spark 只处理完成您定义的操作所需的数据,而不是读取整个数据集。这让 Spark 访问数据更灵活,并且在大型数据集上通常能显著提升性能。
在本练习中,您将练习创建一个新的 Parquet 文件,并从中处理一些数据。
spark 对象以及 DataFrame df1 和 df2 已为您准备好。
本练习是课程的一部分
使用 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())