"AWS Builders Online Series"とは?
- AWS Builders Online Seriesは、AWSにおける様々な技術についてのオンラインセミナーシリーズです。
- AWSのエキスパートによる最新の技術やベストプラクティスについての詳細な説明や、ハンズオンのセッションが開催されます。
- これにより、AWSを使ったアプリケーション開発や運用において最適な方法を学ぶことができます。
- 私はAWSに登録したてだったので、初心者向けのセッションを受講しました。
- その中でもT2というデータ分析に興味がある人向けのセッションを受講しました
AWS Key Messageと主要アップデート
AWS re:Invent 2022という世界的に開かれたカンファレンスでの発表のまとめです。
"差別化に繋がらない重労働を取り除く"
- 差別化に繋がらない重労働=インフラ周りの、競争力に繋がらないが必要不可欠な労働のこと
- これを無くすのがAWSのミッション
基盤技術
- High PerformanceとLow CostとSecurityは相反してしまう
- EC2ではアプリ、OS、仮想マシンの部分は顧客の責任範囲で、それら以外のインフラは全てAWSが担っている
- 例えばプロセッサーやCPU、プロトコルの開発を行っている
Purpose-built(目的に応じた設計)
- AWSの機能の約9割は顧客の要望を基に構築されている→欲しい機能が揃っている
- マネージドサービス…OSと仮想マシンの半分をAWSが担当
- サーバーレス…アプリケーション以外全てAWSが担当
- 顧客が使用した分の従量課金制なので、サーバーレスの方がより便利に低コストになる
データの活用
- データ活用のステップ
- データレイク…データの収集
- ダッシュボード…過去と現在の可視化
- ビジネスインテリジェンス…過去と現在の分析
- 機械学習…未来の予測
- データのセキュリティとアクセスは相反してしまっている→Amazon DataZoneでデータレイクのセキュリティとアクセスを向上
アプリ開発
- AWS Application Composer…ブラウザ上でサーバーレスアプリケーション環境を簡単に構築できるサービス
更なるクラウド活用の領域へ
- AWS Supply Chain…サプライチェーンの可視化(Amazon.comのノウハウ)
- Amazon Omics…遺伝子などの生体分子データのためのサービス
まとめ
- AWSは顧客のコアビジネスに集中するためインフラ周りを対応している
ノーコードではじめる機械学習-Amazon SageMaker Canvasの使いどころ
データ活用・機械学習の需要と課題
- データサイエンティスト人材が不足している→データによるビジネス課題の需要拡大
- 機械学習のワークフロー
- 課題設定
- モデル構築
- 実装
- 機械学習を実用化するには人、金、時間などのコストがかかる
Amazon SageMaker Canvasの使いどころ
- 機械学習のモデル作成や予測を簡単にする
- 機械学習の検証作業を実施→機械学習の知識が無い人も出来、データサイエンティストはさらに効率化
Amazon SageMaker Canvasの機能概要
- AWSの他のサービスと連携
- データ可視化
- ノーコードでモデル作成
- 共有
- バッチ予測やwhat-if分析
Amazon SageMaker Canvasの使い方
- csvファイルでの読み込み(目的変数有り)
- モデルの作成(Feature importanceかも可視化、要らないカラムの削除)
- 列の追加も可能
- モデルの評価
- 混同行列(モデルの評価値)の可視化(PrecisionとRecallのバランス調整も自動)
→それぞれのゾーンから対応が変わる
- 混同行列(モデルの評価値)の可視化(PrecisionとRecallのバランス調整も自動)
- 予測の実行
- 列の値を変化させた場合の結果の変化も反映
まとめ
- 機械学習の需要は拡大するが人材の供給が不足
- Amazon SageMaker Canvasによって分析、予測の検証が可能
- 導入事例の資料も公開(ML Enabled ServiceをYouTubeで公開)
知っておきたいAWSのデータベースと最適なサービスの選び方
データベースの運用負荷をAWSにオフロード
- データベース管理者はコーディングなどのパフォーマンス向上に注力したいが約30%しか時間をさけていない
- マネージドサービスによって、スキーマ設計、クエリの構築、最適化の部分のみに注力できる(他はAWSが担当)
目的別データサービス
- アプリの種類や更新頻度など年々多様化、高速化
- "Purpose built"…目的に応じた最適なデータベースを選択
- 時系列、ワイドカラムなど8つに対応
リレーショナルデータベース(RDB)
- 複数のテーブルを管理
- Eコマース、Webアプリなど多岐
- SQLを使用可能
- Amazon Aurora…MySQL、PostgreSQLと互換性あり
NoSQL
- NoSQL=RDB以外のデータベースの総称
- Amazon DynamoDB…キーバリュー型のデータを扱う。サーバーレス。数ミリ秒の処理。
- Amazon DocumentDB…JSON形式によるデータ構造を扱う。
- Amazon ElastiCache…インメモリ型キャッシングサービス。ゲームのランキングなど高速、高頻度の更新。
- Amazon Neptune…グラフ型データを扱う。複数のデータの関連性を探索。
- Amazon Timestream…時系列データを扱う。多数のソースからのデータを管理。
- Amazon Quantum Ledger Database(QLDB)…台帳型データを扱う。顧客データ、履歴の管理。
まとめ
- マネージドサービスによって注力したい業務に時間をさける
- 目的に応じて最適なDBSを選択して利用できる
30分で始める!AWSで実現するサーバーレスデータ分析
なぜデータ分析をするのか?
- 意思決定の質を高めるため
- データを可視化することでアイデアが生まれ易くなる
Step 1.ブラウザ上でデータ分析・可視化を行う
- 可視化で課題等の把握
- データが膨大、共有したい、可視化がめんどくさいといった課題
Amazon QuickSight
- サーバーレスのサービス
- 大規模な可視化に対応
- ブラウザ上で作成、共有可能
- 様々なデータソース(salesforceも可)からデータを取得
- いわゆる大規模データ版のエクセル
Step 2.さらに本格的なデータ分析をするには
- リアルタイムの可視化、加工集計など
Amazon Redshift Serverless
- ブラウザ上で可能な分析用データベース
- QuickSightとの連携が可能
- SQLによるデータの加工も実行可能
- グラフを画像として資料に乗せることも可
まとめ
- QuickSightとRedshiftを活用することで大規模データの可視化・分析が可能になる
まず知っておきたい!サーバー開始と停止の自動化によるコスト削減の第一歩
すぐに使える!AWSソリューションとは
- 課題を抱えているとき、先人の知恵を借りたい→AWSソリューションライブラリで課題と解決策を共有
- CloudFormation…テンプレートに何をどう作りたいかをコードに書くことでデプロイ(ソフトウェアやアプリケーションを実際の運用環境に配置することを意味します。これは開発したソフトウェアをテスト環境から本番環境に移すこと)を自動化する
- GitHubで公開されたソースコード
- 使い方を掲載したデプロイコード
サーバーを開始・停止する必要性とは?
- Amazon EC2,RDBなどは良く使われているが、従量課金制なので使っていない時も起動していたらお金が取られてしまう→開始と停止は重要
- マネジメントコンソールからインスタンスの停止と開始を行う
- CLIからも停止再開も可能
- SDKはPython等のプログラミング言語で操作
→いずれにせよ手動なのでいちいち面倒でミスも出てしまう
Instance Scheduler on AWSのご紹介
- 定期的にプログラミングを実行する仕組み(Amazon EventBridge)と実行環境(AWS Lambda)が必要→めんどくさい
- Instance Scheduler on AWSに記載されているCloudFormationテンプレートとソースコードを利用することで自分で1から構築しなくてもよい!
- 開始と停止のスケジュールを登録、複数リソースに対応
まとめ
- AWSソリューションに解決策がある
- 利用することでプログラムの開発が不要ですぐに利用できる
- 今回はその一例としてサーバー開始と停止を自動化するInstance Scheduler on AWSを紹介した
全体のまとめ
- 参加してみての感想ですが、営業色が強いながらも分かり易い説明で確かに利用してみたくなったオンライン講座でした。
- 今後AWSを活用してみたい、データサイエンティスト目指す初学者の方にとってはインフラ周りやAWSの概要を把握できる良い機会だったと思います。