DEA / ドメイン3 データ運用とサポート

Amazon SageMaker Unified Studio とデータの準備

Unified Studio は、AWS のデータ、分析、AI/ML のサービスを1つのブラウザの画面にまとめた統合開発環境です。 のクエリ、Jupyter のノートブック、ビジュアル 、ワークフロー、データカタログ (Amazon SageMaker Catalog)、生成 AI のアプリケーション開発を、同じ「プロジェクト」の中で扱えます。次世代の Amazon SageMaker の中心となる画面です。

DEA では、変換の前にデータを準備・探索・クリーニングする場として SageMaker Unified Studio を使うこと、そしてドメイン、ドメインユニット、プロジェクトの関係が問われます。

Point
  • Unified = 統合された の意味です。分析、データ処理、機械学習、生成 AI の道具を1か所に統合したことを表します。
  • Domain (ドメイン) は組織全体の器、Domain unit (ドメインユニット) は部門やチームの単位、Project (プロジェクト) はチームの作業場所です。
  • 和訳

概要

Unified Studio の構成は、組織の構造に合わせた入れ子になっています。

概要の図 公開 サブスクライブ ドメイン組織のデータと利用者の器 ドメインユニット例: 営業部門 ドメインユニット例: 財務部門 プロジェクトチームの作業場所 プロジェクト ツールノートブック・クエリエディタビジュアル ETL・ワークフロー SageMaker Catalogドメイン内で共有
概念役割
ドメイン資産 (データ)、利用者、プロジェクトをまとめる最上位の器です。企業全体で1つにも、事業部ごとに複数にもできます。
ドメインユニットドメインの中で、部門やチームごとに資産や権限を整理する単位です。ドメインユニットの所有者に、プロジェクトの作成などの権限を委ねられます。
プロジェクトチームの作業場所で、コード (ノートブック、クエリ、ワークフロー)、データの権限、計算資源をまとめます。ビジネス上の文脈、共同作業の境界、権限の境界の3つの役割を持ちます。
プロジェクトプロファイルプロジェクトのひな形です。どのツールや計算資源 (ブループリント) を使えるかを決めます。ドメインの管理者が作ります。
ブループリント のワークグループ、 Serverless、 Serverless、ワークフロー用の 環境などを作る設定です。
SageMaker Catalogプロジェクトが公開したデータ資産の目録です。ほかのプロジェクトは購読 (サブスクライブ) を申請し、承認されるとアクセスできます (#46)。

主要技術

①ドメイン、ドメインユニット、プロジェクトの使い方 ⚠️ 頻出

やりたいこと使う仕組み
会社全体のデータと利用者を1か所で管理したいドメインを作ります。利用者の認証は 、、SAML のいずれかを使えます。
部門ごとに、誰がプロジェクトを作れるかを分けたいドメインユニットを作り、プロジェクト作成のポリシーをドメインユニット単位で付与します。
チームでノートブックやクエリを共同で作りたいプロジェクトを作り、メンバーを所有者 (owner) か投稿者 (contributor) として追加します。
チームが使えるツールを統一したいプロジェクトプロファイルで、有効にするブループリントを決めます。
別のチームのデータを使いたい Catalog で資産を探し、購読を申請します。所有側のプロジェクトが承認すると権限が付与されます。

プロジェクトの中で作ったものは、SageMaker Catalog に公開しない限り、プロジェクトの外からは見えません。プロジェクトごとに Git リポジトリ (既定は AWS CodeCommit、GitHub や GitLab などにも接続可能) と の作業用の場所が用意されます。

⚠️ 頻出: 「部門ごとにデータと権限を分けて管理し、部門の責任者に委ねたい」はドメインユニット、「チームの作業と権限の境界」はプロジェクトです。


②データの探索とクエリ

ツール内容データ準備での使い方
クエリエディタ / Querybook や をエンジンにして を実行し、結果をその場でグラフにします件数、欠損、重複、値の分布を SQL で確かめます。
JupyterLab のノートブックPython や PySpark のコードをセル単位で実行しますpandas や でデータを読み、分布の確認、の検出、クリーニングを試します。
Athena の Sparkの Spark でノートブックのコードを実行します大きなデータを Spark で探索します (#53)。
Serverless / のセッション計算資源をつないで Spark を実行します大規模な変換を対話的に試します。

ノートブックは各利用者の「スペース」(計算インスタンス、 のボリューム、JupyterLab のアプリケーション) で動き、ほかのメンバーの作業と干渉しません。


③ビジュアル ETL とワークフロー

機能内容
ビジュアル 画面でソース、変換、ターゲットをつなぐと、 の Python コードが自動で生成されます。生成 AI に自然な文章で指示して流れを作ることもできます。
ワークフロー () をもとにしたワークフローで、ノートブック、クエリ、ETL のジョブを順に動かし、スケジュールで実行します。
データ品質 のルールで、テーブルの品質を確かめます (#57)。

④SageMaker Data Wrangler と Jupyter Notebook による検証とクリーニング

試験ガイドでは、データの検証とクリーニングの道具として、Jupyter Notebook と Data Wrangler が挙げられています。

道具内容向く場面
Jupyter Notebookコードで自由に検証・クリーニングします独自のロジックで欠損の補完やの除去を行い、結果を確かめながら進めたい
SageMaker Data Wrangler画面の操作で、データの取り込み、品質と分布の確認 (データ品質とインサイトのレポート)、変換、書き出しを行いますコードをあまり書かずに、向けの前処理を組み立てたい

Data Wrangler は現在 Amazon SageMaker Canvas に統合されており、画面の操作に加えて自然な文章でもデータの確認と変換を指示できます。作った変換の流れは、 や SageMaker Feature Store への書き出し、SageMaker Pipelines への組み込みに使えます。

道具主な利用者選ぶ条件
SageMaker Unified Studio (ノートブック、クエリ)データエンジニア、アナリスト、データサイエンティスト分析と開発を1つの画面で、チームで共同して行いたい
SageMaker Data Wrangler (Canvas)データサイエンティスト機械学習の前処理を画面で組み立てたい
ビジネスアナリスト機械学習に限らず、コードを書かずにデータを整えたい (#56)

試験対策

①判断マトリクス

問題文のキーワード選ぶもの理由
分析・データ処理・ML を1つの画面で、チームで共同作業 Unified Studio のプロジェクトツールと権限をプロジェクト単位でまとめます。
部門ごとにプロジェクトの作成権限を委ねたいドメインユニットと認可のポリシー部門単位で権限を管理します。
プロジェクトで使えるツールや計算資源をそろえたいプロジェクトプロファイル (ブループリント)ドメインの管理者がひな形を決めます。
他チームのデータへのアクセスを申請・承認SageMaker Catalog の購読所有側の承認で権限を付与します。
変換前のデータを で探索クエリエディタ ( / )件数や分布を手早く確かめます。
Python で自由に検証・クリーニングJupyterLab のノートブックコードで試しながら進めます。
コードを少なく、ML 向けの前処理を画面でSageMaker Data Wrangler (Canvas に統合)品質レポートと変換を画面で扱えます。
画面で を作り、 のコードを自動生成ビジュアル ETLSpark の知識がなくても作れます。

②よくある誤答

  • プロジェクトの中のデータが、自動でドメイン全体に共有されると考えること。共有するには Catalog に公開し、購読を承認します。
  • ドメインユニットとプロジェクトを同じものと考えること。ドメインユニットは組織の単位、プロジェクトは作業の単位です。
  • SageMaker Data Wrangler を独立したサービスとして探すこと。現在は SageMaker Canvas の中で使います。

参考文献

  1. ※1出題比率: AWS 公式の試験ガイドに記載された、採点対象の設問のうちその分野が占める割合です。

検索

キーワードを入力してください