1/18 AWS Builders Online 受講レポート
はじめに
今回は先日、2023年1月18日(水)にLive配信されたAWS Builders Online Seriesの内容を簡単にまとめました。
こちらの記事は、AWS初心者の私が知識のアウトプットのため作成しています(AWSは学習方法としてInput-Outputを推しているようなので)。
比較的初心者向けの内容だったので、AWSまだ扱っていない人には参考になる情報があるかもしれません。
詳しくしりたい方は、#AWSBuilders で調べてみると、他の方が共有している情報も見ることが可能だと思います。
ウェビナーのアジェンダ
- AWS re:Invent 2022 re:Cap AWS Key Message と主要アップデート
- ノーコードではじめる機械学習 Amazon SageMaker Canvas の使いどころ
- 知っておきたい AWS のデータベースと最適なサービスの選び方
- 30分で始める! AWS で実現するサーバーレスデータ分析
- まず知っておきたい! サーバー開始と停止の自動化によるコスト削減の第一歩
1. AWS re:Invent 2022 re:Cap AWS Key Message と主要アップデート
AWSが提供する価値
まず初めに、スピーカーが参加者に対して「AWSクラウドが利用者に提供する価値」について、
「差別化に繋がらない重労働を取り除く」
と話していました。これは言い換えると「お客様に開発により注力していただく」となります。
具体的に説明すると、我々開発者が他社と競争する上で重要なこととしてプロダクトの差異があり、それを実現できるのはアプリケーション開発なので、利用者にはできる限りこの開発作業に時間を割きたいいただきたく、そのためのサービスを提供する、とのことでした。
AWS re:Invent 2022 基調講演エッセンス
次に、先日アメリカ・ラスベガスで行われたAWS最大のカンファレンスイベント「AWS re:Invent」での4つの基調講演について内容説明がありました。
基盤技術
ここで話していたのは、
- 高パフォーマンス・低コスト・セキュリティはトレードオフの関係であること
です。しかし、これらはどれも重要なので、開発者は3者すべてを高水準にしたいです。
AWSではこれを実現するために新しい仕組み、サービスを提供し続けているとのことでした。
その例として
- 仮想マシンサービスのEC2における責任共有モデル
- Nitro V5へのバージョンアップによる性能の向上
- 最新版プロセッサーであるAWS Graviton3E
- ネットワークプロトコルとしてAWSで取り扱っているSRD
- SRDを採用したネットワークインターフェースのENA Express
を紹介し、より高いコストパフォーマンスを実現するため、基盤サービスへの投資を行っていることをお話しされていました。
Purpose-built(目的に合わせて最適化したサービス)
ここではセクションでは冒頭に「"Good enough" simply isn't good enogh(「これで充分」では本当に充分とは言えない)」という言葉を提示されていました。つまり、利用者が抱えているビジネスの問題を解決するために使うツールは、充分にパワーを発揮でき、かつ用途に最適化されていなくてはいけない、ということです。
AWSでは利用者からのフィードバックを元にサービスの開発・改善を行っていて、機能の90%以上は利用者の要望を元に構築されているようです。
そしてトレンドとして以下の2つのキーワードを挙げていました。
- マネージドサービスとサーバーレスサービス
...EC2と異なり、OSのアップデートなどの作業もAWSでやってくれるので、利用者はアプリのプログラムコードのみ気にすればよい。また、起動時間ではなく処理のリクエストがあった場合のみコストが発生する仕組みなのでコストが抑えられる。 - 目的に特化したサービス Purpose-built
...単に高機能なサービスを用意するのではなく、目的に合ったもの用意するという考え方。大工道具のようなイメージ。データの種類やアクセスパターンに応じてサービスを選択できる。
例:Amazon OpenSearch Serverless
これまでサーバーレスでなかったOpenSerch Servise(システムログの分析、外国語文書の検索・分析のサービス)をサーバーレスとして使えるようにしたサービス。
データ活用
このセッションの冒頭では、「Data explosion」という言葉に併せて旅行会社エクスペディアの膨大なデータや計算量の例を紹介し、それらを活用するステップを収集・蓄積→可視化→分析→機械学習のように挙げていました。これらを行う際、「データの蓄積までは行ったがどのように分析すればよいかわからない」という声があったようです。これらを満たすためにAWSでは早速サービス作成に取り掛かったようですが、今回重要視した点としてControl(データの統制とセキュリティ)とAccess(データへの容易なアクセス) を挙げていた、とのことでした。これらもまた相反する要求になるので、両立で得切るようなガバナンスモデルが必要ですが、今回のセッションではそのモデルの発表があったようです。それが、Amazon DataZoneです。
「Amazon DataZone」
企業の膨大なデータを一か所に集積するだけでなく、管理方法やセキュリティの部分も一元化するようなビジネスデータカタログです。データの持ち主はデータの置き場所・使い方を登録して、アクセス許可の設定などができます。ユーザーはカタログにアクセスし、AWSの分析系サービスとその場で接続し分析を開始できます。
アプリケーション開発
このセッションのスピーカーは冒頭に「Simplifyng the Complex(複雑性をシンプルに)」というフレーズを挙げ、「アプリケーション環境構築が複雑なので、それらをシンプルにしたい」と話していたそうです。これまでウェブサーバーやアプリケーションサーバーの処理実行の部分をAWS Lambdaに置き換えてサーバーレスにしていくのが典型的な方法でしたが、「本当はlambdaさえも触りたくない、コードを書いてすぐリリースしたい」という要望に応えるサービスとして発表されたのがAWS Application Composerです。
AWS Application Composer
これはブラウザ上からアプリケーション環境を容易に構築できるサービスで、作ったアプリケーションはテンプレートとして再利用できるため、開発者がコード開発に注力できるといった特徴があります。
さらなるクラウド活用の領域へ
AWSではこれまでに業務領域に直接価値を提供するサービスも提供してきています。代表的なものとして、Amazon Connect(コンタクトセンターを作るサービス)などがあります。今回のre:Inventでも、業務に貢献するような新しいサービスとして、スピーカーが2つ紹介されていたようです。それがAWS Supply ChainとAmazon Omicsです。
AWS Supply Chain
サプライチェーンの可視化性能を高め、より早くデータに基づいた判断を可能にするサービスです。Amazon.comの30年のノウハウを基に、予測、アラート、レコメンデーションなどを提供し、お客様のサプライチェーン管理に役立つこのようなサービスが登場したとのことです。
Amazon Omics
遺伝子情報をはじめとする生体分子データの活用に特化したサービスとして出てきました。過去10年間の、AWSが協業しているこの領域のお客様の知見を基に設計されたサービスとなっているようです(具体的なサービス説明はなし)。
まとめ
最近の経済やお客様の課題を取り巻く状況を、CEOは「VAST(広大)・Unfathomable(深遠)・Extreme(極限)・Possibilities(可能性)」という言葉で表していたようです。これは、非常に広大で、深遠で、極限の状態にさらされながらも、一方で新しい可能性がある、というような観点です。このような様々な課題を解決していくためにAWSはお客様にサービスや価値を提供していくということでした。最後に本基調講演のまとめを以下のようにしていました。
- 基盤技術:パフォーマンス・コスト・セキュリティを両立
- サーバーレス:基盤運用やキャパシティ計画を不要に
- Purpose-built:データの特性に応じてすぐに使えるサービスを用意
- データ活用:ガバナンスと使い勝手を両立
- アプリケーション開発:開発者が簡単にアプリケーション環境を構築
- さらなるクラウド活用の領域へ:業務特化の複雑な課題解決を加速
そしてこれらはすべて、お客様のコアビジネスへの集中のためにAWSは日々このようなアップデートを行っているとのことでした。
2. ノーコードではじめる機械学習 Amazon SageMaker Canvas の使いどころ
データ活用・機械学習の受容と課題
はじめに、スピーカーはデータを基に、以下の内容を挙げていました。
- 多くの企業が、目標通りのデータサイエンティストの確保をできていないこと
- 多くの企業が、「データによるビジネス課題解決を得意とする人材」を採用・育成したいと考えていること
これまでの典型的な機械学習の実用化フローは、
- ビジネス課題の設定
- 機械学習の問題設定
- データ収集・統合
- データ準備
- データ可視化分析
- 特徴量エンジニアリング
- モデル学習
- モデル評価
- ビジネスゴールの評価
- プロダクション
でした。
ビジネスアナリスト、データサイエンティスト、ソフトウェアエンジニア等の人材が必要で、非常に多くの知識・時間・人的リソースをかけて行われていたようです。しかし上のデータからわかるように、採用・育成による即時的な解決が難しいです。
そこで、AWSでは機械学習を簡単に導入するために以下のように課題を解決すればよいと考えました。
- 採用・育成による即時的な解決が難しい→ノーコード機械学習サービスによってビジネスアナリストに作業を移譲
- 実用化には多くの時間やコーディング・作業が必要→既存のデータサイエンスチームがノーコード/ローコードサービスを活用し効率化
そのためのサービスがAmazon SageMaker Canvasです。
Amazon SageMaker Canvasの概要・使いどころ
Amazon SageMaker Canvasは一言でいうと、機械学習モデルの作成や予測をノーコード・GUIで実行できるサービスです。
このサービスで効率化できる部分は先ほど説明済みフローの3~8の部分です。
機能概要としては
- ローカルPC、S3、Redshift、Snowflakeといったさまざまなソースからデータを統合可能
- データを視覚的に素早く理解
- ワンクリックで自動的に機械学習モデルを構築
- 詳しい評価指標で予測の説明性を理解
- モデルをデータサイエンティストと共有
- バッチ予測やwhat-ifシナリオの分析
です。料金体系の概要としては、
- セッション料金
...SageMaker Canvasログイン時~ログアウト時で課金(1.9USD/1時間) - トレーニング料金
...学習データのセル数に応じて課金(最初の1000万セル:30USD/100万セル)
です。ユースケースは
-
セールスとマーケティング
- 販売コンバージョン
- 売上予測
- 顧客の離反傾向
- 顧客のLifetime Value(LTV)予測
- Marketing Mix Modeling(MMM)分析
-
ファイナンスと会計
- 信用リスクスコアリング
- 支払い遅延予測
- 不正検知
- ポートフォリオ最適化
- 買掛金処理の自動化
-
小売
- 需要予測
- 在庫管理とスケジューリング
- 配達時間予測
などがあります。
Amazon SageMaker Canvasの使い方
これらの説明のあと、スピーカーによるデモセッションがありました。
ここでは内容は割愛します。
事例紹介
株式会社マルハンでは、これまで手作業で行っていた売上予測をSageMaker Canvasを使い素早く高精度に実施できるようになったようです。
マルハンでは、ビジネス課題として以下がありました。
- 店舗ごとの売り上げ業務をしているがあるが、役職者の業務時間を取っていることと、知識の属人化と経験の差により、予測精度の誤差が大きくなっている。
この解決策として、
- Amazon SageMaker Canvasを活用し、AIによる売上予測を実施
- GUIによって、直感的な操作で活用可能
を取りました。これらの効果としては、
- 役職者の売上予測業務に関する時間を削減
- 従来の予測と比較して、より優れた精度での予測を実現
- 将来的に、予測モデルの活用範囲を広げて、バックエンド業務の効率化を視野に入れる。
があらわれました。
本来必要な知識がなくても機械学習が実行できるので、属人化を防ぎAIを身近にできることは良いですね。
まとめ
このセッションのまとめとして、以下の3つを挙げていました。
- 機械学習の需要は増えているが、人材の供給は追いついていないという課題
- 機械学習を導入する際に時間と人的リソースを削減するため、まずはノーコードのAmazon SageMaker Canvasでクイックに検証をはじめてみる
- 評価と検証を繰り返していき、必要に応じて他のサービスを利用していく
3. 知っておきたい AWS のデータベースと最適なサービスの選び方
データベースの運用負荷をAWSにオフロード
ここではまずデータベース管理者のタスクと時間について、データベースの運用負荷が高いことを示していました。データによると、本来時間を注力したいスクリプティングやコーディング、パフォーマンスチューニングにかけられる時間は3割もなく、その他のインストールやパッチ適用、バックアップ/リカバリなどに6割も時間を費やしています。顧客体験を良くするため、新しい価値を生むための仕事に時間をかけることができていないのです。
AWSのDBマネージドサービスを使えば、注力したい部分以外をAWS側で管理してくれるため、インフラストラクチャ管理でなくアプリケーションの革新と構築に専念することができます。
目的別のデータベースサービスとは
最新のアプリケーション要件として、より多くのパフォーマンス・拡張性・可用性が必要になってきています。例えばデータボリュームはテラバイト~ペタバイトであったり、交通アクセスもウェブ・モバイル・IoT・デバイスなど多様であったりします。
また、アプリのアーキテクチャのパターンも、1970~現在にかけて大幅に進化しています。
Amazon.comでは、Purpose-Built Databasesによってそれぞれのワークロードに最適なDBエンジンを選択し、コストとユーザー体験の最適化を実現させました。
それぞれのデータベースサービス
リレーショナルデータベース
リレーショナルデータベースのサービスとして、
- Amazon Relational Database Service
- Amazon Aurora
があります。
Amazon RDSはデータベースエンジンを6つの中から選択できるサービスです。容易な管理、高可用性、高スケール、高速でセキュアなサービスとなっています。
Amazon Auroraはクラウド向けに再設計されたMySQL、PostgreSQLと互換性のあるRDBMSです。優れた性能と拡張性、高可用性と耐久性、高い安全性、フルマネージドなサービスとなっています。
NoSQLデータベース
NoSQLデータベースサービスとして、
- Amazon DynamoDB(柔軟なキーバリューデータベース)
- Amazon DocumentDB(高速、スケーラブル、高可用かつマネージド型MONGO DB互換のデータベースサービス)
- Amazon ElasticCache(マネージド、REDIS/MEMCACHED互換、低レイテンシー、インメモリデータストア)
- Amazon Neptune(マネージドグラフデータベース)
- Amazon Timestream(高速でスケーラブルな完全マネージド時系列データベース)
- Amazon Quantum Ledger Database(マネージド型台帳データベース)
があります。
4. 30分で始める! AWS で実現するサーバーレスデータ分析
なぜデータを分析するのか
データ分析を行うことで以下に繋がります。
- ビジネス課題に対して、データ(=ファクト)に基づいて意思決定をする
- 小さなPDCAサイクルの積み重ねが確度の高いビジネス施策に繋がる
- ビジネス施策の勝率が高まることで、経営全体の最適化に繋がる
まとめると、データ分析の目的は「日々のビジネス活動における意思決定をより良いものにするため」であるといえます。
ブラウザ上でデータ分析・可視化を行う
ここでは、Amazon QuickSightの紹介をしていました。このサービスの特徴として以下があります。
‐ すぐに使い始められるサーバーレスのBIサービス
- 可視化で的なインサイトとアクションに繋げる
- 大規模なデータに対して高速な集計や分析が可能
- ブラウザのみで全機能が利用可能
- さまざまなデータソースに接続可能
- 作成したグラフを素早く簡単に共有
このあと、QuickSightを使用したデモが行われました。
さらに本格的なデータ分析を行う
こちらでは、データソースからリアルタイムでデータを可視化したい、可視化する前に生データに対して加工集計を行っておきたい、可視化だけでなくSQLを使って分析したいなど、より本格的にデータ分析を行う場合に使うサービスとして、Amazon Redshift Serverlessを紹介していました。特徴として以下をあげていました。
- すぐに始められる(3ステップ)
- QuickSightとの連携も可能
- リアルタイムでの分析・可視化もサーバーレスで簡単に実現
この後、QuickSightとRedshift Serverlessを連携させたデモを行っていました。
まとめ
本セッションのまとめとして、
- ビジネスにおける意思決定の質を高めるために、データ分析・可視化は重要
- AWSの分析サービスを活用することで,ITの専門家不要でデータ分析をスタートすることができる
- QuickSight、Redshift Serverlessはどちらもサーバーレスなので、インフラを気にせずすぐスタートできる
- 従量課金なので分析を始めやすい
5. まず知っておきたい! サーバー開始と停止の自動化によるコスト削減の第一歩
すぐに使える!AWSソリューションとは
このセッションではまず、「解決したい課題があるけど、すでに誰かがやっていて解決策どこかに公開されてないかな」「使っていない時間にサーバー停止したいんだけど、誰か同じことやってないかなぁ」という利用者の経験に対し、役立つサービスとしてAWSソリューションを紹介していました。
AWSソリューションとは、多くのお客様で発生した共通した課題に対するソリューションを提供し、2022年12月時点で全83個のソリューションを公開しています。
具体的に提供されている内容としては以下です。
- すでに組み合わされたAWSサービスをデプロイするCloudFormationテンプレート
- GitHubにて公開されたソースコード
- 使い方が書かれたデプロイガイド
※CloudFormationテンプレートとは、何をどう作りたいかをコードで記述することでデプロイを自動化するサービスです。
同じことを誰かが悩んでいそうだと思ったことを検索してみると、解決方法が見つかるかもしれません。「AWSソリューション XXX」と検索してみましょう。
サーバーを開始、停止するためには?
最初に、現在使用しているサーバーは常に起動している必要があるか、という問いかけとともに、Amazon EC2を24時間365日起動した場合と平日09:00~21:00にした場合で、コストが64%減も削減できることを提示し、使い始めるときに開始、使い終わったら停止をきちんと行うことの重要性を説明していました。
Instance Scheduler on AWSのご紹介
開始・停止はマネジメントコンソールやAWS CLIなどで行うことが可能ですが、これらは毎回手動で行う必要があり手間となってしまします。
そこで紹介されたのがAWS Instance Scheduler on AWSです。
このソリューションでは、公開されているCloudFormationテンプレートとソースコードを利用し、自分で開発することなく、Amazon EC2およびAmazon RDSインスタンスの開始スケジュールと停止スケジュールを設定しての自動的な開始や停止を実現出来ます。
利点としては以下があります。
- 簡単にデプロイできる
- 柔軟にスケジュールを設定できる
- 複数リソースに対応できる
具体的な設定の仕方としては、ピリオド定義(識別する名前、インスタンスの開始時刻、終了時刻、曜日を設定)を作成し、それを基にスケジュール定義(タイムゾーンを指定し、適用したいピリオド定義の名前を設定)を作成し、インスタンスにリソースタグで紐づけするだけです。
リソースタグで設定するため、複数のリソースにも簡単に対応可能です。
まとめ
最後に、以下のように内容を振り返りました。
- AWSは世界中で利用されており、AWSソリューションとしてよくある課題の解決策がすでに公開されている可能性がある
- AWSソリューションはAWSサービスの構築、プログラムの開発が不要ですぐに利用できる
- Amazon EC2、Amazon RDSを指定した時刻で開始、停止する方法としてInstance Scheduler on AWSをご紹介
おわりに
以上で、AWS Builders Online Seriesの内容説明は終わりです。
これからAWSの利用を考えている方がいた場合、この記事では簡単な説明のみにとどめていますので、詳しく調べてみると良いかもしれません。
Discussion