モデルのメタデータを更新する
このページでは、BigQuery ML モデルのメタデータの更新方法を紹介します。次の方法で、モデル メタデータを更新できます。
- Google Cloud コンソールを使用する。
- bq コマンドライン ツールの
bq updateコマンドを使用する。 models.patchAPI メソッドを、直接またはクライアント ライブラリを使用して呼び出す。
モデル メタデータとして次のものが更新できます。
- 説明:Google Cloud コンソール、bq コマンドライン ツール、API、またはクライアント ライブラリで更新できます。
- ラベル: Google Cloud コンソール、bq コマンドライン ツール、API、またはクライアント ライブラリを使用して更新できます。
- 有効期限: bq ツール、API、またはクライアント ライブラリを使用して更新できます。
必要な権限
モデル メタデータを更新するには、データセットに対する WRITER ロールが割り当てられているか、bigquery.models.updateMetadata 権限を含むプロジェクト レベルの Identity and Access Management(IAM)ロールが割り当てられている必要があります。プロジェクト レベルで bigquery.models.updateMetadata 権限が付与されている場合は、プロジェクト内の任意のデータセット内のモデルのメタデータを更新できます。プロジェクト レベルの次の IAM 事前定義ロールには bigquery.models.updateMetadata 権限が含まれています。
bigquery.dataEditorbigquery.dataOwnerbigquery.admin
BigQuery ML での IAM ロールと権限の詳細については、アクセス制御をご覧ください。
モデルの説明を更新する
モデルの説明とは、モデルを識別するために使われるテキスト文字列です。
モデルの説明を更新する手順は以下のとおりです。
コンソール
Google Cloud コンソールで、[BigQuery] ページに移動します。
左側のペインで、 [エクスプローラ] をクリックします。

左側のペインが表示されていない場合は、 左側のペインを開くをクリックしてペインを開きます。
[エクスプローラ] ペインで、プロジェクトを開き、[データセット] をクリックして、データセットをクリックします。
[モデル] タブをクリックし、モデル名をクリックしてモデルを選択します。
[詳細] タブをクリックします。
モデルの説明を更新するには、[編集] をクリックします。
[詳細を編集] ダイアログで説明を更新し、[保存] をクリックします。
bq
モデルの説明を更新するには、--model または -m フラグと --description フラグを指定して bq update コマンドを実行します。
更新するモデルがデフォルト プロジェクト以外のプロジェクトにある場合は、[PROJECT_ID]:[DATASET] の形式でプロジェクト ID をデータセットに追加します。
bq update --model --description "[STRING]" PROJECT_ID:DATASET.MODEL
次のように置き換えます。
STRINGは、モデルを引用符で囲んで記述したテキスト文字列です。PROJECT_IDはプロジェクト ID です。DATASETはデータセットの名前です。MODELはモデルの名前です。
コマンド出力は、次のようになります。
Model 'myproject.mydataset.mymodel' successfully updated.
bq show コマンドを実行して、変更を確認できます。詳細については、モデル メタデータの取得をご覧ください。
例:
デフォルト プロジェクトの mydataset 内にある mymodel の説明を更新するには、次のコマンドを入力します。
bq update --model --description "My updated description" \
mydataset.mymodel
myotherproject の mydataset 内にある mymodel の説明を更新するには、次のコマンドを入力します。
bq update --model --description "My updated description" \
myotherproject:mydataset.mymodel
API
API を使用してモデルの説明を更新するには、models.patch メソッドを呼び出し、projectId、datasetId、modelId を指定します。説明を変更するには、モデルリソースの description プロパティを追加または更新します。
Go
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Go の設定手順を完了してください。詳細については、BigQuery Go API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Java
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Java の設定手順を完了してください。詳細については、BigQuery Java API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Node.js
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Node.js の設定手順を完了してください。詳細については、BigQuery Node.js API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Python
このサンプルを試す前に、クライアント ライブラリを使用した BigQuery クイックスタートにある Python の設定手順を完了してください。詳細については、BigQuery Python API のリファレンス ドキュメントをご覧ください。
BigQuery に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
モデルのラベルを更新する
ラベルは、リソースに添付可能な Key-Value ペアです。BigQuery ML のリソースを作成する際には、ラベルは必須ではありません。詳細については、ラベルの追加と使用をご覧ください。
モデルのラベルを更新する手順は以下のとおりです。
コンソール
左側のペインで、 [エクスプローラ] をクリックします。

