/Bubble Development Agency

Bubble.io와 Amazon DynamoDB 통합: 단계별 가이드 2024

Bubble.io를 Amazon DynamoDB와 AWS Lambda 및 API Gateway를 통해 통합하는 단계별 가이드를 발견하세요. 이 도움되는 튜토리얼로 데이터베이스 작업을 높이세요.

Amazon DynamoDB란 무엇인가요?

Amazon DynamoDB는 Amazon Web Services(AWS)에서 제공하는 완전히 관리되는 NoSQL 데이터베이스 서비스입니다. 이는 빠르고 예측 가능한 성능을 확장성과 함께 제공합니다. DynamoDB는 사용자가 어떠한 수준의 요청 트래픽도 처리하고 어떠한 양의 데이터도 저장하고 검색할 수 있는 데이터베이스 테이블을 생성할 수 있게 해줍니다. 이 서비스는 자동으로 데이터와 트래픽을 서버 사이에 분산시켜 각 고객의 요청을 동적으로 관리하며, 높은 가용성과 데이터 내구성을 제공합니다.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web or mobile app? RapidDev builds Bubble apps with your growth in mind.

Book a free No-Code consultation

Bubble.io와 Amazon DynamoDB을 통합하는 방법은 무엇인가요?

Bubble.io는 기본적으로 Amazon DynamoDB와 직접 통합하는 것을 지원하지 않습니다. 그러나 AWS Lambda와 API Gateway를 이용하여 RESTful API를 만들고, 그 API를 Bubble.io에서 소비함으로써 이 통합을 수행할 수 있습니다.

다음은 Bubble.io를 Amazon DynamoDB와 통합하는 단계별 가이드입니다:

Step 1 : AWS CLI 설정

진행하기 전에 AWS CLI (Command Line Interface)가 설치되어 있고 기기에서 설정되어 있는지 확인해야 합니다. 같은 명령어에 대한 설명을 보려면 공식 AWS CLI 문서를 참조하십시오.

Step 2 : DynamoDB 테이블 만들기

필요한 속성으로 DynamoDB 테이블을 만듭니다. 테이블을 사용할 때 항목의 정체성은 파티션 키로 구성되며, 필요한 경우 정렬 키도 사용합니다.

다음 명령을 사용하여 AWS CLI에서 테이블을 만들 수 있습니다:

aws dynamodb create-table --table-name YOUR-TABLE-NAME --attribute-definitions AttributeName=YOUR-PARTITION-KEY,AttributeType=S AttributeName=YOUR-SORT-KEY,AttributeType=N --key-schema AttributeName=YOUR-PARTITION-KEY,KeyType=HASH AttributeName=YOUR-SORT-KEY,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5

YOUR-TABLE-NAME,YOUR-PARTITION-KEY,YOUR-SORT-KEY를 적절한 값으로 바꿉니다.

Step 3 : 람다 함수 만들기

당신은 함수 코드와 종속성을 .zip 파일에 패키지화하고 람다 함수를 만들어야 합니다.

  • 다음 내용으로 .js 파일을 만듭니다:
var aws = require('aws-sdk');
aws.config.region = 'us-east-1'; // AWS 지역으로 바꿉니다
var dynamodb = new aws.DynamoDB();

exports.handler = (event, context, callback) => {

    var params = {
        TableName : "YOUR-TABLE-NAME", // 테이블 이름으로 바꿉니다.
        Key: { 
            "YOUR-PARTITION-KEY" : {S: "VALUE"},  // 파티션 키와 그 값을 바꿉니다.
            "YOUR-SORT-KEY" : {N: "VALUE"} // 정렬 키와 그 값을 바꿉니다. 정렬 키가 없는 경우 삭제하십시오.
        }
    };

    dynamodb.getItem(params, function(err, data) {
        if (err) {
            callback(err, null);
        } else {
            callback(null, data);
        }
    });
};

YOUR-TABLE-NAME,YOUR-PARTITION-KEY,YOUR-SORT-KEY를 적절한 값으로 바꿉니다.

  • 그런 다음 AWS SDK와 이 스크립트를 .zip 파일로 패키지화합니다.

Step 4 : 람다 함수 배포

다음 명령을 사용하여 AWS CLI를 사용하여 AWS 람다에 함수를 배포합니다:

aws lambda create-function --function-name FUNCTION-NAME --runtime nodejs12.x --role ROLE-ARN --handler HANDLER-FILE-NAME.handler --zip-file fileb://file-path/ZIP-FILE-NAME.zip

FUNCTION-NAME을 AWS 람다 함수의 이름으로, ROLE-ARN을 AWS IAM 역할의 Amazon Resource Name(ARN)으로, HANDLER-FILE-NAME를 JavaScript 파일의 이름으로, 그리고 ZIP-FILE-NAME.zip 파일의 경로로 바꿉니다.

Step 5 : API 게이트웨이 설정

AWS 람다 함수를 만든 후, Bubble.io와 통합할 수 있는 REST API로 노출해야 합니다.

  • AWS 콘솔의 API Gateway 서비스로 이동합니다.
  • API 생성을 클릭합니다.
  • REST API를 선택하고 구축을 클릭합니다.
  • 필요에 따라 API를 구성합니다.
  • 리소스에 대한 GET 방법을 만듭니다.
  • GET 방법 안에서 만든 람다 함수를 선택합니다.
  • API를 배포합니다.

