Modern Data Stackの構成要素
田中VPoE「データパイプラインの基本は理解できたね。次は、今のデータエンジニアリング業界で標準となっている『Modern Data Stack』について学ぼう。」
あなた「Modern Data Stackって、具体的にはどういうものですか?」
田中VPoE「一言で言うと、クラウドネイティブなSaaSツール群を組み合わせてデータ基盤を構築するアプローチだ。従来のオンプレミス型Hadoop基盤とは根本的に思想が異なる。」
Modern Data Stackとは
Modern Data Stack(MDS)は、クラウドネイティブなSaaSツールを組み合わせて構築するデータ基盤アーキテクチャです。2020年前後から急速に普及し、現在のデータエンジニアリングの標準的なアプローチとなっています。
従来のデータ基盤との比較
レガシー vs Modern Data Stack
| 項目 | レガシー(Hadoop時代) | Modern Data Stack |
|---|---|---|
| インフラ | オンプレミス | クラウド(SaaS) |
| スケーリング | 事前にクラスタ設計 | オンデマンドで自動スケール |
| 初期コスト | 数千万円〜 | 無料〜月額数万円で開始 |
| 運用負荷 | インフラチームが必要 | マネージドサービスで軽減 |
| 変換言語 | Java/Scala(MapReduce) | SQL中心 |
| 導入期間 | 数ヶ月〜1年 | 数日〜数週間 |
MDSが普及した背景
- クラウドDWHの進化:BigQuery、Snowflakeの登場でストレージと計算が分離
- SaaSの成熟:各レイヤーで専門ツールが充実
- SQLの復権:データエンジニアだけでなくアナリストも変換処理を書ける
- コスト構造の変化:従量課金でスモールスタートが可能
MDSの各レイヤー
レイヤー構成図
┌─────────────────────────────────────────────┐
│ Consumption Layer │
│ Looker / Tableau / Metabase / Superset │
├─────────────────────────────────────────────┤
│ Transformation Layer │
│ dbt / Dataform │
├─────────────────────────────────────────────┤
│ Storage Layer │
│ BigQuery / Snowflake / Redshift │
├─────────────────────────────────────────────┤
│ Ingestion Layer │
│ Fivetran / Airbyte / Stitch │
├─────────────────────────────────────────────┤
│ Data Sources │
│ SaaS / DB / API / ファイル / IoT │
└─────────────────────────────────────────────┘
Orchestration: Airflow / Dagster / Prefect
Observability: Monte Carlo / Elementary
各レイヤーの詳細
1. Ingestion Layer(データ取り込み)
| ツール | 特徴 | 料金モデル |
|---|---|---|
| Fivetran | 300+コネクタ、フルマネージド | MAR課金 |
| Airbyte | OSS、カスタムコネクタ対応 | 無料(OSS版) |
| Stitch | シンプル、Singer準拠 | 行数課金 |
| Embulk | バルクロード特化、プラグイン豊富 | 無料(OSS) |
2. Storage Layer(データ格納)
| ツール | 特徴 | コンピュートモデル |
|---|---|---|
| BigQuery | サーバーレス、Google Cloud | オンデマンド/定額 |
| Snowflake | マルチクラウド、仮想ウェアハウス | クレジット課金 |
| Redshift | AWSネイティブ、Spectrum連携 | ノード課金 |
| Databricks | Lakehouse、Spark基盤 | DBU課金 |
3. Transformation Layer(データ変換)
| ツール | 特徴 | 言語 |
|---|---|---|
| dbt | SQL変換のデファクトスタンダード | SQL + Jinja |
| Dataform | Google Cloud連携、SQLx | SQLX |
| Spark | 大規模分散処理 | Python/SQL/Scala |
4. Orchestration Layer(オーケストレーション)
| ツール | 特徴 | 学習コスト |
|---|---|---|
| Apache Airflow | デファクトスタンダード、Python DAG | 中〜高 |
| Dagster | アセット指向、型安全 | 中 |
| Prefect | シンプルAPI、フロー指向 | 低〜中 |
| Mage | ノートブック風UI | 低 |
5. Consumption Layer(データ活用)
| ツール | 特徴 | 対象ユーザー |
|---|---|---|
| Looker | LookML、セマンティックレイヤー | アナリスト |
| Tableau | 直感的なビジュアル分析 | ビジネスユーザー |
| Metabase | OSS、セルフサービスBI | 全社 |
| Superset | OSS、Apache Foundation | エンジニア寄り |
典型的なMDSアーキテクチャ例
NetShop社の場合
[MySQL] ──→ [Airbyte] ──→ [BigQuery] ──→ [dbt] ──→ [Looker]
[Stripe API] │ │ │
[GA4] ─────┘ [Raw Layer] [Mart Layer]
[Staging] [Dashboard]
[Mart]
| レイヤー | ツール選定 | 理由 |
|---|---|---|
| Ingestion | Airbyte | OSSでコスト抑制、MySQL/APIコネクタ充実 |
| Storage | BigQuery | GCPを既に利用、サーバーレスで運用楽 |
| Transform | dbt | SQL中心でアナリストも参加できる |
| Orchestration | Airflow | 実績豊富、Cloud Composer利用可 |
| BI | Looker | BigQueryとの親和性、セマンティックレイヤー |
まとめ
| 項目 | ポイント |
|---|---|
| MDSの特徴 | クラウドネイティブ、SaaS組み合わせ、SQL中心 |
| 5つのレイヤー | Ingestion → Storage → Transform → Orchestration → Consumption |
| 従来との違い | オンデマンドスケール、低い初期コスト、運用負荷の軽減 |
| ツール選定 | 組織の規模・スキル・既存環境に応じて選択 |
チェックリスト
- Modern Data Stackの5つのレイヤーを説明できる
- 従来のHadoop基盤との違いを理解している
- 各レイヤーの代表的なツールを2つ以上挙げられる
- MDSが普及した背景を説明できる
次のステップへ
Modern Data Stackの全体像を把握しました。次は、MDSの中核であるデータウェアハウスの設計思想について深掘りしましょう。
推定読了時間:30分