[エクスプローラ] ペインで、プロジェクトを開き、[データセット] をクリックして、データセットをクリックします。
[モデル] タブをクリックし、モデル名をクリックしてモデルを選択します。
[詳細] タブをクリックします。
モデルのラベルを更新するには、[編集 ] をクリックします。
[詳細を編集] ダイアログでラベルを追加、削除、変更して、[保存] をクリックします。
bq
モデルのラベルを更新するには、--model または -m フラグと --set_label フラグを指定して bq update コマンドを実行します。複数のラベルを追加または更新するには、--set_label フラグを繰り返し指定します。
更新するモデルがデフォルト プロジェクト以外のプロジェクトにある場合は、[PROJECT_ID]:[DATASET] の形式でプロジェクト ID をデータセットに追加します。
bq update --model --set_label KEY:VALUE \ PROJECT_ID:DATASET.MODEL
次のように置き換えます。
KEY:VALUEは、追加または更新するラベルの Key-Value ペアに対応します。既存のラベルと同じキーを指定した場合は、その既存ラベルの値が更新されます。キーは一意でなければなりません。PROJECT_IDはプロジェクト ID です。DATASETはデータセットの名前です。MODELはモデルの名前です。
コマンド出力は、次のようになります。
Model 'myproject.mydataset.mymodel' successfully updated.
bq show コマンドを実行して、変更を確認できます。詳細については、モデル メタデータの取得をご覧ください。
例:
mymodel の department ラベルを更新するには、bq update コマンドを入力し、ラベルキーとして department を指定します。たとえば、department:shipping ラベルを department:logistics に更新するには、次のコマンドを入力します。mydataset はデフォルト プロジェクトではなく myotherproject にあります。
bq update --model --set_label department:logistics \
myotherproject:mydataset.mymodel
API
API を使用してモデルのラベルを更新するには、models.patch メソッドを呼び出し、projectId、datasetId、modelId を指定します。ラベルを変更するには、モデルリソースの labels プロパティを追加または更新します。
モデルの有効期限を更新する
モデルの有効期限は、いつモデルが削除されるかを示すタイムスタンプ値です。モデルの有効期限を設定するには、モデルを作成する際に、CLI、API、クライアント ライブラリを使用します。モデルの作成後にも、有効期限を設定または更新できます。モデルの有効期限は、多くの場合 TTL(time to live)と呼ばれます。
モデルに有効期限を設定しないとそのモデルは期限切れにならないため、手動で削除する必要があります。
有効期限の値は、値の設定場所によって異なります。適切な粒度の方法を使用してください。
- コマンドライン ツールでは、有効期限は現在の UTC 時間からの秒数で表示されます。コマンドラインで有効期限を指定すると、整数値が秒単位で現在の UTC タイムスタンプに追加されます。
- API では、有効期限はエポックからのミリ秒単位で表されます。現在のタイムスタンプに満たない値を有効期限に指定すると、モデルは直ちに期限切れになります。
次の方法で、モデルの有効期限を更新できます。
コンソール
Google Cloud コンソールでは、モデルの有効期限の設定または更新はサポートされていません。
bq
モデルの有効期限を更新するには、--model フラグまたは -m フラグと --expiration フラグを指定して bq update コマンドを実行します。
更新するモデルがデフォルト プロジェクト以外のプロジェクトにある場合は、[PROJECT_ID]:[DATASET] の形式でプロジェクト ID をデータセットに追加します。
bq update --model --expiration INTEGER \ PROJECT_ID:DATASET.MODEL
次のように置き換えます。
INTEGERはモデルの存続期間(秒単位)です。最小値は 3,600 秒(1 時間)です。現在の UTC 時間にこの整数値を足した値が、有効期限になります。PROJECT_IDはプロジェクト ID です。DATASETはデータセットの名前です。MODELはモデルの名前です。
コマンド出力は、次のようになります。
Model 'myproject.mydataset.mymodel' successfully updated.
bq show コマンドを実行して、変更を確認できます。詳細については、モデル メタデータの取得をご覧ください。
例:
次のコマンドを入力して、mydataset 内の mymodel のパーティションの有効期限を 5 日間(432,000 秒)に更新します。mydataset はデフォルト プロジェクトにあります。
bq update --model --expiration 432000 mydataset.mymodel
次のコマンドを入力して、mydataset 内の mymodel のパーティションの有効期限を 5 日間(432,000 秒)に更新します。mydataset はデフォルト プロジェクトではなく myotherproject にあります。
bq update --model --expiration 432000 myotherproject:mydataset.mymodel
API
API を使用してモデルの有効期限を更新するには、models.patch メソッドを呼び出し、projectId、datasetId、modelId を指定します。有効期限を変更するには、モデルリソースの expirationTime プロパティを追加または更新します。expirationTime プロパティは、エポックからのミリ秒単位で表されます。
次のステップ
- BigQuery ML の概要で BigQuery ML の概要を確認する。
- BigQuery ML の使用を開始するには、BigQuery ML で機械学習モデルを作成するをご覧ください。
- モデルを使った作業の詳細を確認するには、以下をご覧ください。