オンライン サービングを設定するには、まず Bigtable オンライン サービングまたは最適化されたオンライン サービング用のオンライン ストア インスタンスを作成する必要があります。 Bigtable オンライン サービングと最適化されたオンライン サービングの違いについては、オンライン サービングのタイプをご覧ください。
オンライン ストアの作成中に Bigtable オンライン サービングまたは最適化されたオンライン サービングを選択した後に、オンライン サービングの種類を変更することはできません。ただし、最適化されたオンライン サービング用に作成されたオンライン ストア インスタンスのサービス エンドポイントの構成は変更できます。
オンライン ストアを作成したら、特徴ビューを追加し、それらの特徴ビューを BigQuery の特徴データソースに関連付けることができます。
Bigtable オンライン サービング用のオンライン ストアを作成する
自動スケーリングを使用して、Bigtable オンライン サービング用のオンライン ストア インスタンスを作成するには、次のサンプルを使用してください。
コンソール
Google Cloud コンソールで Bigtable オンライン サービング用のオンライン ストアを作成するには、次の操作を行います。
Google Cloud コンソールの [Vertex AI] セクションで、[Feature Store] ページに移動します。
[オンライン ストア] をクリックして、[オンライン ストア] セクションに移動します。
[作成] をクリックして [オンライン ストアを作成] ページを開きます。
オンライン ストアの名前を指定します。
省略可: ラベルを追加するには、[ラベルを追加] をクリックし、ラベル名と値を指定します。オンライン ストアには複数のラベルを追加できます。
[オンライン ショップ用のストレージ ソリューションの選択] フィールドで、[Bigtable] をクリックします。
最小ノード数、最大ノード数、CPU 使用率の目標値を必要に応じて変更します。
[作成] をクリックします。
REST
FeatureOnlineStore
リソースを作成するには、featureOnlineStores.create メソッドを使用して POST
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: オンライン ストアを作成するリージョン(
us-central1
など)。 - PROJECT_ID: 実際のプロジェクト ID。
- FEATUREONLINESTORE_NAME: 新しいオンライン ストア インスタンスの名前。
- BOOLEAN:(省略可)エンベディング管理をサポートするオンライン ストアを作成するには、「
true
」と入力します。デフォルト値はfalse
です。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME
リクエストの本文(JSON):
{ "bigtable": { "auto_scaling": { "min_node_count": 1, "max_node_count": 3, "cpu_utilization_target": 50 } } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata", "genericMetadata": { "createTime": "2023-09-18T17:49:23.847496Z", "updateTime": "2023-09-18T17:49:23.847496Z" } } }
最適化されたオンライン サービング用のオンライン ストアを作成する
最適化されたオンライン サービングを使用する場合、パブリック エンドポイントまたは専用の Private Service Connect エンドポイントのいずれかから特徴を提供するようにオンライン ストアを構成できます。VPC ネットワーク内でパブリック エンドポイントよりも低いレイテンシで特徴を提供する場合は、Private Service Connect エンドポイントを使用します。
最適化されたオンライン サービング用にパブリック エンドポイントを使用してオンライン ストアを作成する
次のサンプルでは、最適化されたオンライン サービング用にパブリック エンドポイントを使用してオンライン ストアを作成します。
コンソール
Google Cloud コンソールで最適化されたオンライン サービング用のオンライン ストアを作成するには、次の操作を行います。
Google Cloud コンソールの [Vertex AI] セクションで、[Feature Store] ページに移動します。
[オンライン ストア] をクリックして、[オンライン ストア] セクションに移動します。
[作成] をクリックして [オンライン ストアを作成] ページを開きます。
オンライン ストアの名前を指定します。
省略可: ラベルを追加するには、[ラベルを追加] をクリックし、ラベル名と値を指定します。オンライン ストアには複数のラベルを追加できます。
[オンライン ショップ用のストレージ ソリューションの選択] フィールドで、[最適化] をクリックします。
[作成] をクリックします。
REST
オンライン ストア インスタンスを作成するには、featureOnlineStores.create メソッドを使用して POST
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID:
FeatureOnlineStore
インスタンスを作成するリージョン(us-central1
など)。 - PROJECT_ID: 実際のプロジェクト ID。
- FEATUREONLINESTORE_NAME: 新しい
FeatureOnlineStore
インスタンスの名前。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME
リクエストの本文(JSON):
{ "optimized": {} }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata", "genericMetadata": { "createTime": "2023-09-18T17:49:23.847496Z", "updateTime": "2023-09-18T17:49:23.847496Z" } } }
最適化されたオンライン サービング用に Private Service Connect エンドポイントを使用してオンライン ストアを作成する
次のサンプルでは、最適化されたオンライン サービング用に Private Service Connect を使用してオンライン ストアを作成します。
REST
オンライン ストア インスタンスを作成するには、featureOnlineStores.create メソッドを使用して POST
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID:
FeatureOnlineStore
インスタンスを作成するリージョン(us-central1
など)。 - PROJECT_ID: 実際のプロジェクト ID。
- FEATUREONLINESTORE_NAME: 新しい
FeatureOnlineStore
インスタンスの名前。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME
リクエストの本文(JSON):
{ "optimized": {}, "dedicated_serving_endpoint": { "private_service_connect_config": { "enable_private_service_connect": true, "project_allowlist": ["PROJECT_NAME"] } } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata", "genericMetadata": { "createTime": "2023-09-18T17:49:23.847496Z", "updateTime": "2023-09-18T17:49:23.847496Z" } } }
次のステップ
特徴ビューを作成する方法を学ぶ。
オンライン ストアを更新する方法を学ぶ。