Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DynamoDBテーブルにAWSCLIでアイテムを一括登録する方法
Search
amarelo_n24
June 09, 2022
Technology
0
820
DynamoDBテーブルにAWSCLIでアイテムを一括登録する方法
2022/6/9 JAWS-UG CLI専門支部 #266R (入門者向け) EC2入門 LT資料
amarelo_n24
June 09, 2022
Tweet
Share
More Decks by amarelo_n24
See All by amarelo_n24
AWSと共に英語を学ぼう
amarelo_n24
0
65
ANS-C01_2回不合格から合格までの道程
amarelo_n24
1
250
今年のふりかえりと来年目指すこと
amarelo_n24
0
730
ANS-C01を2回不合格になり認定試験受験に対する想い
amarelo_n24
0
840
鈍行列車の旅をやってみた話2023
amarelo_n24
0
140
DHCPオプションセットって何だろう??
amarelo_n24
2
6.7k
「UNIXという考え方」を読んでどう生きるか考えてみた
amarelo_n24
0
620
AWS認定、オンラインで受けるか?オフラインで受けるか?
amarelo_n24
0
520
Twitter Botを作ってカスタマイズとトラブルシュートをした話
amarelo_n24
1
620
Other Decks in Technology
See All in Technology
AI専用のリンターを作る #yumemi_patch
bengo4com
5
4.1k
SmartNewsにおける 1000+ノード規模 K8s基盤 でのコスト最適化 – Spot・Gravitonの大規模導入への挑戦
vsanna2
0
120
怖くない!はじめてのClaude Code
shinya337
0
380
ビズリーチにおけるリアーキテクティング実践事例 / JJUG CCC 2025 Spring
visional_engineering_and_design
1
110
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
100
fukabori.fm 出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話 / 20250704 Yoshimasa Iwase & Tomoo Morikawa
shift_evolve
PRO
2
6.8k
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
2
8.4k
American airlines ®️ USA Contact Numbers: Complete 2025 Support Guide
airhelpsupport
0
360
OPENLOGI Company Profile
hr01
0
67k
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
3
12k
Backlog ユーザー棚卸しRTA、多分これが一番早いと思います
__allllllllez__
1
140
Lambda Web Adapterについて自分なりに理解してみた
smt7174
6
160
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Code Reviewing Like a Champion
maltzj
524
40k
How to Ace a Technical Interview
jacobian
277
23k
Why Our Code Smells
bkeepers
PRO
337
57k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
950
Being A Developer After 40
akosma
90
590k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
280
It's Worth the Effort
3n
185
28k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Transcript
DynamoDBテーブルにAWS CLIで アイテムを一括登録する方法 2022/6/9 JAWS-UG CLI専門支部 #266R
自己紹介 名前 :藤田 直幸 Twitter :@amarelo_n24(コーヒー焙煎人兼エンジニア) Facebook:https://www.facebook.com/naoyuki.fujita.37 取得済AWS認定 :CLF、SAA、DVA、SCS 好きなAWSサービス:AWS
CLI、AWS CloudShell、Cloud9 好きなコーヒー豆 :ブラジル ブルボンアマレロ
マネコンでDynamoDBテーブルに アイテムを複数追加するのは面倒!!
AWS CLIで一括登録できる!
1.今回使ったサブコマンド 2.コマンド実行してみた 3.まとめ 話すこと
1.今回使うサブコマンド
1つ以上のテーブルに複数のアイテムを配置または削除する。 ・JSONファイルを使用 ・最大16MBのデータを送信 ・最大25個のアイテムの書き込みまたは削除操作 ※出典 https://docs.aws.amazon.com/cli/latest/reference/dynamodb/batch-write-item.html サブコマンド:batch-write-item
テーブルまたはセカンダリインデックス内のすべてのアイテム にアクセスして、1つ以上のアイテムとアイテム属性を返す。 1回の呼び出しで取得できるデータ量は1MBまで。 ※出典 https://docs.aws.amazon.com/cli/latest/reference/dynamodb/scan.html サブコマンド:scan
2.コマンド実行してみた
赤枠部分をDynamoDBテーブルから 毎日ランダムで取得。 このテーブルにデータ追加したい。 Twitter Bot :EveryDayCoffeeTweet_β
builders.flashを参考に作成し、以下のカスタムを追加したもの ※詳細は割愛 ・DynamoDBのアイテム数を取得し、ランダムの値を計算 ・計算値をキーとし、該当する値を取り出しツイート ※builders.flash 「お役立ち Twitter Bot を作りながら学ぶ AWS
ドリル」 https://aws.amazon.com/jp/builders-flash/202204/aws-drill-twitter-bot-4/ Twitter Bot プログラムについて
Excelの関数を使って作成 ※参考 https://dev.classmethod.jp/articles/googlesheets-to-dynamodb/ JSONファイル作成 =IF(ROW()=2,"[","")&"{""PutRequest"":{""Item"":{"""&B2&""":{"""&C2&""":"""&D 2&"""},"""&E2&""":{"""&F2&""":"""&G2&"""}}}}"&IF(ROW()=COUNTA(B:B),"]",",")
Visual Stadio Code で成形して保存 JSONファイル作成
コマンド実行前 アイテム数:10
batch-write-item データ追加実行 “UnprocessedItems”:{} と表示されれば成功 事前にJSONファイルをアップ ロードしておく。
データ追加確認 サブコマンドscanでテーブル名を 指定して実行。 JSONファイルに記載したデータが 追加されていればOK!! アイテム数:15
データ追加確認 5つアイテム追加された ことを確認 アイテム数:15
追加データが使われたことも確認
4.まとめ
・サブコマンドbatch-write-itemでJSONファイルを読み込ませ アイテムの一括登録が可能。 ・マネコンからのデータ追加よりは楽だけど、JSONファイルを 作るのも大変… 効率の良いJSONファイルの作り方をご存知の方いらっしゃい ましたら、ぜひご教示お願いします!🙇 ・Twitter Botのカスタマイズについては、別の機会に話します! まとめ
None