dask.dataframe 的 to_parquet 支持服务器端加密吗?
dask.dataframe's to_parquet support server side encryption?
我们公司要求对 S3 中的所有静态数据进行加密。通常当我们上传 s3 对象时,我们会做这样的事情:
aws s3 cp a.txt s3://b/test --sse
我正在玩 dask.dataframe
并想将我的一个数据集导出到存储在 S3 中的镶木地板,但找不到任何选项来打开加密。知道如何使用 dask.dataframe 应用加密吗?
目前在 s3fs 中未实现,dask 用于写入 S3 的后端。通过在 S3FileSystem 的构造函数中包含(部分)以下参数,并将它们包含在对 boto3 s3client 的少量调用中,添加起来并不难;那么在调用 to_parquet()
时参数将包含在 storage_options=
中。
ServerSideEncryption='AES256'|'aws:kms',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
SSEKMSKeyId='string',
还应该有一个选项来设置这些每个文件以及默认情况下在文件系统实例上。随时尝试 PR!请注意,SSE 可能未在 moto
中实现,因此测试使用可能很困难。
请注意,在您的情况下,其中一些值可能由 aws 命令从标准位置读取,例如 ~/.aws/
.
截至目前,这是可能的:
df.to_csv(s3_path, storage_options={"s3_additional_kwargs":{"ServerSideEncryption": "AES256"}})
我们公司要求对 S3 中的所有静态数据进行加密。通常当我们上传 s3 对象时,我们会做这样的事情:
aws s3 cp a.txt s3://b/test --sse
我正在玩 dask.dataframe
并想将我的一个数据集导出到存储在 S3 中的镶木地板,但找不到任何选项来打开加密。知道如何使用 dask.dataframe 应用加密吗?
目前在 s3fs 中未实现,dask 用于写入 S3 的后端。通过在 S3FileSystem 的构造函数中包含(部分)以下参数,并将它们包含在对 boto3 s3client 的少量调用中,添加起来并不难;那么在调用 to_parquet()
时参数将包含在 storage_options=
中。
ServerSideEncryption='AES256'|'aws:kms',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
SSEKMSKeyId='string',
还应该有一个选项来设置这些每个文件以及默认情况下在文件系统实例上。随时尝试 PR!请注意,SSE 可能未在 moto
中实现,因此测试使用可能很困难。
请注意,在您的情况下,其中一些值可能由 aws 命令从标准位置读取,例如 ~/.aws/
.
截至目前,这是可能的:
df.to_csv(s3_path, storage_options={"s3_additional_kwargs":{"ServerSideEncryption": "AES256"}})