Step 6 : Bubble.io 통합

  • Bubble.io의 앱으로 이동합니다.
  • 플러그인 탭으로 이동하고 API Connector 플러그인을 설치합니다.
  • API 탭으로 이동하고 새 API를 추가합니다.
  • API URL을 AWS API 게이트웨이의 호출 URL로 설정합니다.
  • 메소드를 GET으로 설정합니다.
  • 필요에 따라 매개 변수와 헤더를 설정합니다.
  • 호출을 초기화하고 테스트합니다.
  • 성공적인 초기화 후, 워크플로우에서 API를 소비할 수 있습니다.

이것으로, Bubble.io 앱이 AWS Lambda 및 AWS API Gateway를 통해 Amazon DynamoDB에 통합되었습니다. DynamoDB 테이블에서 CRUD 작업을 수행하기 위해 같은 방법을 사용할 수 있습니다. 그러나, 각 작업(POST, PUT, DELETE 등)에 대해 람다 함수의 코드를 수정하고 해당 API 게이트웨이 메서드를 구성해야 합니다.

Bubble.io와 Amazon DynamoDB 통합 사용 사례

시나리오: 온라인 의류 부티크가 고객의 과거 구매 데이터를 활용하여 개인화된 추천 시스템을 구현하려고 합니다. 그들은 Bubble.io를 사용하여 쇼핑 카트 기능을 포함한 웹사이트를 디자인하고 개발합니다. 그들은 Amazon DynamoDB와 같은 확장 가능하면서 적절한 데이터베이스에 이 데이터를 저장하고, 개인화된 추천을 생성하기 위해 이를 검색하려고 합니다.

솔루션: Bubble.io를 Amazon DynamoDB와 통합

웹사이트와 쇼핑 카트 생성: 이 부티크는 Bubble.io를 사용하여 자신의 전자상거래 웹사이트를 개발합니다. 이 웹사이트에는 제품 정보, 고객 ID, 구매 이력과 같은 정보를 수집하는 쇼핑 카트가 포함되어 있습니다.

통합 설정: 부티크는 Bubble.io에 Amazon DynamoDB 플러그인을 설치하고 DynamoDB API와 연결합니다. 이를 통해 웹사이트와 데이터베이스 간의 원활한 연결이 가능해집니다.

데이터 수집 워크플로우: 고객이 구매를 하면, 고객 ID, 제품 정보, 구매 이력을 포함한 쇼핑 카트 데이터가 자동으로 Amazon DynamoDB로 전송됩니다. Bubble.io에서 설정한 워크플로우에 의해, 이 데이터는 DynamoDB에 각각의 식별자 아래에 저장됩니다.

개인화된 추천 생성: 부티크의 추천 알고리즘이 특정 고객의 과거 구매 데이터를 DynamoDB에서 로그인할 때마다 검색합니다. 이 데이터는 부티크 웹사이트에서 고객에게 개인화된 제품 추천을 제공하는 데 사용됩니다.

이점:

효율성: 데이터 수집 프로세스를 자동화함으로써 고객 데이터의 정확성과 시간적 분석을 보장합니다.

확장성: Amazon DynamoDB는 대량의 데이터를 처리하고 데이터가 증가함에 따라 효율적으로 작동할 수 있어, 부티크는 데이터 관리에 대한 걱정 없이 고객 기반을 늘릴 수 있습니다.

개인화: 저장된 데이터를 활용하면 고객 행동에 대한 통찰을 제공하여 타겟팅된 제품 추천이 가능하므로 개인화가 강화됩니다.

실시간 분석: Amazon DynamoDB의 빠르고 일관된 성능은 추천을 생성하기 위한 실시간 데이터 분석을 보장합니다.

Amazon DynamoDB를 Bubble.io와 함께 구현함으로써, 온라인 부티크는 고객의 구매 이력에 기반한 개인화된 추천으로 더욱 매력적인 쇼핑 경험을 만들 수 있으며, 이를 통해 고객 만족도와 매출을 높일 수 있습니다.

더 유용한 노코드 리소스 살펴보기

No-Code Tools Reviews

Delve into comprehensive reviews of top no-code tools to find the perfect platform for your development needs. Explore expert insights, user feedback, and detailed comparisons to make informed decisions and accelerate your no-code project development.

Explore

WeWeb Tutorials

Discover our comprehensive WeWeb tutorial directory tailored for all skill levels. Unlock the potential of no-code development with our detailed guides, walkthroughs, and practical tips designed to elevate your WeWeb projects.

Explore

No-Code Tools Comparison

Discover the best no-code tools for your projects with our detailed comparisons and side-by-side reviews. Evaluate features, usability, and performance across leading platforms to choose the tool that fits your development needs and enhances your productivity.

Explore
Want to Enhance Your Business with Bubble?

Then all you have to do is schedule your free consultation. During our first discussion, we’ll sketch out a high-level plan, provide you with a timeline, and give you an estimate.

Book a free consultation

By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.

Cookie preferences