モデル メタデータの更新

概要

このページでは、BigQuery ML モデルのメタデータの更新方法を紹介します。次の方法で、モデル メタデータを更新できます。

  • GCP Console を使用する
  • bq update CLI コマンドを使用する
  • models.patch API メソッドを直接またはクライアント ライブラリを使用して呼び出す

モデル メタデータとして次のものが更新できます。

  • 説明: BigQuery ウェブ UI、CLI、API、クライアント ライブラリを使用して更新できます。
  • ラベル: BigQuery ウェブ UI、CLI、API、クライアント ライブラリを使用して更新できます。
  • 有効期限: CLI、API、クライアント ライブラリを使用して更新できます。

必要な権限

モデル メタデータを更新するには、データセットに対して WRITER 役割を割り当てるか bigquery.models.updateMetadata 権限を含むプロジェクト レベルの IAM 役割を割り当てる必要があります。プロジェクト レベルで bigquery.models.updateMetadata 権限が付与されている場合は、プロジェクト内の任意のデータセットのモデルに関するメタデータを更新できます。次の定義済みのプロジェクト レベルの IAM 役割には bigquery.models.updateMetadata アクセス許可が含まれています。

  • bigquery.dataEditor
  • bigquery.dataOwner
  • bigquery.admin

BigQuery ML での IAM 役割と権限の詳細については、アクセス制御をご覧ください。データセット レベルの役割の詳細については、BigQuery のドキュメントのデータセットの基本の役割をご覧ください。

モデルの説明を更新する

モデルの説明は、モデルを簡単に識別するために使用するテキスト文字列です。

モデルの説明を更新する手順は以下のとおりです。

Console

  1. GCP Console の BigQuery ウェブ UI に移動します。

    BigQuery ウェブ UI に移動

  2. ナビゲーション パネルの [リソース] セクションで、プロジェクト名とデータセット名を展開します。

  3. モデル名をクリックします。モデルにはモデルアイコン モデルアイコン がついています。

  4. [詳細] タブをクリックします。

  5. モデルの説明を更新するには、[説明] の右側にある編集アイコン(鉛筆)をクリックします。

  6. [説明を編集] ダイアログで、テキストを入力して [更新] をクリックします。

CLI

モデルの説明を更新するには、--model または -m フラグと --description フラグを指定して、bq update コマンドを実行します。

デフォルト プロジェクト以外のプロジェクトでモデルを更新する場合は、プロジェクト ID を [PROJECT_ID]:[DATASET] の形式でデータセットに追加してください。

bq ls --model --description "[STRING]" [PROJECT_ID]:[DATASET].[MODEL]

各項目の説明は次のとおりです。

  • [STRING] は、モデルを引用符で囲んで記述したテキスト文字列です。
  • [PROJECT_ID] はプロジェクト ID です。
  • [DATASET] はデータセットの名前です。
  • [MODEL] はモデルの名前です。

コマンド出力は、次のようになります。

Model '[PROJECT_ID]:[DATASET].[MODEL]' successfully updated.

bq show コマンドを実行して、変更を確認できます。詳細については、モデル メタデータの取得をご覧ください。

次に例を示します。

次のコマンドを入力して、デフォルト プロジェクトの mydataset 内にある mymodel の説明を更新します。

bq update --model --description "My updated description" \
mydataset.mymodel

次のコマンドを入力して、myotherprojectmydataset 内にある mymodel の説明を更新します。

bq update --model --description "My updated description" \
myotherproject:mydataset.mymodel

API

API を使用してモデルの説明を更新するには、models.patch メソッドを呼び出して projectIddatasetIdmodelId を指定します。説明を変更するには、モデルリソースの description プロパティを追加または更新します。

モデルのラベルを更新する

ラベルは、リソースに添付可能な Key-Value ペアです。BigQuery ML のリソースを作成する際には、ラベルは必須ではありません。詳細については、BigQuery ドキュメントのラベルの追加と使用をご覧ください。

モデルのラベルを更新する手順は以下のとおりです。

Console

  1. GCP Console の BigQuery ウェブ UI に移動します。

    BigQuery ウェブ UI に移動

  2. ナビゲーション パネルの [リソース] セクションで、プロジェクト名とデータセット名を展開します。

  3. モデル名をクリックします。モデルにはモデルアイコン モデルアイコン がついています。

  4. [詳細] タブをクリックします。

  5. モデルのラベルを更新するには、[ラベル] の右側にある編集アイコン(鉛筆)をクリックします。

  6. [ラベルを編集] ダイアログで、次の操作を行います。

    • 追加のラベルを適用するには、[ラベルを追加] をクリックします。各キーはデータセットごとに 1 度しか使用できませんが、同じキーが同じプロジェクト内の複数のデータセットで使用できます。
    • ラベルを更新するには、既存のキーまたは値を変更します。
    • [更新] をクリックして、変更を保存します。

