[nodejs] AWS Lambda로 데이터베이스 처리하기

서버리스 아키텍처(Serveless Architecture)는 개발자가 서버 엔진을 셋업할 필요 없이 코드를 실행할 수 있게하는 기술로, 최근 많은 인기를 얻고 있습니다. 이 중에서 AWS Lambda는 특히 인기 있는 옵션 중 하나입니다.

여기서는 AWS Lambda에서 데이터베이스 처리를 하는 방법에 대해 알아보겠습니다.

AWS Lambda란?

AWS Lambda는 사용자가 서버를 관리하지 않고도 코드를 실행할 수 있도록 하는 서버리스 컴퓨팅 서비스 입니다. Lambda 함수에 자바스크립트, 파이썬, 루비, Java 등 다양한 언어로 작성된 코드를 업로드하여 실행할 수 있습니다. 또한, 함수가 필요한 경우에만 실행되기 때문에 비용을 절약할 수 있습니다.

AWS Lambda에서 데이터베이스 처리하기

일반적으로 AWS Lambda는 데이터베이스 처리를 위해 Amazon RDS, Amazon DynamoDB, Amazon Aurora 등과 같은 AWS의 관리형 데이터베이스 서비스와 통합되어 사용됩니다.

아래는 Node.js에서 AWS Lambda를 사용하여 Amazon DynamoDB와 통합되어 데이터베이스를 처리하는 예시입니다.

const AWS = require('aws-sdk');
const docClient = new AWS.DynamoDB.DocumentClient();

exports.handler = async (event, context) => {
  const params = {
    TableName: 'tableName',
    Item: {
      key: 'value'
    }
  };
  
  try {
    const data = await docClient.put(params).promise();
    console.log("PutItem succeeded:", JSON.stringify(data, null, 2));
    return data;
  } catch (err) {
    console.error("Unable to add item. Error JSON:", JSON.stringify(err, null, 2));
    throw err;
  }
};

위 코드는 AWS SDK를 사용하여 Amazon DynamoDB에 데이터를 추가하는 Lambda 함수입니다. docClient.put 메서드를 사용하여 데이터베이스에 항목을 추가하고, 결과를 반환합니다.

참고 자료