CDKを使ってDynamoDBのテーブルを作成する方法について

サンプル

参考

例 パーティションキーの名称が "pk"、ソートキーの名称が "sk" のテーブル "dynamodb-test-table" を作成

import * as cdk from 'aws-cdk-lib';
import * as DynamoDb from 'aws-cdk-lib/aws-dynamodb';
import { Construct } from 'constructs';

export class DynamodbTestStack extends cdk.Stack {
  constructor(scope: Construct, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    // テスト用DynamoDBテーブルの作成
    const dynamoDbName = 'dynamodb-test-table';
    const dynamoDb = new DynamoDb.Table(this, dynamoDbName, {
      tableName: dynamoDbName,
      partitionKey: {
        name: 'pk',
        type: DynamoDb.AttributeType.STRING,
      },
      sortKey: {
        name: 'sk',
        type: DynamoDb.AttributeType.STRING
      },
      billingMode: DynamoDb.BillingMode.PAY_PER_REQUEST,
      timeToLiveAttribute: 'expired', // TTLの設定
      removalPolicy: cdk.RemovalPolicy.DESTROY, // cdk destroyでDB削除可
    });
  }
}