Есть ли способ передавать данные вперед и назад в AWS lambda с помощью Boto3?У меня есть рабочий код, но он загружает данные CSV в память, обрабатывает их и помещает в объект s3.Я скорее ищу способ для потоковой передачи объекта из S3 с использованием Boto3 и потоковой передачи обратно на S3.
import csv
import json
import boto3
def lambda_handler(event, context):
targetbucket = 'AWS_BUCKET_NAME'
csvkey = 'CSV_FILENAME.csv'
jsonkey = 'JSON_FILENAME.json'
s3 = boto3.resource('s3')
csv_object = s3.Object(targetbucket, csvkey)
csv_content = csv_object.get()['Body'].read().splitlines()
s3_client = boto3.client('s3')
result = []
for line in csv_content:
x = json.dumps(line.decode('utf-8')).split(',')
Name = str(x[0])
Title = str(x[1])
Age = str(x[2])
jsonData = '{ "Name": ' + Name + '"' + ',' \
+ ' "Title": ' + '"' + Title + '"' + ',' \
+ ' "Age": ' + '"' + Age + '"' + '}'
result.append(jsonData)
s3_client.put_object(
Bucket=targetbucket,
Body= str(result).replace("'",""),
Key=jsonkey
)