Я использую протокол S3a для записи в корзину, которая принадлежит кому-то другому. Мне разрешено использовать только ограниченный набор действий S3 (я не знаю, какие именно).
При попытке записать данные с помощью искры, используя AWS Glue, я получаю сообщение об ошибке 403 : AccessDenied .
Использование s3distcp работает из EMR, но мне придется изменить настройку инфраструктуры. Использование корзины со всеми разрешенными действиями S3 также работает, но я предполагаю, что владелец корзины не захотел бы изменять разрешения.
Есть ли способ сообщить Spark, чтобы он записывал данные, не требуя наличия такого количества разрешений?
Изменить: Spark требуется разрешение S3: DeleteObject. Есть ли способ обойти это?
Вот код:
sparkSession.sparkContext.hadoopConfiguration.set("fs.s3a.bucket.some-bucket.access.key", "accesskey")
sparkSession.sparkContext.hadoopConfiguration.set("fs.s3a.bucket.some-bucket.secret.key", "secretkey")
data.write.csv(s"s3a://some-bucket/test")