データソースを準備する

Vertex AI Feature Store を使用してオンラインで特徴のサービングを開始するには、BigQuery で次のように特徴データソースを設定する必要があります。

  1. 特徴データを使用して BigQuery のテーブルまたはビューを作成します。特徴データを BigQuery のテーブルまたはビューに読み込むには、対象のデータを使用して BigQuery データセットを作成し、BigQuery テーブルを作成して、データセットからテーブルに特徴データを読み込みます。

  2. 特徴データを BigQuery のテーブルまたはビューに読み込んだ後、このデータソースを Vertex AI Feature Store でオンライン サービングに使用できるようにする必要があります。データソースをオンライン サービング リソース(オンライン ショップや特徴ビュー インスタンスなど)に接続するには、次の 2 つの方法があります。

    • 特徴グループと特徴を作成してデータソースを登録する: 特徴グループと特徴をオンライン ショップの特徴ビュー インスタンスに関連付けることができます。このシナリオでは、feature_timestamp 列を含めることで、データを時系列としてフォーマットできます。Vertex AI Feature Store は、特徴のタイムスタンプに基づいて、一意のエンティティ ID ごとに最新の null 以外の値のみを提供します。特徴グループの作成方法については、特徴グループを作成するをご覧ください。特徴グループ内で特徴を作成する方法については、特徴を作成するをご覧ください。

    • 特徴グループや特徴を作成せずにデータソースから特徴を直接提供する: 特徴ビューにデータソースの URI を指定できます。このシナリオでは、データを時系列としてフォーマットすることや、BigQuery ソースに過去のデータを含めることはできません。各行には、一意の ID に対応する最新の特徴値が含まれている必要があります。異なる行に同じエンティティ ID を複数回指定することはできません。

Vertex AI Feature Store を使用すると、BigQuery で特徴データを維持し、BigQuery データソースから特徴を提供できるため、特徴をオフライン ストアにインポートまたはコピーする必要はありません。

データソース準備ガイドライン

次のガイドラインに沿って、BigQuery でデータソースを準備する際のスキーマと制約を理解してください。

  1. データソースには次の列が含まれている必要があります。

    • string 値を含むエンティティ ID 列。この列の各値のサイズは 4 KB 未満でなければなりません。

      • 特徴グループを作成してデータソースを登録する場合は、この列の名前を entity_id にする必要があります。特徴ビューの作成時に特徴グループを関連付ける際、エンティティ ID 列を指定する必要はありません。

      • データソース URI を指定して特徴ビューを作成する場合は、特徴ビューの作成時にこの列の名前を指定する必要があります。この場合、この列の名前を entity_id にする必要はありません。

    • 特徴グループと特徴を使用してデータソースを登録する場合は、feature_timestamp 列を追加して、データを時系列としてフォーマットします。feature_timestamp 列には timestamp 型の値が含まれます。オンライン サービング中に、Vertex AI Feature Store はこのタイムスタンプに基づいて特徴の null 以外の最新の値を提供します。

    BigQuery データソースを特徴ビューに直接関連付ける場合、feature_timestamp 列は必要ありません。このシナリオでは、データソースに最新の特徴値のみを含める必要があります。Vertex AI Feature Store はタイムスタンプを検索しません。

    • 最適化されたオンライン サービング用に作成されたオンライン ショップで埋め込み管理を使用するには、データソースに次の列が含まれている必要があります。

      • float 型の配列を含む embedding 列。

      • (省略可)string 型または string 配列の 1 つ以上のフィルタリング列。

      • (省略可)int 型のクラウディング列。

  2. データソースの各行は、エンティティ ID に関連付けられた特徴値の完全なレコードです。列の一つに特徴値がない場合、列の値は null 値とみなされます。特徴ビューの定義方法に応じて、Vertex AI Feature Store が提供する特徴値を選択する方法は 2 つあります。

    • 特徴ビューが特徴グループと特徴に基づいて定義されている場合、Vertex AI Feature Store は特徴のタイムスタンプを使用して、null 以外の最新の特徴値を提供します。たとえば、最新のタイムスタンプに対応する特定の特徴の値が null の場合、Vertex AI Feature Store は特徴の過去の値から null 以外の最新の値を提供します。

    • BigQuery データソースを直接指定して特徴ビューを定義する場合は、すべての行に一意のエンティティ ID が含まれている必要があります。この場合、Vertex AI Feature Store は、関連付けられたデータソースからすべての特徴値を提供します。

  3. BigQuery のテーブルまたはビューの各列は特徴を表します。各特徴の値を個別の列に指定します。データソースを特徴グループと特徴に関連付ける場合は、各列を個別の特徴に関連付けます。

  4. 特徴値でサポートされているデータ型には、boolintfloatstringtimestamp、これらのデータ型の配列、バイトなどがあります。なお、データの同期中に、timestamp 型の特徴値は int64 に変換されます。

  5. データソースは、オンライン ショップ インスタンスと同じリージョン、またはオンライン ショップのリージョンを含むか、重複するマルチリージョンに配置する必要があります。たとえば、オンライン ショップが us-central にある場合、BigQuery ソースは us-central または US に配置できます。

  6. オンライン サービングの前に特徴ビューのデータを同期して、最新の特徴値のみを提供するようにします。

次のステップ