特徴データをオンライン ショップに同期する

データ同期は、BigQuery の特徴データソースを使用して、オンライン ストア内の特徴ビューのデータを更新または同期するプロセスです。オンライン ストア全体のデータを同期するには、すべての特徴ビューのデータを同期する必要があります。

特徴ビューのデータ同期は、次の 2 つの方法で行われます。

  • スケジュール設定されたデータ同期: 特徴データは、FeatureView.sync_config パラメータを使用して特徴ビュー用に構成された同期スケジュールに従って自動的に更新されます。

  • 手動データ同期: スケジュール設定された次回のデータ同期オペレーションを待つことなく、特徴ビューのデータ同期を手動で開始できます。

データ同期には、BigQuery のリソースの使用に対する費用が発生する場合があります。特徴ビューの同期スケジュールを設定しながら費用を最適化する方法については、同期中の費用を最適化するをご覧ください。

始める前に

まだ行っていない場合は、Vertex AI に対する認証を行います。

このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

    Install the Google Cloud CLI, then initialize it by running the following command:

    gcloud init

データの同期を手動で開始する

次のサンプルを使用して、特徴ビューでデータの同期を手動で開始します。ただし、特徴ビューに対して有効にできるデータ同期オペレーションは一度に 1 つのみです。別の同期の進行中にデータ同期を手動で開始しようとすると、新しい同期オペレーションは、進行中の同期オペレーションが終了した後に開始されます。

REST

FeatureView でデータ同期を手動で開始するには、featureViews.sync メソッドを使用して POST リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • LOCATION_ID: オンライン ストアがあるリージョン(us-central1 など)。
  • PROJECT_ID: プロジェクト ID。
  • FEATUREONLINESTORE_NAME: 特徴ビューを含むオンライン ショップの名前。
  • FEATUREVIEW_NAME: データ同期を手動で開始する特徴ビューの名前。

HTTP メソッドと URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:sync

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

次のコマンドを実行します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:sync"

PowerShell

次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:sync" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "featureViewSync": "projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/featureViewSyncs/OPERATION_ID"
}

次のステップ