AWS Запись EMR Pyspark на S3 с ошибкой SSE, Объекты на S3 показывают отказ в доступе - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь написать фрейм данных, используя Pyspark и EMR со следующей конфигурацией искры

conf = pyspark.SparkConf().setAll([("spark.hadoop.fs.s3.acl.default", "BucketOwnerFullControl"),
                                   ("spark.hadoop.fs.s3.enableServerSideEncryption", "true"),
                                   ("spark.hadoop.fs.s3.server-side-encryption-algorithm", "AES256")
                                  ])
spark = SparkSession.\
    builder.\
    config(conf=conf).\
    master("yarn").\
    appName(app_name).\
    enableHiveSupport().\
    getOrCreate()

Я могу записать объекты в S3, используя:

df.write.mode("overwrite").parquet(s3path)

, но объект в S3 показывает следующее:

Storage class
Standard
Server-side encryption
Access denied

Где это должно быть AES256

И это правда, что моим коллегам отказывают в доступе, когда они пытаются получить доступ к этим объектам.

Интересно, для EMR необходимо настроить конфигурацию spark перед созданием кластера через AWS, и вы не можете изменить эти конфигурации в сеансе приложения spark?

...