💁‍♂️

DynamoDBへのテストデータ作成用pythonスクリプト

2021/03/01に公開

はじめに

DynamoDBへ大量のテストデータを作りたいときのPythonスクリプトが欲しいなという時の参考にしていただければと思います。

実装

第一引数に、対象となるDynamoDBのテーブル名、第二引数にテストデータ数を整数で渡してあげると、動作します。

import json
from argparse import ArgumentParser, FileType
 
import boto3
from tqdm import tqdm
 
def main():
    p = ArgumentParser(description='jsonをDynamoDBにインポート')
    p.add_argument('table', help='テーブル名')
    p.add_argument('total', type=int, help='テストデータ数')
    args = p.parse_args()
    session = boto3.Session(profile_name="default")
 
    dynamodb = session.resource('dynamodb')
    table = dynamodb.Table(args.table)
    total = args.total
 
    with table.batch_writer() as batch:
        for i in tqdm(range(total)):
            batch.put_item(
                Item={
                "ID": str(i),
                "TEST_DETAIL": "TESTDATA"
               }
            )
 
if __name__ == "__main__":
    main()

Discussion