AWS Lambda(Python3.6)からDynamoDBにテーブルを作成する

AWS Lambda(Python3.6)からDynamoDBにテーブルを作成する

AWS Lambda(Python3.6)からDynamoDBにテーブルを作成してみます。

create_tableメソッドを使用します。

import boto3

dynamodb = boto3.resource('dynamodb')
table = dynamodb.create_table(
  TableName='users', # usersというテーブルを作成する
  KeySchema=[
    {
      'AttributeName': 'username', # ハッシュキー(パーティションキー)はusername
      'KeyType': 'HASH'
    },
    {
      'AttributeName': 'last_name', # レンジキー(ソートキー)がある場合は指定する、ここではlast_name
      'KeyType': 'RANGE'
    }
  ],
  AttributeDefinitions=[
    {
      'AttributeName': 'username', # ハッシュキーの属性はS
      'AttributeType': 'S'
    },
    {
      'AttributeName': 'last_name', # レンジキー(ソートキー)の属性はS
      'AttributeType': 'S'
    },
  ],
  ProvisionedThroughput={
    'ReadCapacityUnits': 5, # 読み込み
    'WriteCapacityUnits': 5 # 書き込み
  }
)
table.meta.client.get_waiter('table_exists').wait(TableName='users')
print(table.item_count)

table.meta.client.get_waiter('table_exists').wait(TableName='users')で、テーブルが作成されるまで待ちます。その後、テーブルのカウントを表示しています。

作成直後なので、0と表示されます。

 

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました