サーバーレスなワークフロー構築サービスである AWS Step Functions の入門ハンズオンです。「Workflow Studio」と「AWS SDK 統合」機能を活用し、プログラムを書かずに AWS の各種サービスを利用するワークフローを作成します。


今回のハンズオンのシナリオを紹介します。日本語の記事(文章)をデータベースから取得し、その英訳、音声化を並列で実施し、データベースに戻します。これを実現するためにこのハンズオンで作成する最終的な構成と、あわせて AWS Step Functions の機能概要についてクイックに紹介します。各機能についてはこのあとの動画で実際に触れていただきますので、この時点ではイメージをご理解いただければ問題ございません。



この動画からハンズオンを始めます。まずは Step Functions のステートマシンを作成するところからスタートします。この時点では特に何もせず、ステートマシンの名前やタイムアウトの設定のみ行います。また、Amazon DynamoDB テーブルに日本語の記事データを追加いただきます。

今回追加した記事情報は下記の通りです。コピー&ペーストしてお使いください。

* ArticleID: 0001
* Detail: AWS Step Functions は、AWS のサービスのオーケストレーション、ビジネスプロセスの自動化、サーバーレスアプリケーションの構築に使用されるローコードの視覚的なワークフローサービスです。ワークフローは、障害、再試行、並列化、サービス統合、可観測性などを管理するため、デベロッパーはより価値の高いビジネスロジックに集中することができます。
* ArticleID: 0002
* Detail: AWS 初心者向けに「AWS Hands-on for Beginners」と題し、初めて AWS を利用する方や、初めて対象のサービスを触る方向けに、操作手順の解説動画を見ながら自分のペースで進められるハンズオンをテーマごとにご用意しています。



この動画では、アクションで Input 情報の受け取る方法を共有します。具体的には、Step Functions 実行時に指定した記事 ID を Input として受け取り、DynamoDB テーブルからその ID をキーにアイテムを取得します。また、その結果に応じて後続の処理を分岐するのですが、その条件分岐を Choice ステートというものを使って実装します。




この動画では、Parallel ステートを使って並列処理するワークフローを作る方法を紹介します。英訳と音声化を2並列で行うのですが、この動画の後半ではそのうちの英訳側の実装も進めていきます。翻訳には Amazon Transcribe というサービスを利用していきます。




英訳側の実装を進めていきます。最初の動画では詳細に説明しなかった各アクションにおける入出力について最初に解説し、出力内容をチューニングする方法を試してみます。そして、そのチューニングの結果得られた情報を用いて DynamoDB のテーブルをアップデートし、英訳側の実装を完成させます。




この動画から音声化側の実装を進めていきます。Amazon Polly を用いることで音声化を実現します。音声ファイルは mp3 形式で Amazon S3 のバケットに出力されるので、その準備も行います。その後、Amazon Polly に音声化の依頼をするところまで実装を進めます。




前の動画に引き続き、音声化側の実装を進めます。前の動画で音声化の依頼まで行ったのですが、この音声化には少し時間がかかります(このハンズオンのサンプル文言だと5秒から10秒程度)。音声化が完了したあとで DynamoDB テーブルに mp3 のパスを格納したいので、Wait ステートを使って定期的にポーリングするような実装を行っていきます。




前の動画で、音声化が完了するまで待つ部分の実装ができたので、仕上げとして mp3 の格納先情報を DynamoDB テーブルに格納する実装を進めます。こちらはこれまでやってきた作業の繰り返しになるので、動画を一度止めて、実装にチャレンジしたあとで動画を見る、というやり方にしても面白いかもしれません。




今回のハンズオンで作ったリソース群を削除します。その後、ハンズオンの振り返りと Next Action として取り組んでいただきたいことを紹介します。ぜひ次のチャレンジに繋げていただければ幸いです。






アンケートについて

ウェビナーをご視聴いただきありがとうございます。今後に向けてのフィードバックをいただければ幸いです。
アンケートはこちら

資料ダウンロード

資料はこちらよりダウンロードできます。


AWS Hands-on for Beginners シリーズ

その他の動画で学べるハンズオンシリーズは こちら よりご覧いただけます



直近の AWS 主催イベント


AWS イベントスケジュール:直近の AWS 主催イベントは、こちらよりアクセスいただけます。