Сохранение DataFrame в формате Parquet
При работе со Spark вы, как правило, начинаете с CSV, JSON или других источников данных. Это обеспечивает гибкость при загрузке данных различных типов, однако такой формат не является оптимальным для Spark. Формат Parquet — это колоночное хранилище данных, которое позволяет Spark использовать предикатный pushdown. Это означает, что Spark будет обрабатывать только те данные, которые необходимы для выполнения заданных операций, а не считывать весь набор данных целиком. Такой подход даёт Spark больше гибкости при доступе к данным и нередко существенно повышает производительность при работе с большими объёмами данных.
В этом упражнении вы попрактикуетесь в создании нового файла Parquet и обработке данных из него.
Объект spark, а также DataFrames df1 и df2 уже подготовлены для вас.
Это упражнение является частью курса
Очистка данных с помощью PySpark
Инструкции к упражнению
- Просмотрите количество строк в
df1иdf2. - Объедините
df1иdf2в новый DataFrame с именемdf3, используя методunion. - Сохраните
df3в файлparquetс именемAA_DFW_ALL.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())