#dataframe #apache-spark #pyspark #parquet #corrupt
#dataframe #apache-spark #pyspark #паркет #поврежден
Вопрос:
У меня есть папка, которая содержит один поврежденный файл и другие правильные файлы (неповрежденные)
Путь: s3://temp-bucket/test/
Files:
s3:// temp-bucket/test/a_corrupt_file.parquet
s3:// temp-bucket/test/b_proper_file1.parquet
s3: // temp-bucket/test/b_proper_file2.parquet
spark.sqlContext.setConf("spark.sql.files.ignoreCorruptFiles", "false")
val corruptTest = spark.read.parquet("s3://temp-bucket/test/")
Приведенный выше код завершается ошибкой с приведенным ниже исключением
Вызвано: java.io.IOException: не удалось прочитать нижний колонтитул для файла:
spark.sqlContext.setConf("spark.sql.files.ignoreCorruptFiles", "true")
val corruptTest = spark.read.parquet("s3://temp-bucket/test/")
Приведенный выше код завершается ошибкой с приведенным ниже исключением
org.apache.spark.sql.AnalysisException: невозможно определить схему для Parquet
С ignoreCorruptFiles=true, когда первый файл (лексикографически) поврежден, spark игнорирует все файлы, включая правильные неповрежденные файлы
Комментарии:
1. Одним из решений, которое я нашел, является предоставление схемы во время чтения. Но я не знаю схему перед чтением