将json写入镶木地板对象,并使用Lambda Python放入S3

问题描述 投票:0回答:1

我想用亚马逊Lambda(python)在镶木地板上写一个json对象到S3!

但是我无法将fastparquet lib与boto3连接起来,因为第一个lib有一个写入文件的方法,boto3期望一个对象放入S3桶

有什么建议吗?

fastparquet的例子

fastparque.write('test.parquet', df, compression='GZIP', file_scheme='hive')

Boto3的例子

 client = authenticate_s3()
        response = client.put_object(Body=Body, Bucket=Bucket, Key=Key)

身体将对应于镶木地板内容!它会允许写入S3

python amazon-s3 aws-lambda parquet
1个回答
7
投票

您可以使用open_with方法的write参数将任何数据帧写入S3(请参阅fastparquet's doc

import s3fs
from fastparquet import write

s3 = s3fs.S3FileSystem()
myopen = s3.open
write(
    'bucket-name/filename.parq.gzip',
    frame,
    compression='GZIP',
    open_with=myopen
)
© www.soinside.com 2019 - 2024. All rights reserved.