[アップデート] Amazon SageMaker Unified Studio ノートブックのスケジュール実行・自動化をネイティブサポートを試してみました
クラウド事業本部の石川です。Amazon SageMaker Unified Studio(以下 SMUS)に、ノートブックの実行をスケジュール・自動化する機能が追加されました。ノートブックのインターフェースから直接、バックグラウンド実行や定期実行を作成でき、外部のオーケストレーション基盤を別途用意・管理する必要がありません。
これまで手作業で Run all していた定期レポートやデータ品質チェックを、ノートブックのまま定期ジョブ化できる、運用面でうれしいアップデートです。
ノートブックのスケジュール実行・自動化とは
従来、SageMaker Unified Studio のノートブックには実行をスケジュールするネイティブな手段がなく、定期実行を行うには Apache Airflow などの外部オーケストレーションツールを別途用意・管理する必要がありました。
今回のアップデートにより、ノートブックのインターフェースから直接スケジュール・パラメータ化・オーケストレーションが行えるようになりました。主な変更点は以下のとおりです。
- バックグラウンド実行 — 対話型セッションを中断することなく、専用コンピュート上でノートブックをオンデマンド実行
- 定期スケジュール — rate 式 / cron 式による繰り返し実行や、一度きりの将来実行をスケジュール
- パラメータ化 — 1 つのノートブックにパラメータを定義し、入力値を変えて再利用
- Workflows によるオーケストレーション — Notebook Operator で複数ノートブックを連結し、ある実行の出力を次の入力へ引き渡し
- AI 支援トラブルシューティング — 実行失敗時に SageMaker Data Agent が根本原因の特定と修正案の提示を支援
機能全体の流れは以下のとおりです。
これにより、日次レポートの生成、データ品質チェック、モデルの再トレーニングといった定期的なワークロードを、実験段階のノートブックからそのまま本番運用へ移行しやすくなります。
ノートブックをパラメータ化する
「Parameters」アクティビティパネルで、パラメータ(名前とデフォルト値)を定義します。ノートブックのコード内では、sagemaker_studio.nbutils の parameters.get() で値を取得します。

やってみた
前提条件
検証環境は以下のとおりです。
- AWSリージョン: ap-northeast-1(東京)
- SMUS ドメイン: V2 / IAM ベース
- プロジェクト: 既存の admin プロジェクトを利用
今回のドメインは SSO を無効化した IAM ベースドメインでした。AWS CLI で確認しておきます。
$ aws datazone get-domain \
--identifier dzd-d3w2uawk8vo7a1 \
--query '{name:name, version:domainVersion, ssoType:singleSignOn.type}' \
--output table
----------------------------------------------------
| GetDomain |
+--------------------------+-----------+-----------+
| name | ssoType | version |
+--------------------------+-----------+-----------+
| Default_05252026_Domain | DISABLED | V2 |
+--------------------------+-----------+-----------+
ssoType が DISABLED のため、AWS マネジメントコンソールにサインインした IAM プリンシパルでそのままポータルにアクセスできます。

ステップ1: ノートブックを作成する
ポータル左ナビの「ノートブック」を開きます。ここには「ノートブック」「ラン」「スケジュール」の3つのタブがあり、これらがまさに今回のスケジューリング機能のUIです。

「ノートブックを作成」をクリックすると、サーバーレスノートブックのエディタが開きました。右側には Data Agent(生成AIアシスタント)が統合表示され、ツールバーには「すべて実行」やスケジュールアイコンが並びます。画面下部のコンピューティングは Python 3.11 / 2 vCPU・4 GiB で、作成直後から Ready 状態でした。
ステップ2: ノートブックを実行する
スケジュール実行の前に、まずは対話的に動かして動作を確認します。配送レポートを模した簡単なコードを入力しました。
from datetime import datetime, timezone
print("Shipping report generated at", datetime.now(timezone.utc).isoformat())
「すべて実行」を押すと、数秒で出力が返ってきました。
Shipping report generated at 2026-06-06T06:47:40.496664+00:00

