У меня есть Azure Data Lake gen1 и Azure Data Lake gen2 (хранилище BLOB-объектов с иерархической структурой), и я пытаюсь создать записную книжку Databricks (Scala), которая считывает 2 файла и записывает новый файл обратно в Data Lake. И в Gen1, и в Gen2 я испытываю одну и ту же проблему, когда указанное имя выходного файла csv сохраняется как каталог, и внутри этого каталога записывается 4 файла " commit , началось , _SUCCESS и part-00000-tid-
Что касается жизни, я не могу понять, почему он это делает, а на самом деле не сохраняет CSV-файл в этом месте.
Вот пример кода, который я написал. Если я сделаю .show () на фрейме данных df_join, он выдаст правильные результаты. Но .write не работает правильно.
val df_names = spark.read.option("header", "true").csv("/mnt/datalake/raw/names.csv")
val df_addresses = spark.read.option("header", "true").csv("/mnt/datalake/raw/addresses.csv")
val df_join = df_names.join(df_addresses, df_names.col("pk") === df_addresses.col("namepk"))
df_join.write
.format("com.databricks.spark.csv")
.option("header", "true")
.mode("overwrite")
.save("/mnt/datalake/reports/testoutput.csv")