BigQuery API V2(Java)を使用して、
BigQuery ML モデルの情報を更新・削除する方法
についてご紹介します。
MLモデルの更新・削除する場合は、
データセットに対しIAM権限が付与されている必要があります。
権限付与に関しては
⧉[BigQuery API(V2)] JavaでBigQueryを使う(2.権限付与)
を参照ください。
APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[BigQuery API(V2)] JavaでBigQueryを使う
を参照ください。
No | 目次 | |
---|---|---|
1 | モデルを更新 | |
1 | スコープ | |
2 | 実行 | |
3 | レスポンスの内容 | |
2 | モデルを削除 | |
1 | スコープ | |
2 | 実行 | |
3 | レスポンスの内容 |
1. モデルを更新
指定したMLモデルを更新します。
1.1. スコープ
このAPIを実行するには、以下のいずれかのスコープを指定してください。
BigqueryScopes.BIGQUERY
BigqueryScopes.CLOUD_PLATFORM
⧉[BigQuery API(V2)] JavaでBigQueryを使う(3.2. BigQueryインスタンスを取得)
でスコープを指定してください。
1.2. 実行
作成するデータセットIDの設定は必須です。
public static void main(String[] args) throws Exception{
Bigquery bigquery = getBigquery();
Bigquery.Models models = bigquery.models();
Model content = new Model();
//更新内容の設定
Bigquery.Models.Patch patch = models.patch("プロジェクトID","データセットID","モデルID",content);
Model res = patch.execute();
System.out.println(res);
}
1.2.1. HTTPリクエスト
PATCH: https://bigquery.googleapis.com/bigquery/v2/projects/{プロジェクトID}/datasets/{データセットID}/models/{モデルID}
が実行されます。
1.2.2. クエリパラメータ
クエリパラメータはありません。
1.2.2. リクエストボディ
Modelのsetメソッドにより、リクエストボディを追加できます。
メソッド | 引数 | 説明 |
---|---|---|
setModelReference | ModelReference | 【必須】モデルの一意の識別子 |
setDescription | String | 説明 |
setFriendlyName | String | 説明する名前 |
setLabels | Map<String,String> | モデルに関連付けられたラベル |
setExpirationTime | Long | モデルの有効期限が切れる時刻(ミリ秒) |
setEncryptionConfiguration | EncryptionConfiguration | カスタム暗号化構成の情報 |
setTrainingRuns | List<TrainingRun> | トレーニング実行の情報 |
ModelReference
メソッド | 引数 | 説明 |
---|---|---|
setProjectId | String | 【必須】プロジェクトID |
setDatasetId | String | 【必須】データセットID |
setModelId | String | 【必須】モデルID |
EncryptionConfiguration
メソッド | 引数 | 説明 |
---|---|---|
setKmsKeyName | String | CloudKMS暗号化キーの説明 |
TrainingRun
メソッド | 引数 | 説明 |
---|---|---|
setVertexAiModelId | String | VertexAIモデルレジストリ内のモデルID |
1.3. レスポンスの内容
Model
⧉[BigQuery API(V2)] JavaでBigQuery ML モデルの情報を取得する(Model)
と同じです。
2. モデルを削除
指定したMLモデルを削除します。
2.1. スコープ
このAPIを実行するには、以下のいずれかのスコープを指定してください。
BigqueryScopes.BIGQUERY
BigqueryScopes.CLOUD_PLATFORM
⧉[BigQuery API(V2)] JavaでBigQueryを使う(3.2. BigQueryインスタンスを取得)
でスコープを指定してください。
2.2. 実行
public static void main(String[] args) throws Exception{
Bigquery bigquery = getBigquery();
Bigquery.Models models = bigquery.models();
Bigquery.Models.Delete delete = models.delete("プロジェクトID","データセットID","モデルID");
delete.execute();
}
2.2.1. HTTPリクエスト
DELETE: https://bigquery.googleapis.com/bigquery/v2/projects/{プロジェクトID}/datasets/{データセットID}/models/{モデルID}
が実行されます。
2.2.2. クエリパラメータ
クエリパラメータはありません。
2.2.3. リクエストボディ
リクエストボディはありません。
2.3. レスポンスの内容
レスポンスはありません。
削除に失敗した場合は例外が発生します。
おしまい。。