ノートブックをオーケストレートする

ノートブックのオーケストレーションに関するフィードバックは、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.editorのロールが必要です。

ノートブックのスケジュール(プレビュー)を表示するには、Dataform 閲覧者(roles/dataform.viewerのロールが必須です。

BigQuery IAM の詳細については、IAM でのアクセス制御をご覧ください。

スケジュールを作成

ノートブックのスケジュールを設定する手順は次のとおりです。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。スケジュール設定するノートブックの名前をクリックします。

  3. [スケジュール] をクリックします。

  4. [ノートブックのスケジュール設定] ペインの [スケジュール名] フィールドに、スケジュールの名前を入力します。

  5. [ランタイム テンプレート] フィールドで、ランタイムを選択します。

  6. [サービス アカウント] フィールドで、カスタム Dataform サービス アカウントを選択します。

  7. [Cloud Storage バケット] フィールドで、[参照] をクリックして、Cloud Storage バケットを選択または作成します。

    選択したカスタム Dataform サービス アカウントには、選択したバケットに対するストレージ管理者の IAM ロールを付与する必要があります。詳細については、ノートブックのスケジュール設定を有効にするをご覧ください。

  8. [スケジュールの頻度] セクションで、次の操作を行います。

    1. [繰り返しの頻度] プルダウンで、ノートブックの実行スケジュールの頻度を選択します。
    2. [時刻] フィールドに、ノートブックの実行スケジュールを設定する時刻を入力します。
    3. [タイムゾーン] プルダウンで、スケジュールのタイムゾーンを選択します。
  9. [スケジュールを作成] をクリックします。

スケジュールを作成すると、現在のバージョンのノートブックが自動的にデプロイされます。新しいバージョンのノートブックでスケジュールを更新するには、ノートブックをデプロイします。

ノートブックの最新のデプロイ バージョンが、選択した時間と頻度で実行されます。

ノートブックをデプロイする

ノートブックをデプロイすると、ノートブックの現在のバージョンでスケジュールが更新されます。スケジュールは、デプロイされた最新バージョンのノートブックを実行します。

ノートブックをデプロイする手順は次のとおりです。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。

  3. [デプロイ] をクリックします。

対応するスケジュールが、ノートブックの現在のバージョンで更新されます。デプロイされた最新バージョンのノートブックがスケジュールされた時間に実行されます。

デプロイされたノートブックを手動で実行する

選択したスケジュールにデプロイされたノートブックを手動で実行すると、BigQuery はスケジュールとは関係なく、デプロイされたノートブックを 1 回実行します。

デプロイされたノートブックを手動で実行する手順は次のとおりです。

  1. Google Cloud コンソールの [オーケストレーション] ページに移動します。

    [オーケストレーション] ページに移動

  2. 選択したノートブック スケジュールの名前をクリックします。

  3. [スケジュールの詳細] ページで、[実行] をクリックします。

すべてのスケジュールを表示する

プロジェクト内のすべてのノートブックのスケジュールを表示する手順は次のとおりです。

  1. Google Cloud コンソールの [オーケストレーション] ページに移動します。

    [オーケストレーション] ページに移動

  2. 省略可: ノートブックのスケジュールの詳細を含む追加の列を表示するには、 [列表示オプション] をクリックし、列を選択して [OK] をクリックします。

スケジュールの詳細を表示する

選択したスケジュールの詳細は、[エクスプローラ] ペインまたは [オーケストレーション] ページで確認できます。

選択したノートブックのスケジュールの詳細を表示する手順は次のとおりです。

[エクスプローラ] ペイン

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。

  3. [スケジュールを表示] をクリックします。

[オーケストレーション] ページ

  1. Google Cloud コンソールの [オーケストレーション] ページに移動します。

    [オーケストレーション] ページに移動

  2. 選択したノートブック スケジュールの名前をクリックします。

過去の実行を表示

選択したノートブックのスケジュールの過去の実行は、[エクスプローラ] ペインまたは [オーケストレーション] ページで確認できます。

選択したノートブックのスケジュールの過去の実行を表示する手順は次のとおりです。

[エクスプローラ] ペイン

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。

  3. [スケジュールを表示] をクリックし、[過去の実行を表示] をクリックします。

[オーケストレーション] ページ

  1. Google Cloud コンソールの [オーケストレーション] ページに移動します。

    [オーケストレーション] ページに移動

  2. 選択したノートブック スケジュールの名前をクリックします。

  3. [スケジュールの詳細] ページの [過去の実行] セクションで、過去の実行を確認します。

  4. 省略可: 過去の実行のリストを更新するには、[更新] をクリックします。

スケジュールを無効にする

スケジュールを削除せずに、選択したノートブックのスケジュールされた実行を一時停止するには、スケジュールを無効にします。

選択したノートブックのスケジュールを無効にするには、次の操作を行います。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。

  3. [スケジュールを表示] をクリックします。

  4. スケジュールの詳細テーブルの [スケジュールの状態] 行で、[スケジュールが有効です] 切り替えボタンをクリックします。

スケジュールを有効にする

無効になっているスケジュールの実行を再開する手順は次のとおりです。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。

  3. [スケジュールを表示] をクリックします。

  4. スケジュールの詳細テーブルの [スケジュールの状態] 行で、[スケジュールが無効です] 切り替えボタンをクリックします。

スケジュールを編集する

スケジュールは、[エクスプローラ] ペインまたは [オーケストレーション] ページで編集できます。

スケジュールを編集する手順は次のとおりです。

[エクスプローラ] ペイン

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] ペインで、プロジェクトと [ノートブック] フォルダを開き、必要に応じて [共有ノートブック] フォルダを開きます。選択したノートブックの名前をクリックします。

  3. [スケジュールを表示] をクリックし、[編集] をクリックします。

  4. [ノートブックのスケジュール設定] ダイアログでスケジュールを編集し、[スケジュールを更新] をクリックします。

[オーケストレーション] ページ

  1. Google Cloud コンソールの [オーケストレーション] ページに移動します。

    [オーケストレーション] ページに移動

  2. 選択したノートブック スケジュールの名前をクリックします。

  3. [スケジュールの詳細] ページで、[編集] をクリックします。

  4. [スケジュールを表示] をクリックし、[編集] をクリックします。

  5. [ノートブックのスケジュール設定] ダイアログでスケジュールを編集し、[スケジュールを更新] をクリックします。

スケジュールの削除

選択したノートブックのスケジュールを完全に削除する手順は次のとおりです。

  1. Google Cloud コンソールの [オーケストレーション] ページに移動します。

    [オーケストレーション] ページに移動

  2. 次のいずれかを行います。

    • 選択したスケジュールの名前をクリックし、[スケジュールの詳細] ページで [削除] をクリックします。

    • 選択したスケジュールを含む行で、[アクション] 列の [アクションを表示] をクリックし、[削除] をクリックします。

  3. 表示されるダイアログで [削除] をクリックします。

次のステップ