top of page

AWS Lambda Python에서 Boto3로 DynamoDB에 새 아이템 추가하기

  • 2일 전
  • 1분 분량

Python에서 Boto3를 사용해, DynamoDB에 아이템을 추가해 봅니다.

이번에 사용한 환경은

DynamoDB: 사전에 「testdb」라는 테이블을 만들어 둡니다

Runtime: python3.10 (Lambda에서 실행)

Python 코드

import json
import boto3

def lambda_handler(event, context):
    print(event)
    table_name = 'testdb'
    item = {
       'Artist': event['artist'],
       'Title': event['title']
    }
    dynamo = boto3.resource('dynamodb')
    table = dynamo.Table(table_name)
    response = table.put_item(Item=item)
    
    print(response)

import로 boto3 모듈을 불러옵니다.

그 후, 사용할 테이블명을 정의하고, DB에 추가할 항목을 payload(event 인자)에서 가져옵니다.

boto3를 사용해 dynamodb의 객체를 가져옵니다

put_item을 사용해 DB에 항목 추가를 실행합니다.

마지막으로 추가된 결과를 print로 출력합니다.

테스트용 payload

{
    "artist": "Michael Jackson",
    "title": "Thriller"
}

실행 결과

START RequestId: ******************************** Version: $LATEST
{'artist': 'Michael Jackson', 'title': 'Thriller'}
{'ResponseMetadata': {'RequestId': '*********************', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'Server', 'date': 'Wed, 07 Jun 2023 05:26:26 GMT', 'content-type': 'application/x-amz-json-1.0', 'content-length': '2', 'connection': 'keep-alive', 'x-amzn-requestid': '***************************', 'x-amz-crc32': '2745614147'}, 'RetryAttempts': 0}}
END RequestId: ************************
REPORT RequestId: ****************************	Duration: 1625.71 ms	Billed Duration: 1626 ms	Memory Size: 128 MB	Max Memory Used: 70 MB	Init Duration: 253.35 ms

실행하면 「ResponseMetadata」가 출력됩니다.

DB 확인

AWS 콘솔 화면에서 「DynamoDB」에 접속해, 「항목 탐색」에서 testdb를 선택하고 「반환된 항목」을 확인하면, Boto3를 사용해 Lambda Python에서 추가한 아이템이 표시되어 있음을 확인할 수 있습니다.

 
 
 

댓글


© Copyright ROBIN planning LLC.

bottom of page