サーバーレスノートブックなので、コンピューティングの準備を意識することなくそのまま実行できました。
ステップ3: スケジュールを作成する
いよいよ本題です。ツールバーの「スケジュールを追加」をクリックすると、スケジュール作成パネルが開きます。

今回は次の内容で作成しました。検証目的なので、すぐには動作が確認できるように「1分ごと」にしています。
- スケジュール名:
blog-demo-schedule - スケジュールタイプ: 繰り返し
- レートベースの式: 1 日ごと
- タイムゾーン: (UTC+09:00) Asia/Tokyo
- フレキシブルな時間枠: 5 分(既定値)

「スケジュールを作成」を押すと、サイドパネルの「スケジュール」一覧に blog-demo-schedule(Every 日)が追加されました。

ステップ4: 裏側の EventBridge Scheduler を確認する
マネジメントコンソールから EventBridge Scheduler の設定から、スケジュールが追加されたことが確認できます。

EventBridge Scheduler のユニバーサルターゲットを使って DataZone API の StartNotebookRun を呼び出す仕組みだと分かります。
また、UI の設定値が、次のように EventBridge Scheduler のパラメータへマッピングされていることが確認できました。
- 「1日ごと」→
rate (1 minutes) - タイムゾーン「Asia/Tokyo」→
Asia/Tokyo - フレキシブルな時間枠「5分」→
5 minutes
また、Retry policyが設定されていることが確認できました。
- Maximum retention time of event:
1 day - Maximum retries:
185 times
実行ロールには SageMaker の実行ロール(AmazonSageMakerAdminIAMExecutionRole_1)が使われていました。

ステップ5: スケジュールの実行状況を確認する
スケジュール名をクリックします。

実行済みと現在実行中のスケジュールが一覧表示されます。スケジュールは1分に設定していますが、実際に実行されるまで3〜4分経過した後、実行していることが確認できます。

更に実行IDをクリックして、実行結果を確認できます。

実行結果の[Logs]タブを選択すると、実行状態も確認できます。

考察
SMUS のスケジュール実行が EventBridge Scheduler の上に構築されており、プロジェクトの環境を作成した時点で SageMakerUnifiedStudio-<project>-dev というスケジュールグループが用意され、UI でスケジュールを作るたびにこのグループへスケジュールが追加されます。
- スケジュール作成・編集・削除は基本的にノートブックUI(または Data Agent への自然言語指示)から行う想定で、スケジュールを直接作成する専用の AWS CLI/API は提供されていません。一方で、裏側は EventBridge Scheduler なので、
aws scheduler list-schedulesやget-scheduleを使えば、どんなスケジュールが存在するかを横断的に棚卸し・監査できます。ガバナンスや棚卸しの観点では覚えておくと便利です。 - バックグラウンド実行・スケジュール実行は対話セッションと隔離された専用コンピューティングで動くため、対話セッションのローカルファイルは参照できません。永続化したいデータは S3 に置く必要があります。
- フレキシブルな時間枠(既定5分)は EventBridge Scheduler の
FlexibleTimeWindowにそのまま対応します。多数のスケジュールを同時刻に集中させない、負荷分散のための仕組みです。
最後に
Amazon SageMaker Unified Studio のノートブックスケジュール実行を、UI からの作成だけでなく、裏側の Amazon EventBridge Scheduler まで確認してみました。
外部のオーケストレーション基盤を用意しなくても、ノートブックの画面だけで定期実行を組めるのは、探索的な分析から定常的なデータパイプラインへ移行する際に大きなメリットです。そして実体が EventBridge Scheduler である以上、運用・監査では scheduler 系の CLI でスケジュールを横断的に確認できる、という点も実際に手を動かして確認できました。
本機能は、SageMaker Unified Studio がサポートするすべての AWS リージョンで利用可能です。SMUS でノートブックを定期実行したい方は、ぜひ試してみてください。
合わせて読みたい







