Постановка проблемы
Я прочитал секционированный CSV-файл в Spark Dataframe.
Для того, чтобы использовать улучшения Delta Tables, которые я пытаюсь просто экспортируйте его как Delta в каталог внутри Azure Data Lake Storage Gen2. Я использую приведенный ниже код в блокноте Databricks:
%scala
df_nyc_taxi.write.partitionBy("year", "month").format("delta").save("/mnt/delta/")
Весь фрейм данных имеет около 160 ГБ.
Спецификации аппаратного обеспечения
Я использую этот код с использованием кластера с 12 ядрами и 42 ГБ ОЗУ.
Однако выглядит как весь текст Процесс обрабатывается Spark / Databricks последовательно, например, непараллельно :
Визуализация DAG выглядит следующим образом :
В целом, на выполнение этой задачи уйдет 1-2 часа.
Вопросы
- Есть ли способ заставить Spark выполнять запись в разные разделы параллельно?
- Может быть, проблема в том, что я пытаюсь записать дельта-таблицу непосредственно в Azure Хранилище озера данных?