[AWS Hands-on for Beginners]AWS Step Functionsの入門ハンズオンをやってみた
こんにちは、洲崎です。
AWS Hands-on for Beginnersの「AWS Step Functions 入門」をやってみたので紹介します。
「AWS Step Functions 入門 - ビジュアルツールを使ってローコードにワークフローを作成する」
「AWS Step Functions 入門 - ビジュアルツールを使ってローコードにワークフローを作成する」は、AWS Hands-on for Beginners(AWS初心者向けハンズオン)の中にあるStep Functionの入門ハンズオンです。
プログラミングを書かずに「Workflow Studio」と「AWS SDK 統合」でサーバーレスなワークフローを作成します。
Step Functionsを今まで触ったことがなくとも、設定方法を丁寧に説明されているので大丈夫です。
ハンズオンのアジェンダ
- 今回のハンズオンのシナリオ/構成の紹介 + AWS Step Functions の基本
- ステートマシーンの作成 + 「アクション」を使ってみる
- Input の受け取り + Choice ステートを使ってみる
- Parallel ステートで処理を並列に実行する
- Output の調整 + DB(Amazon DynamoDB)の更新
- Parallel ステートのもう一方の実装 - テキストを音声化する
- ステートで「タスクが終わるまで待つ」を実装する
- 音声ファイルの出力先情報を DynamoDB テーブルに格納する
- リソースの削除 + まとめ + Next Action 案
各章ごとに、埋め込まれている動画(Youtube)を見て学ぶ形です。
自分の検証AWSアカウントを利用するので、ない場合は事前に作成します。
動画の合計時間は83.06分(1時間半ほど)です。
感想やコメント
Step Functions Studioのアクション・フローの使い方を学べた
ハンズオンではStep Functions Studioでワークフローを作成するのがメインです。
このワークフローで使う「アクション」や「フロー」の機能の使い方を学ぶことができました。
「アクション」は各AWSサービスのAPIを利用する機能です。ハンズオンではDynamoDBのテーブルに書き込んだり、Pollyのmp3ファイルを作成するときに利用しました。
「フロー」はStep Functions独自のChoice(条件分岐)やWait(待ち)などを利用できます。
フローについては、下記機能を実際に手を動かしながら学ぶことができました。
- Choice(条件分岐)
- Parallel(並列処理)
- Wait(待ち)
- Pass(入力をそのまま出力)
- Succeed(成功停止)
- Fail(失敗停止)
いきなり全てのフローを利用するではなく、セクションごとに各フローを利用するので理解しながら進めることができました。
他AWSサービスとの連携
Step Functionsを通して、他のAWSサービスと連携してちゃんと処理されるかの確認が含まれていました。
例えばDynamoDBのUpdateItem
を使って、指定したテーブルにResult
の情報が保存されているかや、PollyのStartSpeeechSynthesisTask
を使ってmp3ファイルが作成されるかを確認しました。
Lambdaなどを使わずとも、AWSの各サービスのAPIを繋げる体験ができたのはよかったです。
PollyやTranslateで日本語のテキストを音声化したり英訳化するのを、全部AWSのサービスを使って実装しているのが面白いなと思いました。
ハンズオンの中でドキュメントの見方を学べる
ハンズオンは基本的には用意された環境で進めて行ったり、中にはCloudFormationなどのテンプレートが用意されていることがあると思います。
このハンズオンではマネジメントコンソールで基本作業をおこなうのですが、「アクション」のパラメーターの書き方を調べるときに、API Referenceのドキュメントを開いて確認していました。
今後Step Functionsを利用する際も、ドキュメントは都度見にいくと思いますので、ハンズオンの中でこういった場面があるのは新鮮で良かったです。
最後に
Step Functions なんもわからん、という方はまずこのハンズオンをやってみてください。
入門ハンズオンというだけあって、丁寧に解説されていますし、さまざまなAWSサービスとの連携も学べて勉強になります。
ではまた!コンサルティング部の洲崎でした。