Databricksには「All-Purpose Cluster(対話型)」と「Job Cluster(ジョブ実行専用)」の2種類のクラスタがあります。 開発・デバッグにはAll-Purpose、本番バッチジョブにはJob Clusterを使うのが基本です。 Job Clusterは単価が安く、ジョブ完了後に自動終了するため、コスト効率が高いのが特徴です。
| 比較軸 | All-Purpose Cluster | Job Cluster |
|---|---|---|
| 用途 | 開発、デバッグ、対話的分析 | 本番ジョブ、スケジュール実行 |
| DBU単価 | 高い(Interactive Compute料金) | 安い(Jobs Compute料金) |
| ライフサイクル | 手動作成・手動停止(自動終了設定可) | ジョブ開始時に自動作成、完了時に自動終了 |
| 複数ユーザー共有 | 可能 | 不可(1ジョブ専用) |
| ノートブック対話 | 可能(セルごとに実行) | 不可(ジョブとして一括実行のみ) |
| クラスタの再利用 | 同じクラスタを何度も使い回せる | 毎回新しいクラスタが起動される |
| ジョブとの紐付け | 既存クラスタを指定して実行 | ジョブ定義内にクラスタ設定を含む |
開発段階ではAll-Purpose Clusterでノートブックを対話的に実行し、コードが安定したら Job Clusterに切り替えてWorkflows(ジョブスケジューラ)で定期実行するのが標準的なワークフローです。
Job ClusterのDBU単価はAll-Purpose Clusterより大幅に安く設定されています。 同じインスタンスタイプ・同じ処理時間でも、Job Clusterで実行するだけでDBUコストが半額以下になるケースがあります。
コスト比較の概念例:
All-Purpose Cluster:
i3.xlarge × 4ノード × 2時間 = 8ノード時間
DBU単価: 高い(Interactive Compute)
Job Cluster:
i3.xlarge × 4ノード × 2時間 = 8ノード時間
DBU単価: 安い(Jobs Compute)
→ 同じ処理でも Job Cluster の方が DBU コストが低い
→ さらに自動終了でアイドル課金もゼロ本番ジョブをAll-Purpose Clusterで実行しているのは、コスト観点で最も非効率なパターンです。 試験でも「コスト最適化」の文脈でJob Clusterへの移行が正解になる問題が出ます。
Job Clusterはワークフロー(ジョブ)定義の中で設定します。 ジョブの各タスクに対して個別のJob Clusterを指定するか、複数タスクで共有するクラスタを定義できます。
ワークフロー定義例:
Job: daily_etl
├── Task 1: bronze_load(Job Cluster: i3.xlarge × 2ノード)
├── Task 2: silver_transform(Job Cluster: i3.2xlarge × 4ノード)
└── Task 3: gold_aggregate(Job Cluster: i3.xlarge × 2ノード)
各タスクのJob Clusterはタスク完了後に自動終了
→ Task 1 完了 → Cluster 1 終了
→ Task 2 開始 → Cluster 2 起動
→ ...タスクごとに異なるクラスタサイズを指定できるのがJob Clusterの利点です。 重い処理のタスクだけ大きなクラスタ、軽い処理は小さなクラスタ、と最適化できます。
ジョブ実行時に「既存のAll-Purpose Clusterを使う」オプションもあります。 しかしこれは以下の理由で非推奨です。
開発中の一時的なテスト以外では、Job Clusterを使うべきです。
Data Engineer Associate
問題 1
データエンジニアが開発したETLノートブックを本番化したい。毎日午前2時に実行し、コストを最小化する必要がある。最も適切な構成はどれか。
正解: A
本番ジョブにはJob Clusterが最適です。DBU単価が安く、ジョブ完了後に自動終了するためコスト効率が最高です。Instance Poolで起動を高速化するのもベストプラクティスです。All-Purpose Clusterの常時稼働や既存クラスタ利用はコストが高く、SQL WarehouseはノートブックのPython/Spark処理には不向きです。
Job ClusterとAll-Purpose Clusterの料金は違いますか?
はい。Job Cluster(Automated / Jobs Compute)はAll-Purpose Cluster(Interactive Compute)よりもDBU単価が安く設定されています。具体的な割引率はクラウドプロバイダーとプランによりますが、概ね2〜3倍の差があります。本番ジョブはJob Clusterで実行すべきです。
Job Clusterはジョブ完了後に自動終了しますか?
はい。Job Clusterはジョブタスクの完了後に自動的に終了・削除されます。ユーザーがクラスタを手動で管理する必要はありません。これがAll-Purpose Clusterとの最大の運用上の違いです。All-Purpose Clusterは自動終了設定をしない限り、手動で停止するまで稼働し続けます。
試験でJob Clusterはどう出題されますか?
Data Engineer Associateで頻出です。「本番バッチジョブに最適なコンピュートはどれか」→ Job Cluster、「開発・デバッグに適したコンピュートはどれか」→ All-Purpose Cluster、「コストを最小化するには」→ Job Cluster + Instance Pool + Cluster Policy の組み合わせ、という出題パターンが多いです。
NicheeLab編集部
データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。
Databricks資格一覧|全7試験・難易度・勉強法
Databricks認定資格全7試験の一覧・難易度・出題範囲・合格ラインを徹底解説。2026年最新版の公式試験ガイドに準...
Databricks試験の難易度ランキング|全7資格を徹底比較
Databricks認定全7試験の難易度をランキング形式で徹底比較。合格率・学習時間・出題傾向から難易度を分析。...
Databricks資格の勉強方法|最短合格ルートと学習時間の目安
Databricks認定資格に最短で合格するための勉強方法を完全ガイド。公式リソース・問題集・学習スケジュールを徹底解説...
Databricks Data Engineer Associate完全解説|出題範囲・問題例・合格戦略
Databricks Certified Data Engineer Associate試験を徹底解説。5つの出題ドメイ...
Databricks Data Engineer Professional完全解説|上級試験の攻略法
Databricks Certified Data Engineer Professional試験を徹底解説。10の出題...