CDKを使ってDynamoDBのテーブル定義を行いたいと思います。
CDKのセットアップは下記に記載しています。
スタックを作成
プロジェクト直下のlib/にbackend-stack.tsを下記の内容で作成します。
例として、TODOを保存するテーブルを作成します。
import * as cdk from 'aws-cdk-lib/core';
import { Construct } from 'constructs';
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
export class BackendStack extends cdk.Stack {
constructor(scope: Construct, id: string, props?: cdk.StackProps) {
super(scope, id, props);
const todosTable = new dynamodb.Table(this, 'TodosTable', {
partitionKey: { name: 'userId', type: dynamodb.AttributeType.STRING },
sortKey: { name: 'todoId', type: dynamodb.AttributeType.STRING },
billingMode: dynamodb.BillingMode.PAY_PER_REQUEST,
});
}
}
下記コマンドで、CloudFormationのJsonファイルを作成します。
cdk synth
デプロイ
プロジェクト直下で下記コマンドを実行します。
cdk deploy BackendStack
デプロイが完了したら、AWSコンソールでDynamoDBを確認します。
テーブルが存在していたら完了です。
終わり
以上が、CDKでDynamoDBをデプロイする方法でした。
別の記事でLambdaからDynamoDBに書き込む方法を記事にしたいと思います。