ОШИБКА AzureNativeFileSystemStore: DirectoryIsNotEmpty - PullRequest
0 голосов
/ 04 марта 2020

Я пытаюсь выполнить этот код в Azure HdInsigth. У меня есть кластер Spark, который связан с хранилищем озера данных.

spark.conf.set(
"fs.azure.sas.data.spmdevsharedstorage.blob.core.windows.net",
"xxxxxxxxxxx key xxxxxxxxxxx"
)


val shared_data = "wasbs://data@spmdevsharedstorage.blob.core.windows.net/"

//Read Csv
val dfCsv = spark.read.option("inferSchema", "true").option("header", true).csv(shared_data + "/test/4G-pixel.csv")
val dfCsv_final_withcolumn = dfCsv.select($"latitude",$"longitude")
val dfCsv_final = dfCsv_final_withcolumn.withColumn("new_latitude",col("latitude")*100)

//write
dfCsv_final.coalesce(1).write.format("com.databricks.spark.csv").option("header", "true").mode("overwrite").save(shared_data + "/test/4G-pixel_edit.csv")

Код хорошо читает файл csv. Итак, при записи нового файла csv я вижу следующую ошибку:

20/04/03 14:58:12 ERROR AzureNativeFileSystemStore: Encountered Storage Exception for delete on Blob: https://spmdevsharedstorage.blob.core.windows.net/data/test/4G-pixel_edit.csv/_temporary/0, Exception Details: This operation is not permitted on a non-empty directory. Error Code: DirectoryIsNotEmpty
org.apache.hadoop.fs.azure.AzureException: com.microsoft.azure.storage.StorageException: This operation is not permitted on a non-empty directory.
  at org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.delete(AzureNativeFileSystemStore.java:2627)
  at org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.delete(AzureNativeFileSystemStore.java:2637)

Новый файл csv записывается в озеро данных, но код останавливается. Мне нужно, чтобы ты не видел эту ошибку. Как я могу это исправить?

1 Ответ

1 голос
/ 27 апреля 2020

Я столкнулся с подобной проблемой.

Я решил это, используя приведенную ниже конфигурацию. Установите значение true.

--conf spark.hadoop.mapreduce.fileoutputcommitter.cleanup.skipped=true

или

spark.conf.set("spark.hadoop.mapreduce.fileoutputcommitter.cleanup.skipped","true")
...