Я использую Spark для записи и чтения файлов паркета на AWS S3. У меня есть паркетные файлы, которые хранятся в
's3a://mybucket/file_name.parquet/company_name=company_name/record_day=2019-01-01 00:00:00'
, разделенных на 'company_name' и 'record_day'
Я хочу написать basi c конвейер, чтобы регулярно обновлять мои файлы паркета 'record_day'. Для этого я буду использовать режим перезаписи:
df.write.mode('overwrite').parquet(s3a://mybucket/file_name.parquet/company_name='company_name'/record_day='2019-01-01 00:00:00')
Но получаю неожиданную ошибку 'java. net .URISyntaxException: Относительный путь в абсолютном URI: ключ = 2019-01 -01 00: 00: 00 '.
Я потратил несколько часов на поиск проблемы, но не нашел решения (. В некоторых тестах я заменил параметр 'overwrite' на 'append' и все остальное. работает отлично. Я также сделал простой фрейм данных и режим перезаписи также отлично работает на нем. Я знаю, что я могу решить свою проблему по-другому, удалив и затем записав конкретную часть, но я хотел бы понять, в чем причина ошибка? Spark 2.4.4 имел oop 2.8.5
Ценю любую помощь.