Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第160回 雲勉 それ、AWS Step Functions で置き換えれん?

第160回 雲勉 それ、AWS Step Functions で置き換えれん?

下記、勉強会での資料です。
https://youtu.be/q48oBNnbj64

iret.kumoben

May 02, 2025
Tweet

More Decks by iret.kumoben

Other Decks in Technology

Transcript

  1. 6 AWS Lambda 使ってますか? • プログラミング言語の知識が必要 • 高い専門性 • ランタイムのサポート廃止(Python3.9も2025年11月廃止予定)

    • 複数の AWS Lambda を使用する場合は複雑になる • 実行時間の上限 →中でもランタイムのサポートは思っているより早いです AWS Lambda を使うデメリット
  2. 9 アジェンダ • AWS Step Functions を採用するメリットについて • JSONata について

    • 実際に使ってみた話 今回お話すること • 細かい設定値 • プロンプトなど 話さないこと
  3. 11 AWS Step Functions とは • AWS提供のマネージドサービス • ワークフローとして各サービスを連携できる •

    非常に多くのサービスに対応 <北野の偏見> Map処理したい時とか、 複雑な処理分岐にしか使ってはいけないのでは? AWS Step Functions とは ソンナコトナイヨ!
  4. 12 AWS Step Functions とは • 処理の可視化 • ワークフローがとっても視覚的! •

    プログラミング言語の知識がなくても見れる(?) • ちょっとした処理は JSONata が吸収 • 自動スケーリング • ランタイムのサポートを気にしなくていい! • 非同期処理を作りやすい • AWS Lambda や Amazon API Gateway の タイムアウトから解放 AWS Step Functions のメリット
  5. 19 実践 JSONata とは • AWS Step Functions には2024年11月に追加 •

    JSONデータの軽量クエリおよび変換言語 • JSONオブジェクトの複雑なデータ操作が可能 • フローの中間ステートが不必要になった! 処理の可視化(JSONata)
  6. 20 実践 • エラーによって細かく制御が可能 • Amazon DynamoDB でエラーが あったら Fail

    、なければ API 呼び出しが視覚的 処理の可視化(エラーハンドリング) タイムアウトなどのエラーに よって分岐を指定できる
  7. 23 実践 • curl で API を実行 • わざわざ書くほどのことでもないが、Slack に通知がきた

    • 生成AIなど、実行時間を予測しづらい時に◎ 非同期処理
  8. 25 まとめ • 多くのサービスに対応し、処理の分岐も作りやすい • ワークフローを視覚的に表現 • エラーハンドリングも見やすく、原因調査もしやすい • 生成AIとの相性がよい

    • 非同期処理 • Amazon Bedrock アクションも豊富 • 簡単な処理は JSONata が吸収 • プログラム風だが、慣れれば簡単(?) AWS Step Functions を使ってみた
  9. 26 まとめ もちろん AWS Lambda や別のアプローチのほうが良い場合も ありますが、AWS Step Functions を使用するメリットを理解

    し、採用を検討してみてください。 私は並行処理や AWS Lambda を複数扱うためでしか使わない 方がいいのかなと思っていました。実際に触ってみるとワー クフローは視覚的であり、アクションも豊富でむしろ簡単な 処理にこそ向いているのではと思ったほどです! AWS Step Functions を使ってみた
  10. 27 まとめ お話したこと • AWS Step Functions を採用するメリットについて • JSONata

    について • 実際に使ってみた話 今回作成した構成について、 iret.media にて詳細に記事にしようと思います! AWS Step Functions を使ってみた