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
540
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
今年のふりかえりと来年目指すこと
amarelo_n24
0
450
ANS-C01を2回不合格になり認定試験受験に対する想い
amarelo_n24
0
630
鈍行列車の旅をやってみた話2023
amarelo_n24
0
94
DHCPオプションセットって何だろう??
amarelo_n24
1
3.5k
「UNIXという考え方」を読んでどう生きるか考えてみた
amarelo_n24
0
460
AWS認定、オンラインで受けるか?オフラインで受けるか?
amarelo_n24
0
400
Twitter Botを作ってカスタマイズとトラブルシュートをした話
amarelo_n24
1
480
情報量の単位についておさらいしよう
amarelo_n24
0
260
ITエンジニアへのコーヒーのすすめ(抽出編)
amarelo_n24
0
240
Other Decks in Technology
See All in Technology
テスト・設計研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
AIアシスタントの活用で品質の向上と開発ワークフローのスピードアップ
nagix
1
210
dxd2024-生成AIに振り回された3か月間の成功と失敗/dxd2024-link-and-motivation
lmi
2
260
ここがすごいよ! AWS Systems Manager!
saichan11
0
1.8k
Flutter研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
大規模ドラレコデータ収集・機械学習基盤を支える AWS CDK 〜導入・運用事例紹介〜
pemugi
0
110
さらに高品質・高速化を目指すAI時代のテスト設計支援と、めざす先 / AI Test Lab vol.1
shift_evolve
0
190
セキュリティ研修 Day1【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
Luupの開発組織におけるインシデントマネジメントの変遷 ver.RoadtoSRENEXT2024
grimoh
1
270
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.4k
Featured
See All Featured
Building Your Own Lightsaber
phodgson
101
5.9k
Become a Pro
speakerdeck
PRO
15
4.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
35
6.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
78
15k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
19k
What the flash - Photography Introduction
edds
65
11k
Designing for Performance
lara
604
67k
The World Runs on Bad Software
bkeepers
PRO
63
11k
The Cost Of JavaScript in 2023
addyosmani
31
4.7k
Statistics for Hackers
jakevdp
792
220k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
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