Шифрование на стороне сервера в функции to_csv
Я получаю эту ошибку при использовании to_csv("s3://mys3bucket/result.csv")
Exception: [Errno Write Failed: mys3bucket/result.csv/2489.part]
An error occurred (AccessDenied) when calling the PutObject operation: Access Denied
Это могло быть вызвано тем, что Dask не использует шифрование на стороне сервера. Подскажите пожалуйста, как я могу заставить его использовать SSE или какой-то другой метод для успешной записи файла в корзину s3
1 ответ
Решение
Развернув комментарий @user32185, для управления SSE через dask ваш вызов должен выглядеть примерно так:
to_csv("s3://mys3bucket/result.csv",
storage_option={'s3_additional_kwargs':
{'ServerSideEncryption': 'AES256'}})
где особенности SSE с s3fs подробно описаны здесь. Обратите внимание, что вам также могут потребоваться другие ключевые слова на той же странице документов для учетных данных, зоны хранения и т. Д. Параметры передаются в S3FileSystem
конструктор, и вы можете вникать в boto docs, чтобы увидеть, что все значит.