統計ロードマップ
2026-04-30·実装·⏱ 約 4

データエンジニアリング基礎 ─ ETL・Data Lake・dbt の世界

ML を本番運用するなら避けて通れないデータエンジニアリング。ETL・データレイク・データウェアハウス・dbt・Airflow など現代スタックの概要。

ML エンジニアの 7 割の時間はデータエンジニアリング」 ─ よく聞く言葉ですが本当です。本記事では現代のデータスタックの全体像を整理します。

ETL から ELT へ

  • 従来の ETL: Extract → Transform(変換)→ Load。変換専用サーバが必要、修正が大変
  • 現代の ELT: Extract → Load(まず生のまま)→ Transform。データウェアハウス内で SQL で変換 → 安く速く柔軟
  • 理由: クラウド DWH(Snowflake/BigQuery)の計算が安くなり、生データを残す方が後の柔軟性が高いから

ストレージ層の選択肢

  • Data Warehouse(BigQuery, Snowflake, Redshift): 構造化データ最適、BI・分析に強い
  • Data Lake(S3, GCS, ADLS + Parquet/Delta): 大規模・低コスト、非構造化データも
  • Lakehouse(Databricks, Iceberg): Lake + Warehouse のいいとこ取り、ACID トランザクション付き

変換層 ─ dbt の革命

dbt(data build tool)

SQL ベースの変換フレームワーク。生データから加工済みテーブル(マート)を作る処理を テスタブル・バージョン管理可能 な SQL で記述。

特徴: - `.sql` ファイルとして変換ロジックを管理(Git で履歴を追える) - データテスト: ユニーク性・null チェック・参照整合性を SQL で - データ系譜(lineage): 依存関係を自動図示 - ドキュメント自動生成 - Snowflake/BigQuery/Databricks など主要 DWH に対応

オーケストレーション層

  • Apache Airflow: 老舗。Python DAG。エコシステム大
  • Dagster: モダン。データ資産(asset)中心の設計
  • Prefect: 軽量・動的。Pythonic な API
  • Mage: 新興。UI が良くスタートアップ向け

ストリーミング処理

  • Apache Kafka: イベントストリーミングの事実上の標準
  • Apache Flink: 状態を持つストリーム処理
  • Confluent Cloud / Redpanda: マネージド Kafka
  • Materialize: ストリーム上の SQL ビュー

現代の典型スタック例(中規模スタートアップ)

  1. 取り込み: Fivetran or Airbyte で SaaS から BigQuery へ
  2. ストレージ: BigQuery(DWH)+ GCS(Data Lake)
  3. 変換: dbt Core(or dbt Cloud)で SQL ベース
  4. オーケストレーション: dbt Cloud のスケジューラ or Airflow
  5. BI: Looker / Metabase / Hex でダッシュボード
  6. ML: BigQuery → Vertex AI / SageMaker でモデル学習
💡 データエンジニアリングがキャリアの鍵

ML エンジニアの 転職市場で最も差別化できるスキル が実はデータエンジニアリング。モデリングだけできる人は多いが、本番運用できるパイプラインを設計できる人は希少。SQL + dbt + Airflow の 3 点セットを抑えるとキャリアが広がる。

関連

  • [SQL 中級](/blog/sql-intermediate-for-data)
  • [MLOps 基礎](/blog/mlops-basics)
  • [プログラミング入門 第 4 章 SQL](/programming#ch4)
  • [Docker 入門](/blog/docker-for-ml)
Related Articles

関連記事