オンラインストアでの作業のための認証
この記事では、特徴量テーブルをオンライン ストアに公開し、オンライン ストアから特徴量テーブルを検索するための認証を構成する方法について説明します。
この表は、各アクションでサポートされている認証方法を示しています。
オンラインストアプロバイダー | 公開 | レガシーMLflow Model Servingでの特徴量検索 | Model Servingでの特徴量検索 |
---|---|---|---|
Amazon DynamoDB (Feature Engineeringクライアントの任意のバージョン、または Feature Store クライアント v0.3.8 以降) | インスタンスプロファイル attached to a Databricks クラスター または |
| インスタンスプロファイル attached to a Databricks serving Endpoint または |
Amazon Aurora (MySQL 互換) |
|
| サポートされていません。 |
Amazon RDS MySQL |
|
| サポートされていません。 |
特徴量テーブルをオンラインストアに公開するための認証
特徴量テーブルを WILD に公開するには、書き込み認証を提供する必要があります。
Databricks では、Databricks クラスターにアタッチされたインスタンスプロファイルを使用して書き込み認証を行うことをお勧めします。または、 資格情報を Databricks シークレットに格納し、発行時に write_secret_prefix
で参照することもできます。
インスタンスプロファイルまたは IAM ユーザーには、次のすべてのアクセス許可が必要です。
dynamodb:DeleteItem
dynamodb:DeleteTable
dynamodb:PartiQLSelect
dynamodb:DescribeTable
dynamodb:PartiQLInsert
dynamodb:GetItem
dynamodb:CreateGlobalTable
dynamodb:BatchGetItem
dynamodb:UpdateTimeToLive
dynamodb:BatchWriteItem
dynamodb:ConditionCheckItem
dynamodb:PutItem
dynamodb:PartiQLUpdate
dynamodb:Scan
dynamodb:Query
dynamodb:UpdateItem
dynamodb:DescribeTimeToLive
dynamodb:CreateTable
dynamodb:UpdateGlobalTableSettings
dynamodb:UpdateTable
dynamodb:PartiQLDelete
dynamodb:DescribeTableReplicaAutoScaling
Databricksクラスターにアタッチされたインスタンスプロファイルを通じて書き込み認証を提供する
Databricks Runtime10.5ML 以降 実行中のクラスターでは、DynamoDB オンラインストアに発行するときに、クラスターにアタッチされたインスタンスプロファイルを書き込み認証に使用できます。
これらのステップは、DynamoDB オンラインストアに発行する際の書き込み認証にのみ使用してください。
-
オンラインストアへの書き込み権限を持つ インスタンスプロファイル を作成します。
-
インスタンスプロファイルを Databricks クラスターにアタッチするには、次の2つの手順に従います。
-
インスタンスプロファイルが添付されたクラスターを選択して、オンラインストアに公開するコードを実行します。 明示的なシークレット認証情報や
write_secret_prefix
をオンラインストアの仕様に提供する必要はありません。
Databricks シークレットを使用して書き込み資格情報を提供する
「Databricks シークレットを使用する」の手順に従います。
MLflow モデルが提供されているオンライン ストアから機能を検索するための認証
Databricks でホストされる MLflow モデルがオンライン ストアに接続して機能値を検索できるようにするには、読み取り認証を提供する必要があります。
Databricks では、Databricks提供されるモデルにアタッチされたインスタンスプロファイルを使用してルックアップ認証を提供することをお勧めします。または、 資格情報を Databricks シークレットに格納し、発行時に read_secret_prefix
で参照することもできます。
提供されるモデルに設定されたインスタンスプロファイルを通じてルックアップ認証を提供する
-
オンラインストアへの書き込み権限を持つ インスタンスプロファイル を作成します。
テーブルをパブリッシュするときに、 read_prefix
を指定する必要はなく、指定した read_prefix
はインスタンスプロファイルで上書きされます。
Databricks シークレットを使用して読み取り資格情報を提供する
「Databricks シークレットを使用する」の手順に従います。
Databricks シークレットを読み取りと書き込みの認証に使用します。
このセクションでは、Databricks シークレットを使用して認証を設定する手順を示します。 これらのシークレットの使用方法を示すコード例については、「 オンラインストアに機能を公開する」を参照してください。
-
オンラインストアの資格情報を含む 2 つのシークレットスコープを作成します。1 つは読み取り専用アクセス (ここでは
<read-scope>
で表示) 用、もう 1 つは読み取り/書き込みアクセス用(ここでは<write-scope>
で表示)。または、既存のシークレットスコープを再利用することもできます。書き込み認証にインスタンスプロファイル( Databricks クラスターレベルで設定)を使用する場合は、
<write-scope>
を含める必要はありません。読み取り認証にインスタンスプロファイルを使用する場合 ( Databricks Serving エンドポイントレベルで設定)、<read-scope>
を含める必要はありません。 -
ターゲットのオンラインストアの一意の名前を選択します(ここでは
<prefix>
と表示されています。DynamoDB (Feature エンジニアリングクライアント、および Feature Store クライアント v0.3.8 以降のいずれかのバージョンで動作) の場合は、次のシークレットを作成します。
- ターゲットオンラインストアへの読み取り専用アクセス権を持つ IAM ユーザーのアクセスキー ID:
databricks secrets put-secret <read-scope> <prefix>-access-key-id
- ターゲットオンラインストアへの読み取り専用アクセス権を持つIAMユーザーのシークレットアクセスキー:
databricks secrets put-secret <read-scope> <prefix>-secret-access-key
- ターゲットオンラインストアへの読み取り/書き込みアクセス権を持つIAMユーザーのアクセスキーID:
databricks secrets put-secret <write-scope> <prefix>-access-key-id
- ターゲットのオンラインストアへの読み取り/書き込みアクセス権を持つIAMユーザーのシークレットアクセスキー:
databricks secrets put-secret <write-scope> <prefix>-secret-access-key
SQL ストアの場合は、次のシークレットを作成します。
- 対象のオンラインストアへの読み取り専用アクセス権を持つユーザー:
databricks secrets put-secret <read-scope> <prefix>-user
- 対象のオンラインストアへの読み取り専用アクセス権を持つユーザーのパスワード:
databricks secrets put-secret <read-scope> <prefix>-password
- 対象のオンラインストアへの読み取り/書き込みアクセス権を持つユーザー:
databricks secrets put-secret <write-scope> <prefix>-user
- 対象のオンラインストアへの読み取り/書き込みアクセス権を持つユーザーのパスワード:
databricks secrets put-secret <write-scope> <prefix>-password
- ターゲットオンラインストアへの読み取り専用アクセス権を持つ IAM ユーザーのアクセスキー ID:
ワークスペースあたりのシークレットスコープの数には制限があります。 この制限に達しないように、すべてのオンラインストアにアクセスするための単一のシークレットスコープ を定義して共有できます 。