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
920
0
Share
DynamoDBテーブルにAWSCLIでアイテムを一括登録する方法
2022/6/9 JAWS-UG CLI専門支部 #266R (入門者向け) EC2入門 LT資料
amarelo_n24
June 09, 2022
More Decks by amarelo_n24
See All by amarelo_n24
バケットポリシーの記述を誤りマネコンからS3バケットを操作できなくなりそうになり、ルートアクセス管理を有効にしたおひとり様Organizationsの話
amarelo_n24
0
26
AWS Certified Generative AI Developer - Professional Beta 不合格体験記
amarelo_n24
1
240
マルチパートアップロードをする時にS3はどのような挙動をしているのか?
amarelo_n24
0
68
ひとりAWS BuilderCards 会を開催した話_SecurityExpansion
amarelo_n24
1
82
ひとりAWS BuilderCards 会を開催した話
amarelo_n24
1
34
re:Invent初参加者が感じたre:Invent を楽しむために必要なこと
amarelo_n24
0
50
おひとり様Organizations管理者もルートアクセス管理を有効にしよう!
amarelo_n24
2
140
アウトプット再始動2025・つなげるアウトプット2026
amarelo_n24
0
74
AWS re_Invent に全力で参加したくて筋トレを頑張っている話
amarelo_n24
2
150
Other Decks in Technology
See All in Technology
OWASP APTSを眺めてみた
su3158
0
130
AI 時代の Platform Engineering
recruitengineers
PRO
1
190
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
200
ESP32 IoTを動かしながらメモリ使用量を観測してみた話
zozotech
PRO
0
110
AIの揺らぎに“コシ”を与える階層化品質設計
ickx
0
280
20260515 ID管理は会社を守る大切な砦!〜🔰情シス向け〜
oidfj
0
380
いつの間にかデータエンジニア以外の業務も増えていたけど、意外と経験が役に立ってる
zozotech
PRO
0
580
ServiceによるKubernetes通信制御ーClusterIPを例に
miku01
1
170
RedmineをAIで効率的に使う検証
yoshiokacb
0
100
"スキルファースト"で作る、AIの自走環境
subroh0508
0
110
AI時代の品質はテストプロセスの作り直し #scrumniigata
kyonmm
PRO
4
1.5k
大学職員のための生成AI最前線 :最前線を、AIガバナンスとして読み直すためのTips
gmoriki
2
4.1k
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
55k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
370
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
690
Deep Space Network (abreviated)
tonyrice
0
130
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
110
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
[SF Ruby Conf 2025] Rails X
palkan
2
1k
Crafting Experiences
bethany
1
140
Speed Design
sergeychernyshev
33
1.6k
Test your architecture with Archunit
thirion
1
2.2k
How to make the Groovebox
asonas
2
2.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