テックカリキュラム

データ基盤(ETL・ストリーム処理)

データ基盤(ETL・ストリーム処理)

本章では、システムで扱うデータを収集・加工・保存・活用するためのデータ基盤の設計を学ぶ。
ETL処理とストリーム処理の違いを理解し、 リアルタイム性とスケーラビリティを兼ね備えたデータパイプラインを設計できる力を身につけることを目的とする。


1. データ基盤とは

データ基盤は、データを効率的に収集・加工・蓄積し、 分析やアプリケーションで活用するための仕組みである。

  • データ収集(Ingestion)
  • データ加工(Processing)
  • データ保存(Storage)
  • データ活用(Analytics / ML)

現代のシステムでは、データ基盤がビジネス価値の中核を担う。


2. ETL(Extract / Transform / Load)

ETLは、データ処理の基本パイプラインである。

■ Extract(抽出)

  • データベースやログからデータ取得

■ Transform(変換)

  • データクレンジング
  • フォーマット統一
  • 集計処理

■ Load(格納)

  • データウェアハウス(DWH)へ保存

バッチ処理として定期実行されることが多い。


3. ELTとの違い

近年では、ETLではなくELT(Extract / Load / Transform)が主流になりつつある。

  • 先にデータを保存
  • 後から必要に応じて変換

クラウドDWHの性能向上により、柔軟なデータ活用が可能となった。


4. ストリーム処理(リアルタイム処理)

ストリーム処理は、データをリアルタイムで処理する方式である。

  • イベント駆動型
  • 低レイテンシ
  • リアルタイム分析に適用

■ 代表的な用途

  • ログ分析
  • 不正検知
  • リアルタイムレコメンド

バッチ処理との違いは「処理タイミング」にある。


5. データストレージの種類

■ データウェアハウス(DWH)

  • 分析用データ保存
  • 構造化データに強い

■ データレイク

  • 生データをそのまま保存
  • 非構造データにも対応

■ OLTP / OLAP

  • OLTP:トランザクション処理
  • OLAP:分析処理

用途に応じて適切に使い分けることが重要である。


6. データパイプライン設計

データパイプラインは、データの流れを自動化する仕組みである。

  • スケーラブルな設計
  • 再実行可能(Idempotent)
  • エラー耐性

重要な要素:

  • スケジューリング(定期実行)
  • 依存関係管理
  • 監視とアラート

7. データ品質とガバナンス

データ基盤では、品質管理が非常に重要となる。

  • データの正確性
  • 欠損値の管理
  • スキーマ管理

また、データの利用ルールを定めるガバナンスも必要である。


8. 実務における設計指針

  • バッチ処理とストリーム処理の使い分け
  • スケーラブルなストレージ設計
  • データの再利用性を高める
  • 監視と品質管理を組み込む

データ基盤は「作って終わり」ではなく、 継続的に改善されるべきシステムである。


まとめ

本章では、データ基盤の基本構造を理解した。

  • ETL/ELTでデータ処理を構築
  • ストリーム処理でリアルタイム化
  • DWHとデータレイクを使い分け
  • パイプラインで自動化
  • 品質とガバナンスを確保

これにより、データを価値に変換する基盤を設計できるようになる。