S3 объект изменить / заменить с S3 - PullRequest
0 голосов
/ 24 мая 2018

введите описание изображения здесь Можно ли очистить объект S3 внутри S3 с помощью лямбды?

1) У меня есть скрипт на python, который очищает данные файла -

import re
import os
sourcepath = os.listdir('InputFiles/')
for file in sourcepath:
    inputfile = 'InputFiles/'+ file
    print ('Conversion is going for :'+ inputfile)
    with open(inputfile,'r') as inputfile:
         filedata = inputfile.read()
    freq = 0
    destinationpath = 'Outputfile/'+ file
    filedata = re.sub('[^a-zA-Z0-9\n\.]', ' ', filedata)
    with open (destinationpath,'w') as file:
         file.write(filedata)
    print filedata

Можете ли вы написать эту логику внутри AWS лямбда

1 Ответ

0 голосов
/ 24 мая 2018

Да, вы можете.Пожалуйста, ознакомьтесь со справочником Boto3 S3 (http://boto3.readthedocs.io/en/latest/guide/s3.html#s3-guide):

. Вот немного, чтобы начать:

import boto3
s3 = boto3.resource('s3')
your_bucket = s3.Bucket('name_of_your_bucket')

for item_in_bucket in your_bucket.objects.all():
     # do stuff

Несколько вещей, которые следует иметь в виду:

  • убедитесь, что роль, под которой работает лямбда-функция, имеет доступ к S3
  • , убедитесь, что вы увеличили конфигурацию тайм-аута лямбда (максимум 5 минут), чтобы у вас было достаточно времени для очистки всехобъекты внутри корзины.
  • если вы превышаете 5 минут, вы можете изучить использование AWS State Machines с пошаговыми функциями с модульными лямбда-операциями для очистки и хранения файлов.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...