ノートブックをオーケストレートする
ノートブックのオーケストレーションに関するフィードバックは、bigquery-notebooks-scheduling-support@google.com までメールでお送りください。
このドキュメントでは、BigQuery で Colab Enterprise ノートブックをオーケストレートする方法について説明します。ノートブックのスケジュール設定方法や、スケジュール設定されたノートブックの実行を検査する方法などについて説明します。
ノートブックは、Dataform が提供するコードアセットです。
ノートブックをスケジュール設定して、指定した時間と頻度で自動的に実行できます。たとえば、ML モデルのトレーニング、外部 API の呼び出し、BigQuery DataFrames コードの実行などです。
ノートブックに加えた変更は自動的に保存されますが、変更内容は、自分自身とノートブックにアクセスできるユーザーのみが利用できます。新しいバージョンのノートブックでスケジュールを更新するには、ノートブックをデプロイする必要があります。ノートブックをデプロイすると、現在のバージョンのノートブックでスケジュールが更新されます。スケジュールは、デプロイされた最新バージョンのノートブックを実行します。
各ノートブックのスケジュールは、スケジュールの作成時に選択したカスタム Dataform サービス アカウントによって実行されます。Dataform のサービス アカウントの種類の詳細については、Dataform のサービス アカウントについてをご覧ください。
Dataform は、スケジュール作成時に選択した Cloud Storage バケットに、スケジュール設定されたノートブックの実行の出力を書き込みます。
ノートブックのスケジュールでは、標準の E2 ランタイムを使用します。Colab Enterprise のランタイムの料金が適用されます。ランタイム処理の料金は、E2 マシンタイプに基づいて請求されます。標準 E2 ランタイムの料金については、Colab Enterprise の料金をご覧ください。
始める前に
始める前に、ノートブックを作成します。
ノートブックのスケジュール設定を有効にする
ノートブックのスケジュールを設定するには、ノートブックのスケジュールに使用するカスタム Dataform サービス アカウントに次のロールを付与する必要があります。
- ノートブック エグゼキュータ ユーザー(
roles/aiplatform.notebookExecutorUser
) - プロジェクトに単一のロールを付与するの手順に沿って、選択したプロジェクトのカスタム Dataform サービス アカウントにノートブック エグゼキュータ ユーザーのロールを付与します。
- ストレージ管理者(
roles/storage.admin
) - バケットレベルのポリシーにプリンシパルを追加するの手順に沿って、カスタム Dataform サービス アカウントをプリンシパルとして、スケジュール設定したノートブックの実行の出力を保存するために使用する Cloud Storage バケットに追加し、このプリンシパルにストレージ管理者のロールを付与します。
- サービス アカウント ユーザー(
roles/iam.serviceAccountUser
) - サービス アカウントに単一のロールを付与するの手順に沿って、カスタム Dataform サービス アカウントをプリンシパルとして自身に追加します。つまり、カスタム Dataform サービス アカウントをプリンシパルとして同じカスタム Dataform サービス アカウントに追加します。次に、このプリンシパルにサービス アカウント ユーザーのロールを付与します。
また、デフォルトの Dataform サービス アカウントに次のロールを付与する必要があります。
- サービス アカウント トークン作成者(
roles/iam.serviceAccountTokenCreator
) - カスタム Dataform サービス アカウントにトークン作成アクセス権を付与するの手順に沿って、デフォルトの Dataform サービス アカウントをプリンシパルとしてカスタム Dataform サービス アカウントに追加し、このプリンシパルにサービス アカウント トークン作成者のロールを付与します。
Dataform のサービス アカウントの詳細については、Dataform のサービス アカウントについてをご覧ください。
必要な権限
ノートブックのスケジュールを作成するには、次のロールが必要です。
- Dataform 管理者(
roles/dataform.admin
) - BigQuery 読み取りセッション ユーザー(
roles/bigquery.readSessionUser
)または BigQuery Studio ユーザー(roles/bigquery.studioUser
)
ノートブックのスケジュール(プレビュー)を編集および削除するには、Dataform 編集者(roles/dataform.editor
)のロールが必要です。
ノートブックのスケジュール(プレビュー)を表示するには、Dataform 閲覧者(roles/dataform.viewer
)のロールが必須です。
BigQuery IAM の詳細については、IAM でのアクセス制御をご覧ください。
スケジュールを作成
ノートブックのスケジュールを設定する手順は次のとおりです。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。スケジュール設定するノートブックの名前をクリックします。
[スケジュール] をクリックします。
[ノートブックのスケジュール設定] ペインの [スケジュール名] フィールドに、スケジュールの名前を入力します。
[ランタイム テンプレート] フィールドで、ランタイムを選択します。
[サービス アカウント] フィールドで、カスタム Dataform サービス アカウントを選択します。
[Cloud Storage バケット] フィールドで、[参照] をクリックして、Cloud Storage バケットを選択または作成します。
選択したカスタム Dataform サービス アカウントには、選択したバケットに対するストレージ管理者の IAM ロールを付与する必要があります。詳細については、ノートブックのスケジュール設定を有効にするをご覧ください。
[スケジュールの頻度] セクションで、次の操作を行います。
- [繰り返しの頻度] プルダウンで、ノートブックの実行スケジュールの頻度を選択します。
- [時刻] フィールドに、ノートブックの実行スケジュールを設定する時刻を入力します。
- [タイムゾーン] プルダウンで、スケジュールのタイムゾーンを選択します。
[スケジュールを作成] をクリックします。
スケジュールを作成すると、現在のバージョンのノートブックが自動的にデプロイされます。新しいバージョンのノートブックでスケジュールを更新するには、ノートブックをデプロイします。
ノートブックの最新のデプロイ バージョンが、選択した時間と頻度で実行されます。
ノートブックをデプロイする
ノートブックをデプロイすると、ノートブックの現在のバージョンでスケジュールが更新されます。スケジュールは、デプロイされた最新バージョンのノートブックを実行します。
ノートブックをデプロイする手順は次のとおりです。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。
[デプロイ] をクリックします。
対応するスケジュールが、ノートブックの現在のバージョンで更新されます。デプロイされた最新バージョンのノートブックがスケジュールされた時間に実行されます。
デプロイされたノートブックを手動で実行する
選択したスケジュールにデプロイされたノートブックを手動で実行すると、BigQuery はスケジュールとは関係なく、デプロイされたノートブックを 1 回実行します。
デプロイされたノートブックを手動で実行する手順は次のとおりです。
Google Cloud コンソールの [オーケストレーション] ページに移動します。
選択したノートブック スケジュールの名前をクリックします。
[スケジュールの詳細] ページで、[実行] をクリックします。
すべてのスケジュールを表示する
プロジェクト内のすべてのノートブックのスケジュールを表示する手順は次のとおりです。
Google Cloud コンソールの [オーケストレーション] ページに移動します。
省略可: ノートブックのスケジュールの詳細を含む追加の列を表示するには、
[列表示オプション] をクリックし、列を選択して [OK] をクリックします。
スケジュールの詳細を表示する
選択したスケジュールの詳細は、[エクスプローラ] ペインまたは [オーケストレーション] ページで確認できます。
選択したノートブックのスケジュールの詳細を表示する手順は次のとおりです。
[エクスプローラ] ペイン
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。
[スケジュールを表示] をクリックします。
[オーケストレーション] ページ
Google Cloud コンソールの [オーケストレーション] ページに移動します。
選択したノートブック スケジュールの名前をクリックします。
過去の実行を表示
選択したノートブックのスケジュールの過去の実行は、[エクスプローラ] ペインまたは [オーケストレーション] ページで確認できます。
選択したノートブックのスケジュールの過去の実行を表示する手順は次のとおりです。
[エクスプローラ] ペイン
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。
[スケジュールを表示] をクリックし、[過去の実行を表示] をクリックします。
[オーケストレーション] ページ
Google Cloud コンソールの [オーケストレーション] ページに移動します。
選択したノートブック スケジュールの名前をクリックします。
[スケジュールの詳細] ページの [過去の実行] セクションで、過去の実行を確認します。
省略可: 過去の実行のリストを更新するには、[更新] をクリックします。
スケジュールを無効にする
スケジュールを削除せずに、選択したノートブックのスケジュールされた実行を一時停止するには、スケジュールを無効にします。
選択したノートブックのスケジュールを無効にするには、次の操作を行います。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。
[スケジュールを表示] をクリックします。
スケジュールの詳細テーブルの [スケジュールの状態] 行で、[スケジュールが有効です] 切り替えボタンをクリックします。
スケジュールを有効にする
無効になっているスケジュールの実行を再開する手順は次のとおりです。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。
[スケジュールを表示] をクリックします。
スケジュールの詳細テーブルの [スケジュールの状態] 行で、[スケジュールが無効です] 切り替えボタンをクリックします。
スケジュールを編集する
スケジュールは、[エクスプローラ] ペインまたは [オーケストレーション] ページで編集できます。
スケジュールを編集する手順は次のとおりです。
[エクスプローラ] ペイン
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。
[スケジュールを表示] をクリックし、[編集] をクリックします。
[ノートブックのスケジュール設定] ダイアログでスケジュールを編集し、[スケジュールを更新] をクリックします。
[オーケストレーション] ページ
Google Cloud コンソールの [オーケストレーション] ページに移動します。
選択したノートブック スケジュールの名前をクリックします。
[スケジュールの詳細] ページで、[編集] をクリックします。
[スケジュールを表示] をクリックし、[編集] をクリックします。
[ノートブックのスケジュール設定] ダイアログでスケジュールを編集し、[スケジュールを更新] をクリックします。
スケジュールの削除
選択したノートブックのスケジュールを完全に削除する手順は次のとおりです。
Google Cloud コンソールの [オーケストレーション] ページに移動します。
次のいずれかを行います。
選択したスケジュールの名前をクリックし、[スケジュールの詳細] ページで [削除] をクリックします。
選択したスケジュールを含む行で、[アクション] 列の
[アクションを表示] をクリックし、[削除] をクリックします。
表示されるダイアログで [削除] をクリックします。
次のステップ
- BigQuery での Colab Enterprise ノートブックの詳細を確認する。
- ノートブックの作成方法を学習する。