CLI

モデルのラベルを更新するには、--model または -m フラグと --set_label フラグを指定して、bq update コマンドを発行します。複数のラベルを追加または更新するには、--set_label フラグを繰り返し指定します。

デフォルト プロジェクト以外のプロジェクトでモデルを更新する場合は、プロジェクト ID を [PROJECT_ID]:[DATASET] の形式でデータセットに追加してください。

bq update --model --set_label [KEY:VALUE] \
[PROJECT_ID]:[DATASET].[MODEL]

各項目の説明は次のとおりです。

  • [KEY:VALUE] は、追加または更新するラベルの Key-Value ペアに対応します。既存のラベルと同じキーを指定した場合は、その既存ラベルの値が更新されます。キーは一意でなければなりません。
  • [PROJECT_ID] はプロジェクト ID です。
  • [DATASET] はデータセットの名前です。
  • [MODEL] はモデルの名前です。

コマンド出力は、次のようになります。

Model '[PROJECT_ID]:[DATASET].[MODEL]' successfully updated.

bq show コマンドを実行して、変更を確認できます。詳細については、モデル メタデータの取得をご覧ください。

次に例を示します。

mymodeldepartment ラベルを更新するには、bq update コマンドを入力して、department をラベルキーとして指定します。たとえば、department:shipping ラベルを department:logistics に更新するには次のコマンドを入力します。mydataset はデフォルト プロジェクトではなく myotherproject にあります。

bq update --model --set_label department:logistics \
myotherproject:mydataset.mymodel

API

API を使用してモデルのラベルを更新するには、models.patch メソッドを呼び出して projectIddatasetIdmodelId を指定します。ラベルを変更するには、モデルリソースに labels プロパティを追加または更新します。

モデルの有効期限を更新する

モデルの有効期限は、いつモデルが削除されるかを示すタイムスタンプ値です。モデルの有効期限を設定するには、モデルを作成する際に、CLI、API、クライアント ライブラリを使用します。モデルの作成後にも、有効期限を設定または更新できます。モデルの有効期限は、多くの場合 TTL(time to live)と呼ばれます。

モデルに有効期限を設定しないと、モデルは期限切れにならないため、手動で削除する必要があります。

有効期限の値は、値の設定場所によって異なります。適切な粒度の方法を使用してください。

  • コマンドライン ツールでは、有効期限は現在の UTC 時間からの秒数で表示されます。コマンドラインで有効期限を指定すると、整数値が秒単位で現在の UTC タイムスタンプに追加されます。
  • API では、有効期限はエポックからのミリ秒単位で表されます。現在のタイムスタンプに満たない値を有効期限に指定すると、モデルは直ちに期限切れになります。

次の方法で、モデルの有効期限を更新できます。

Console

現在、Google Cloud Platform Console の BigQuery ウェブ UI で、モデルの有効期限の設定または更新はできません。

CLI

モデルの有効期限を更新するには、--model または -m フラグと --expiration フラグを指定して、bq update コマンドを発行します。

デフォルト プロジェクト以外のプロジェクトでモデルを更新する場合は、プロジェクト ID を [PROJECT_ID]:[DATASET] の形式でデータセットに追加してください。

bq update --model --expiration [INTEGER] \
[PROJECT_ID]:[DATASET].[MODEL]

各項目の説明は次のとおりです。

  • [INTEGER] はモデルの存続期間(秒単位)です。最小値は 3,600 秒(1 時間)です。現在の UTC 時間にこの整数値を足した値が、有効期限になります。
  • [PROJECT_ID] はプロジェクト ID です。
  • [DATASET] はデータセットの名前です。
  • [MODEL] はモデルの名前です。

コマンド出力は、次のようになります。

Model '[PROJECT_ID]:[DATASET].[MODEL]' successfully updated.

bq show コマンドを実行して、変更を確認できます。詳細については、モデル メタデータの取得をご覧ください。

次に例を示します。

次のコマンドを入力して、mydataset 内の mymodel の有効期限を 5 日(432,000 秒)に更新します。mydataset はデフォルト プロジェクト内にあります。

bq update --model --expiration 432000 mydataset.mymodel

次のコマンドを入力して、mydataset 内の mymodel の有効期限を 5 日(432,000 秒)に更新します。mydatasetmyotherproject 内にあり、デフォルト プロジェクト内にはありません。

bq update --model --expiration 432000 myotherproject:mydataset.mymodel

API

API を使用してモデルの有効期限を更新するには、models.patch メソッドを呼び出して projectIddatasetIdmodelId を指定します。有効期限を変更するには、モデルリソースに expirationTime プロパティを追加または更新します。expirationTime プロパティは、エポックからのミリ秒単位で表されます。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

BigQuery ML のドキュメント