App Engineerの開発ノート

AWS、Flutterや開発活動に役立つツール作りなど

DynamoDBへのデータ登録を楽にする2~データ削除編

f:id:Simoroid:20211014013907p:plain
f:id:Simoroid:20210928002145p:plain
以前、エクセルファイルをインプットとしたDynamoDBへのデータ登録のツールを作りました。今回はその削除版の一括削除のツールを作成します。
ちなみ登録のツール作成方法は下記です。
ikodatech.com

削除ツールも登録ツール同様、Powershellを使用します。

■ツールの概要
削除するには削除対象テーブルのキーの情報が必要になります。
エクセルファイルを元データとして、シート単位にテーブルの削除したいキー情報を記載しておけば、削除用インプットデータが生成できるツールとします。

■前提条件

登録のツールと同様になりますが、
Excelがインストールされている環境である必要があります。
また現状の仕様ではサポートしている型はBOOLとS(文字列)、N(数値)のみになります。

■実装方法

任意ファイル名でps1ファイルを作成します。

gista6418282318a401aeb9fcb7c171e83f1

■使用方法

1.ツールと"data"フォルダを任意フォルダに配置します。
f:id:Simoroid:20211014011539p:plain

2."data"フォルダに下記のようなエクセルファイルを配置します。
めんどくさいのですが、1行目に"PatitionKey"、"RangeKey"を記載しておく必要があります。
※形式を変えると動かなくなるので要注意
f:id:Simoroid:20211014013010p:plain

3.ツールを右クリック->「PowerShellで実行」をクリックで実行
⇒下記のようにA列で指定したデータセットID名でjsonファイルが出来上がる。

f:id:Simoroid:20211014011522p:plainf:id:Simoroid:20211014011608p:plain
出来上がったファイルにはキーの情報のみが記載されています。
f:id:Simoroid:20211014012045p:plain

4.aws cliでデータ削除
ツールで出力されたjsonファイルをbatch-write-itemのパラメータに渡します。
batch-write-item — AWS CLI 1.22.80 Command Reference

aws dynamodb batch-write-item  --request-items  file://del_data_set1.json --endpoint-url http://localhost:4566

ここまで 読んで頂きありがとうございました。
よければフォローお願いします!