我使用牧羊人在我的S3中编写parquets,并且我通常在我的所有对象上添加标记来访问和控制成本,但是我没有找到一种直接使用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中写入的对象?
发布于 2021-09-07 10:08:29
我刚刚发现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)https://stackoverflow.com/questions/69086237
复制相似问题