오늘은 AWS 람다 python을 통해서 S3에 접근하는 방법에 대해서 살펴보도록 하겠습니다. 먼저 실제 코드부터 확인하도록 하겠습니다. import json import boto3 BUCKET_NAME = 's3-bucket-name' KEY = 'test.json' s3_client = boto3.client('s3') def lambda_handler(event, context): data = s3_client.get_object(Bucket=BUCKET_NAME, Key=KEY) content = data['Body'].read() refined_content = content.decode('UTF-8') print(content) print(refined_content) return { 'sta..
오늘은 눈과 비가 섞여서 오는 글루미한 날입니다. 커피 한잔하면서 정리할 내용은 AWS의 서비스 중에 Lambda를 통해 DynamoDB에 CRUD 하는 방법에 대해서 정리해보도록 하겠습니다. 우선 DynamoDB가 생소하신 분들은 아래 경로에서 상세한 내용을 확인하실 수 있는데 DynamoDB는 AWS의 대표격으로 사용 되는 데이터베이스이며, NoSQL Database 중 하나 입니다. 여기서 NoSQL은 무엇이냐 하면, 표준 SQL 인터페이스를 차용하지 않은 데이터베이스를 뜻하며, 정형화 된 데이터가 아니기 때문에 많은 데이터를 읽고 쓰는데에 능한 데이터베이스 입니다. 대신 SQL보다 검색속도는 느릴수 밖에 없겠지만 그 속도를 최적화 한 것이 DynamoDB라고 소개하고 있습니다. DynamoDB는 ..
API Gateway를 제대로 써보기 위해서 API를 정의하고, 하나씩 생성하면서 알아보고 있는데요. 지난 시간에 /books 라는 POST 용 API를 생성하고 Lambda 함수와 연결 시켜보았습니다. 이 상태에서 한번 테스트를 해볼까요? API Gateway는 자체에서 테스트 할 수 있도록 지원 하고 있습니다. 이렇게 테스트 라고 적혀 있는 블록을 선택해서 들어가서 가운데 하단에 테스트라고 파란색으로 보이는 버튼을 한번 눌러봅시다. 아직 아무것도 세팅하지 않은 상태에서 Lambda 까지 잘 연결되느냐만 보기 위함입니다. 상태 코드는 200이고 296ms 가 걸렸으며 응답본문은 statusCode:200에 body 에 Hello from Lambda 라고 되어있습니다. 전 시간에서 booksPost라고..