pandas - 使用 awswrangler 添加标签到 S3 对象?

标签 pandas amazon-web-services amazon-s3 parquet aws-data-wrangler

我正在使用awswrangler在我的 S3 中编写 Parquet ,我通常在所有对象上添加标签以进行访问和成本控制,但我没有找到直接使用 awswrangler 来做到这一点的方法。我当前正在使用下面的代码来测试:

import awswrangler as wr
import boto3
import pandas as pd

# Boto session
session = boto3.Session(profile_name='my_profile')

# Dummy pandas dataframe
d = {'col1': [1, 2], 'col2': [3, 4]}
df_pandas = pd.DataFrame(data=d)

wr.s3.to_parquet(df=df_pandas, path='s3://my-bucket/path/', boto3_session=session)

有办法向 .to_parquet 将在我的 S3 中写入的对象添加标签吗?

最佳答案

我刚刚发现 awswrangler 有一个名为 s3_additional_kwargs 的参数,您可以将其他变量传递给 awswrangler 为您执行的 s3 请求。您可以像 boto3 'Key1=value1&Key2=value2'

中那样发送标签

下面是如何向对象添加标签的示例:

import awswrangler as wr
import boto3
import pandas as pd

# Tagging
tag_set = 'Key1=value1&Key2=value2'

# Boto session
session = boto3.Session(profile_name='my_profile')

# Dummy pandas dataframe
d = {'col1': [1, 2], 'col2': [3, 4]}
df_pandas = pd.DataFrame(data=d)

wr.s3.to_parquet(df=df_pandas, path='s3://my-bucket/path/', s3_additional_kwargs={'Tagging': tag_set}, boto3_session=session)

关于pandas - 使用 awswrangler 添加标签到 S3 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69086237/

相关文章:

authentication - 如何验证大量亚马逊S3 get请求

amazon-web-services - 使用 aws sts assume-role 配置 AWS EMR spark

python - Pandas :用一些值(value)填充每一列

python - pandas - 分割字符串并取出每对

python - 将特定列值转换为标题并将标题转换为列值

python - 如何使用 Pandas 子选择与 float dtype 相等的行

amazon-web-services - 是否需要 AWS SQS

amazon-web-services - 如何在 CloudFormation 模板中禁用对 Auto Scaling 组中实例的详细监控?

php - 使用 AWS SNS 与直接使用 Apple 的 APNS 的优势

PHP Laravel 异步上传文件到AWS S3