Databricksのコンピュートには「自分でクラスタを管理する」従来型と「Databricksに全てを任せる」サーバーレス型があります。2024年以降、Serverless Computeの対象はSQL Warehouseだけでなく、NotebooksやJobsにも拡大しました。この記事では、Serverless Computeの仕組み、3種類のSQL Warehouseの違い、料金体系、制約、セキュリティ、そして「いつServerlessを選ぶべきか」の判断基準を整理します。
Databricks SQL Warehouseには3つのタイプがあり、それぞれコスト・性能・管理の特性が異なります。試験ではこの3種の違いが直接問われるため、正確に区別できることが重要です。
| 比較項目 | Classic | Pro | Serverless |
|---|---|---|---|
| 起動時間 | 5〜10分 | 5〜10分 | 数秒 |
| インフラ管理 | ユーザー管理(サイズ・数を設定) | ユーザー管理(サイズ・数を設定) | Databricksが完全管理 |
| Photonエンジン | 対応 | 対応 | 対応(常時有効) |
| 料金体系 | DBU × 時間(起動中は課金) | DBU × 時間(起動中は課金、Classic比で単価高) | DBU × 時間(アイドル時は課金なし) |
| スケーリング | 手動設定(min/maxクラスタ数を指定) | 手動設定(min/maxクラスタ数を指定) | 自動(負荷に応じて即座にスケール) |
| クエリキューイング | あり | あり | 自動スケールにより最小化 |
| Predictive I/O | 非対応 | 非対応 | 対応 |
| Intelligent Workload Management | 非対応 | 対応 | 対応 |
試験で最も問われるポイントは「アイドル時の課金の有無」です。ClassicとProは起動中であればアイドルでもDBUが発生しますが、Serverlessはクエリ実行時のみ課金されます。断続的にクエリを実行するBIダッシュボードなどでは、Serverlessのコスト効率が圧倒的に高くなります。
Serverless Notebooksは、対話型のNotebook実行をサーバーレスで行う機能です。従来はNotebookを使うためにAll-Purpose Clusterを起動し、数分間の待ち時間が必要でした。Serverless Notebooksでは、Notebookにアタッチするコンピュートとして「Serverless」を選択するだけで、数秒以内にセルの実行が開始されます。
対応言語はPython、SQL、Scalaです。Rは現時点で非対応です。Pythonでは%pip installによるPyPIパッケージのインストールが可能ですが、セッション単位のインストールとなり、セッション終了後は再インストールが必要です。
Serverless Notebooksの実体はDatabricksのコントロールプレーン上で管理される短命のコンピュートリソースです。ユーザーはクラスタサイズやインスタンスタイプを一切指定しません。Databricksがワークロードの特性に応じてリソースを自動割り当てします。
ジョブ(ワークフロー)の実行もサーバーレスで行えます。ジョブのタスク設定でコンピュートタイプとして「Serverless」を選択すると、ジョブ実行時にDatabricksが自動的にコンピュートをプロビジョニングします。
従来のJob Clusterとの最大の違いは、クラスタ起動のオーバーヘッドがほぼゼロになることです。夜間バッチで数十のタスクが順次実行されるワークフローでは、各タスクのクラスタ起動待ち時間が累積して全体のジョブ完了時間を大幅に伸ばしていました。Serverless Jobsではこのオーバーヘッドが解消されます。
ただし、Serverless Jobsでもカスタムinit scriptsやクラスタレベルのライブラリ設定は使用できません。依存ライブラリはタスク定義内で%pip installまたはrequirements.txt経由で指定します。
Serverless Computeを採用する動機は大きく4つに集約されます。
Serverless Computeは万能ではありません。以下の制約を理解した上で採用判断を行う必要があります。
| 制約カテゴリ | 内容 | 影響・代替策 |
|---|---|---|
| カスタムライブラリ | JARライブラリのクラスタインストール不可、init scripts非対応 | %pip installまたはrequirements.txtで対応。ネイティブ依存が必要なワークロードはClassic Computeを使用 |
| ネットワーク | VPC Peering / PrivateLink接続の直接構成不可 | Serverless用のPrivate Connectivity(NCC)を使用。従来のVPC Peering構成とは別のアプローチが必要 |
| 言語サポート | Serverless NotebooksでRは非対応 | R workloadはAll-Purpose Clusterを使用 |
| クラスタ設定 | インスタンスタイプ・ノード数・Spark設定のカスタム指定不可 | Databricksが自動最適化。細かいチューニングが必要なワークロードはClassic Computeを使用 |
| GPU | Serverless ComputeではGPUノード指定不可 | GPU必須のMLトレーニングや推論はClassic Computeを使用 |
| ストレージ | DBFSのルートストレージへの書き込み非対応 | Unity Catalog管理のVolumesまたは外部ロケーションを使用 |
Serverless Computeの料金はDBU(Databricks Unit)ベースの従量課金です。従来のコンピュートとの最大の違いは「クラウドインフラ費用がDBU単価に含まれる」点です。
コスト最適化の観点では、「常時高負荷で稼働するワークロード」はClassic/Proの方が割安になる場合があります。一方、「1日に数回クエリを実行するBIダッシュボード」「断続的に実行されるETLジョブ」ではServerlessがコスト面で有利です。
Serverless Computeのセキュリティは従来型と異なるアーキテクチャで実現されています。
Serverlessと従来型コンピュートの選択は、ワークロードの特性で判断します。以下のフローで整理できます。
Databricks認定試験(特にData Engineer Associate)では、Serverless Computeに関して以下のパターンで出題されます。
試験対策のコツは「Serverlessの利点」だけでなく「Serverlessでできないこと」を正確に把握することです。選択肢で「Serverlessなら全て解決する」という記述があった場合、制約を思い出して慎重に判断してください。
Data Engineer Associate
問題 1
あるチームは、毎日朝9時と夕方17時にBIダッシュボードからDatabricks SQL Warehouseに対してクエリを実行している。それ以外の時間帯はクエリは発生しない。現在Classic SQL Warehouseを使用しており、自動停止は60分に設定されている。コストを最適化するための最も効果的な対策はどれか。
正解: A
1日2回・短時間のみクエリが発生するワークロードでは、Classic SQL Warehouseは起動中のアイドル時間に大量のDBUとインフラ費用が発生します。Serverless SQL Warehouseはクエリ実行時のみDBUが課金され、アイドル時は課金されないため、この利用パターンでは最もコスト効率が高くなります。自動停止を短縮しても起動中のアイドル課金は残り、クラスタサイズ縮小はアイドル課金の根本的な解決にはなりません。
Serverless SQL WarehouseとClassic SQL Warehouseの最大の違いは何ですか?
最大の違いはインフラ管理の有無です。Classic SQL Warehouseはクラスタサイズやスケーリングの設定をユーザーが行い、起動に数分〜10分程度かかります。Serverless SQL Warehouseはコンピュートリソースの管理をDatabricksが完全に行い、数秒で起動してクエリに応答できます。また、Serverlessはアイドル状態のDBU課金が発生しないため、断続的なクエリワークロードではコスト効率が高くなります。
Serverless Computeでカスタムライブラリは使えますか?
Serverless Notebooks / Serverless Jobsでは、%pip installでPyPIパッケージのインストールが可能ですが、カスタムのJAR・Wheel・init scriptsの利用には制約があります。特にinit scriptsは非対応、クラスタレベルのライブラリインストールも不可です。カスタムネイティブライブラリを多用するワークロードでは、Classic Compute(All-Purpose / Job Cluster)の利用を検討してください。
Serverless ComputeはDatabricks認定試験でどのように出題されますか?
Data Engineer Associate試験では、Classic / Pro / ServerlessのSQL Warehouse 3種類の違い(Photon対応、料金体系、起動速度、管理責任)が問われます。また「アイドル時のDBU課金」「自動スケーリングの仕組み」「どのワークロードにServerlessが適するか」といった実務判断系の設問も頻出です。Serverless Notebooks / Jobsについては主にData Engineer Professional試験の範囲です。
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の出題...