ETL(Extract / Transform / Load) いーてぃーえる
データパイプラインデータウェアハウスデータ統合バッチ処理ELTデータ変換
ETLについて教えて
簡単に言うとこんな感じ!
いろんな場所に散らばったデータを「集めて・きれいにして・まとめて保存する」作業のことだよ!料理で言えば、食材を畑から収穫して(Extract)、下ごしらえして(Transform)、冷蔵庫に整理して入れる(Load)イメージなんだ!
ETLとは
ETLとは、Extract(抽出)・Transform(変換)・Load(ロード)の頭文字を取った言葉で、異なる複数のシステムやデータベースからデータを収集・加工し、分析用のデータベース(データウェアハウス)などに格納するまでの一連のプロセスを指します。
企業の中には、販売管理・在庫管理・顧客管理など用途ごとにバラバラなシステムが存在しており、それぞれのデータ形式や単位がまちまちなことがほとんどです。ETLはこうした「データのバベルの塔」状態を解消し、分析や意思決定に使えるきれいなデータを一か所に集める「縁の下の力持ち」的な仕組みです。
近年のAI・機械学習の普及によって、質の高いデータを大量に準備する重要性が増しており、ETLはAI/MLプロジェクトの成否を左右するインフラとして注目されています。「データサイエンティストの仕事の80%はデータの準備」と言われるほど、ETLは現代のデータ活用の根幹を担っています。
ETLの3ステップ詳解
| ステップ | 英語 | やること | 具体例 |
|---|---|---|---|
| E | Extract(抽出) | 様々なソースからデータを取り出す | 基幹システムのDB、CSVファイル、API、Webログなど |
| T | Transform(変換) | データを分析しやすい形に整える | 日付フォーマット統一、重複削除、単位変換(円↔ドル)、欠損値補完 |
| L | Load(ロード) | 整えたデータを目的地に書き込む | データウェアハウス(BigQuery, Redshiftなど)へ格納 |
覚え方:「エース(ETL)が食材を整える」
Egg(卵=生のデータ)をTender(柔らかく加工)してLunch(ランチ=分析の場)に出す、と覚えると忘れにくいです!
ETLが扱うデータソースの種類
歴史と背景
- 1970年代〜:メインフレーム時代にデータ移行・統合ツールの概念が登場
- 1980年代:データウェアハウスの概念が確立し始め、ETLが不可欠なプロセスとして認識される
- 1990年代:Informatica・DataStageなど専用ETLツールが登場し、企業の基幹系に普及
- 2000年代:BI(ビジネスインテリジェンス)ブームで需要が急増。バッチ処理が主流
- 2010年代:クラウドの普及でAWS Glue・Google Dataflow・Azure Data FactoryなどクラウドネイティブなETLサービスが台頭
- 2020年代:AIブームでデータパイプラインの自動化・リアルタイム処理ニーズが高まり、ETLはAI/MLインフラの核心に
ETL vs ELT ── 似て非なる2つのアプローチ
クラウド時代に登場したELT(Extract / Load / Transform)は、変換を後回しにして先にロードするアプローチで、ETLとよく比較されます。
| 比較軸 | ETL | ELT |
|---|---|---|
| 変換のタイミング | ロード前に変換 | ロード後に変換 |
| 向いている環境 | オンプレ・レガシー系 | クラウドDWH(BigQuery等) |
| 生データの保持 | 変換後のみ保存 | 生データも保存可 |
| スケーラビリティ | ETLサーバーの性能に依存 | DWHの処理能力を活用 |
| 代表ツール | Informatica, Talend | dbt, BigQuery, Redshift |
関連する規格・RFC
| 規格・仕様 | 内容 |
|---|---|
| DMBOK(DMガイド) | データ管理知識体系。ETLはデータ統合・相互運用性の章で定義 |
| Parquet / ORC形式 | ETLの出力先でよく使われる列指向ファイルフォーマット |
| Apache Arrow | メモリ上のデータ変換を高速化する列指向フォーマット標準 |
関連用語
- データウェアハウス — 分析用データを集約・管理する大規模データベース
- データレイク — 生データを大量にそのまま格納するストレージ
- データパイプライン — データの収集から活用までの一連の流れの仕組み
- Apache Airflow — ETL