投稿日: Dec 5, 2022

Amazon SageMaker Studio は機械学習のための完全統合開発環境 (IDE) です。Studio では Amazon EMR との組み込み統合がサポートされているため、データサイエンティストは Studio ノートブックから Apache Spark のようなフレームワークを使用して、データをペタバイト規模でインタラクティブに準備することができます。SageMaker Studio は、Amazon EMR を介してデータにアクセスする際に、AWS Lake Formation を使ったきめ細かなデータアクセス制御のサポートを開始しました。

これまで、EMR クラスターで実行されるすべてのジョブは、データにアクセスするために同じ IAM ロール (クラスターの EC2 インスタンスプロファイル) を使用していました。そのため、異なるデータソース (例えば、異なる S3 バケット) にアクセスする必要があるジョブを実行する際、そのようなデータソースすべての集合へのアクセスを許可するポリシーを用いて EC2 インスタンスプロファイルを設定する必要がありました。さらに、複数のユーザーグループに異なるデータアクセスを有効にしたい場合、それぞれのグループに 1 つずつ別々のクラスターを作成する必要があり、運用上のオーバーヘッドとなっていました。Studio ノートブックから EMR に送信されたジョブは AWS LakeFormation を使用して、それぞれにきめ細かなデータアクセス制御を適用できませんでした。

本日より、SageMaker Studio ノートブックから EMR クラスターに接続する際に、接続に使用したい特定の IAM ロール (ランタイム IAM ロールと呼ばれる) を選択できるようになりました。Studio ノートブックで作成された Apache Spark、Hive、Presto のジョブは、そのランタイムロールにアタッチされたポリシーによって許可されたデータとリソースにのみアクセスします。またデータが、AWS LakeFormation で管理されたデータレイクからアクセスされたものである場合、ランタイムロールにアタッチされたポリシーを使用して、テーブルや列レベルのアクセスを適用できます。この新しい機能により、複数の SageMaker Studio のユーザーが、カスタマイズされたデータアクセス許可によって範囲が決められたランタイムロールをそれぞれ使用して、同じ EMR クラスターに接続できます。共有クラスターにおいても、ユーザーセッションは互いに完全に分離されています。この機能により EMR クラスターのプロビジョニングを簡素化できるため、運用上のオーバーヘッドとコストを削減できます。

この機能は、米国東部 (オハイオ)、米国東部 (バージニア北部)、米国西部 (オレゴン)、欧州 (パリ) の AWS リージョンにおいて Amazon EMR 6.9 に接続されている SageMaker Studio で一般提供されています。詳細については、このブログ記事を参照してください。