コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

データを取り扱う文脈で使われる「ETL」そして「ELT」に関してざっくりまとめる。

EとLがつくとEndとLifeに見えてしまい、製品寿命のことを思い出すのでざっくり整理メモ

そもそもの言葉の意味

データアナリティクスなどの文脈で使われる言葉で、ETLもELTも『Extract』『Transform』『Load』の頭文字をつなぎ合わせた言葉である。その言葉それぞれが示す意味に関して以下で記述する

Extract(抽出)

Excelでまとめられたデータや、tsv、RDBに格納されたデータなどを抽出する作業のことを指す。

Trasform(変換)

対象のデータに関して集約する際にフォーマットを揃えたり、重複したいらないデータを加工するなどの作業。作業内容はデータの性質によってはかなり変わる。

Load(集約先での読み込み)

集約したい新しい場所で外からのデータに関して読み込みをする作業のことを指します。送ることが主体ではなく出来上がったデータを読み込むことが主体なためLoadという記述。

ETL(Exrtract / Transform / Load)とは

ETLは複数のデータソースを一箇所の場所に集約する仕組みのことで

  1. Exrtract
  2. Transform
  3. Load

の順番で行われる。だいたいはExtractとTransformの作業は異なるツールで行われ、Loadしやすい形に変換される

ELT(Exrtract / Load / Transform )とは

ETLと同じく、複数のデータソースを一箇所の場所に集約する仕組みではあるのだが、順番が異なり

  1. Exrtract
  2. Load
  3. Transform

という順番で行われ、抽出したデータを集約する場所に先んじて読ませてしまい、その場所のやりかたで変換を行うというやり方。

BiqQueryなどのツールを使えば、Loadはさまざまなものに対応しているのでそこに入れてしまい、操作自体もSQLで行えるためTransformに別ツールを用いる手間などが減るので注目されている。

参考リンク