Databricks とレイクハウスアーキテクチャ:DWH とデータレイクの統合

この記事について

Databricks はレイクハウスアーキテクチャの提唱者であり、その実装の中心的存在である。この記事では、Databricks がなぜレイクハウスを推進するのか、その設計思想と AWS・Oracle との違いを整理する。

1. Databricks の歴史

出来事
2009 UC Berkeley AMPLab で Apache Spark の研究開始
2013 Databricks 設立(Spark の開発者たちが創業)
2019 Delta Lake をオープンソースとして公開
2020 レイクハウスアーキテクチャを論文で正式提唱
2021 Unity Catalog 発表
2023 Mosaic ML 買収(LLM 開発基盤)
2024 DBRX(オープンソース LLM)公開

Databricks は「Spark の会社」から「レイクハウスプラットフォーム」へと進化した。

2. なぜレイクハウスか

2-1. 従来のアーキテクチャの課題

課題1: DWH の限界
  → 構造化データのみ、コスト高、ベンダーロックイン

課題2: データレイクの限界
  → ACID なし、品質管理困難、データスワンプ化

課題3: 2層アーキテクチャの限界
  → データの二重管理、ETL の複雑化、整合性の維持が困難

2-2. Databricks のレイクハウス

┌─────────────────────────────────────────┐
│          Databricks Lakehouse            │
│                                         │
│  ┌─────────────────────────────────┐    │
│  │  Unity Catalog                   │    │  ← ガバナンス
│  │  (カタログ, アクセス制御, リネージ)  │    │
│  └──────────────┬──────────────────┘    │
│                 │                       │
│  ┌──────────────┴──────────────────┐    │
│  │  Delta Lake                      │    │  ← トランザクション層
│  │  (ACID, スキーマ, バージョン管理)   │    │
│  └──────────────┬──────────────────┘    │
│                 │                       │
│  ┌──────────────┴──────────────────┐    │
│  │  クラウドオブジェクトストレージ      │    │  ← S3 / ADLS / GCS
│  │  (Parquet ファイル)               │    │
│  └─────────────────────────────────┘    │
│                                         │
│  ┌─────────┐ ┌──────┐ ┌──────────────┐ │
│  │SQL      │ │Spark │ │ML / AI       │ │  ← 統一コンピュート
│  │Warehouse│ │Cluster│ │(MLflow等)    │ │
│  └─────────┘ └──────┘ └──────────────┘ │
└─────────────────────────────────────────┘

3. Databricks vs AWS vs Oracle

観点 Databricks AWS Oracle
設計思想 統合プラットフォーム サービスの組み合わせ Oracle DB 中心
DWH + データレイク 統合(レイクハウス) 分離(Redshift + S3) 分離(ADW + Object Storage)
ETL + 分析 + ML 同一基盤 別サービス 別サービス
マルチクラウド ✅(AWS/Azure/GCP) ❌(AWS のみ) ❌(OCI のみ)
オープン性 Delta Lake(OSS) プロプライエタリ プロプライエタリ
ベンダーロックイン 低い(オープンフォーマット) 中程度 高い

4. Databricks のコンポーネント

コンポーネント 役割 AWS/Oracle 相当
Delta Lake テーブルフォーマット(ACID) なし(S3 は ACID なし)
Unity Catalog ガバナンス・カタログ Lake Formation + Glue Catalog
SQL Warehouse SQL 分析エンジン Redshift / ADW
Clusters Spark コンピュート EMR / OCI Data Flow
Delta Live Tables 宣言的 ETL パイプライン Glue / OCI Data Integration
Workflows オーケストレーション Step Functions / MWAA
MLflow ML ライフサイクル管理 SageMaker
Photon C++ ベースの高速クエリエンジン

5. Databricks の差別化ポイント

5-1. 統一プラットフォーム

AWS では Glue + Redshift + EMR + SageMaker を組み合わせる必要があるが、Databricks は1つのプラットフォームで完結する。

AWS:
  Glue(ETL) → S3 → Redshift(SQL) → SageMaker(ML)
  ↑ 4つのサービスを連携

Databricks:
  Delta Live Tables(ETL) → Delta Lake → SQL Warehouse(SQL) + MLflow(ML)
  ↑ 1つのプラットフォーム内

5-2. オープン性

  • Delta Lake:オープンソース(Apache License 2.0)
  • MLflow:オープンソース
  • Parquet:オープンフォーマット
  • データは顧客のクラウドアカウントに保存(Databricks がデータを保持しない)

5-3. マルチクラウド

同一のプラットフォームを AWS、Azure、GCP で利用可能。Unity Catalog でマルチクラウドのデータを統合管理。

6. まとめ

Databricks の強み 説明
レイクハウス DWH + データレイクの統合
統一プラットフォーム ETL、SQL、ML を1つの基盤で
オープン性 Delta Lake、MLflow がOSS
マルチクラウド AWS/Azure/GCP 対応
Spark の専門性 Spark の開発者が作った会社
Databricks の課題 説明
コスト DBU 課金が高くなりがち
学習コスト Spark の知識が前提
OLTP トランザクション処理には不向き

次回は Delta Lake の内部構造を深掘りする。

参考文献

  • Michael Armbrust et al. “Lakehouse: A New Generation of Open Platforms.” CIDR, 2021.
  • Databricks. “What is Databricks?” https://www.databricks.com/product/data-lakehouse
  • Databricks. “The Data Lakehouse.” https://www.databricks.com/glossary/data-lakehouse

コメントする