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
副作用のある Lambda でも Lambda Power Tuning は使えるのか / l...
Search
koukihosaka
July 22, 2026
Technology
190
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
副作用のある Lambda でも Lambda Power Tuning は使えるのか / lambda-power-tuning-side-effects
JAWS-UG 茨城 #15 Japan AWS Jr.Champion & TopE LT大会 登壇資料です。
koukihosaka
July 22, 2026
Other Decks in Technology
See All in Technology
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
840
Flutterをカメラで動かしたかった話
sony
1
140
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
2.8k
第3回しろおびセキュリティスポンサーセッション
log0417
0
200
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
300
【CEDEC2026】『Relink』を拡張せよ - 『GRANBLUE FANTASY: Relink - Endless Ragnarok』の開発速度と品質を守るCI運用
cygames
PRO
0
180
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
250
変化の早いClaude Codeを 書籍に落とし込む
oikon48
7
1.4k
制約理論(ToC)入門 2026版
recruitengineers
PRO
8
2.3k
PLATEAU で バーチャル花火大会
tatsuya1970
0
160
ハーレムエンジニアリング
kazuma777777
0
160
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.4k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
270
The Curious Case for Waylosing
cassininazir
1
450
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Tell your own story through comics
letsgokoyo
1
1k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
470
How to build a perfect <img>
jonoalderson
1
5.9k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
790
Prompt Engineering for Job Search
mfonobong
0
400
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
210
Transcript
2026年7月22日 JAWS-UG 茨城 #15 Japan AWS Jr.Champion & TopE LT大会
保坂 光希
自己紹介 保坂 光希 NTT ME株式会社(NTT東日本グループ) ハマっているサービス: Lambda Durable Functions 表彰など:
2026 AWS Community Builders (Serverless) 2026 Japan AWS Top Engineers (Services) 2025 - 2026 Japan All AWS Certifications Engineers ほうき星 𝕏 @H0ukiStar 2 / 20
本日の資料など • Speaker Deck: https://speakerdeck.com/koukihosaka/lambda-power-tuning-side-effects • Qiita: https://qiita.com/h0uk1st4r/items/52a9238f3a275ee8f09c 3 /
20
みなさん、AWS Summit で学びはありましたか?
特に学びの多かったセッション おにぎり月 40 個から 32 万個へ — ビジネスの成⾧痛を和らげるサーバーレスアーキテクチャの育て方 公式資料:https://pages.awscloud.com/rs/112-TZM-766/images/R04_0626_CNS347_v3.pdf 5
/ 20
本日のテーマ 副作用のある Lambda でも Lambda Power Tuning は使 えるのか 6
/ 20
結論: 使えます ただし、前処理・後処理で 副作用を制御する必要があります • 同じレコードを何度も処理しない • 実行ごとにユニークなテストデータを用意する • 後処理でテストデータを片付ける
7 / 20
Lambda Power Tuning とは Lambda 関数のメモリ割り当てに関する特徴 • Lambda 関数に割り当てるメモリ量に応じて、CPU パワーも比例し増える
• CPU パワーが増えると、処理内容によっては実行時間が減少する • Lambda 関数の課金はざっくりメモリ割り当て量×実行時間 Lambda Power Tuning が行ってくれること • 指定した Lambda 関数で、複数のメモリ割り当て設定を試し実行時間を計測 • 試したメモリ割り当て設定の中で、コスト最適(メモリ割り当て量×実行時間)と なる設定値をレコメンド • 各メモリ割り当て設定ごとに指定した回数実行(推奨10~100回)し平均値を算出 8 / 20
Lambda Power Tuning のデプロイ SAR から Deploy ボタンを3回クリックするだけ! https://serverlessrepo.aws.amazon.com/applications/arn:aws:serverlessrep o:us-east-1:451282441545:applications~aws-lambda-power-tuning
パラメータカスタマイズ欄 省略 9 / 20
早速コスト最適化をしてみる 最適化対象の Lambda • IoT センサから1分ごとに送られてきた計測値(生値)を 1時間のタイムウィンドウごとの平均値にする処理 • Zabbix触ったことある人なら History
→ Trend への変換処理相当 • データ取得、保存先は DynamoDB Lambda Power Tuning の開始方法 • 作成されたステートマシンに以下を入力して実行 { "lambdaARN": "your-lambda-function-arn", "powerValues": [128, 256, 512, 1024], "num": 50, "payload": {} } # 最適化を実施する Lambda 関数のARN # 試行するメモリ設定 # メモリ設定ごとの試行回数 # 最適化を実施する Lambda 関数に渡す ペイロード 10 / 20
このまま実行してはいけません
副作用のある Lambda 関数での注意点 Lambda Power Tuning のチューニング方法 • 各メモリ割り当て設定間は並列、同一メモリ設定内では指定した回数直列で チューニング対象の
Lambda 関数を実行し、実行結果からコスト最適なメモリ割 り当て設定を探し出す チューニング 開始 メモリ:128MB 1回目 メモリ:128MB 2回目 ・・・ メモリ:128MB 10回目 メモリ:256MB 1回目 メモリ:256MB 2回目 ・・・ メモリ:256MB 10回目 ・・・ メモリ:1024MB 10回目 ・ ・ ・ メモリ:1024MB 1回目 メモリ:1024MB 2回目 チューニング 終了 12 / 20
副作用のある Lambda 関数での注意点 そのまま実行すると副作用が問題になる • チューニング対象の Lambda 関数は複数回・並列的に繰り返し実行される • DB
更新・削除などがあると、各実行が互いに影響し、計測条件がそろわない 並列実行(複数回) DB 実行A 実行B 実行C 処理対象のレコードが 既にあります / ありません レコードA ・・・ レコードB ・・・ レコードC ・・・ ・・・ ・・・ 13 / 20
副作用のある Lambda 関数での注意点 そのまま実行すると副作用が問題になる • チューニング対象の Lambda 関数は複数回・並列的に繰り返し実行される • DB
更新・削除などがあると、各実行が互いに影響し、計測条件がそろわない 並列実行(複数回) DB 実行A 実行B 実行C 各実行を独立させる レコードA ・・・ レコードB ・・・ レコードC ・・・ ・・・ ・・・ 14 / 20
どうすればいいのか 各実行の前後で、テストデータを準備・削除する • チューニング対象の Lambda 関数の実行前後で、DB に対しユニークなテストレ コードの準備やお片付けを実施する チューニング 開始
前 128MB 1回目 後 前 128MB 2回目 後 ・・・ 前 128MB 10回目 後 前 256MB 1回目 後 前 256MB 2回目 後 ・・・ 前 256MB 10回目 後 1024MB 後 2回目 ・・・ 前 1024MB 後 10回目 ・ ・ ・ 前 1024MB 後 1回目 前 チューニング 終了 15 / 20
どうすればいいのか 前・後処理を指定し各実行ごとに DB 内のデータ準備・削除を行う • ステートマシンへ preProcessorARN / postProcessorARNとして 前処理・後処理を行う
Lambda 関数を指定可能 { "lambdaARN": "your-lambda-function-arn", "powerValues": [128, 256, 512, 1024], "num": 50, "payload": {}, "preProcessorARN": "pre-process-lambda-function-arn", "postProcessorARN": "post-process-lambda-function-arn" } # 前処理を行う Lambda 関数のARN # 後処理を行う Lambda 関数のARN 注意:前処理の出力が、チューニング対象 Lambda の入力になる • チューニング対象の Lambda 関数がペイロードを受け取る必要がある場合、前処 理で出力する必要がある payloadの流れ: [payload = execute Pre-processor (payload)] results = execute Main Function (payload) [execute Post-processor (results)] 16 / 20
気を取り直して…
Lambda Power Tuning の結果 コスト最適なメモリ割り当て設定をグラフィカルに確認可能 • ステートマシンの出力「visualization」に記載されたURLを開くと各メモリごとの 実行時間とコスト最適なメモリ設定を確認可能 コスト最適化は、勘ではなく実測で判断する •
元々 128MB で動かしていたが、512MB がコスト最適だと判明 18 / 20
まとめ Lambda Power Tuning は複数のメモリ割り当て設定 を自動で試しコスト最適なメモリを確認可能 preProcessorARN / postProcessorARN で
前処理・後処理を指定することで 副作用のある Lambda 関数でも安全に利用可能 19 / 20
ご清聴ありがとうございました