詳細検索

ETLとELT:プロジェクトに最適なデータ統合方法を選ぶ

アバター
著者: Chen Ziyu
4分で読めます

ETLとELT:プロジェクトに最適なデータ統合方法を選ぶ
Englishから翻訳 • 原文を読む

データエンジニアとして、おそらくETL(Extract-Transform-Load)と呼ばれるデータ統合手法を聞いたことがあるでしょう。この手法は以前から存在しており、多くのデータエンジニアがこの手法を使ってデータパイプラインを構築してきました。しかし、ETLだけが私たちの選択肢ではありません。近年、ELTも非常に人気を集めています。この記事では、ETLとELTを比較し、それぞれの利点と欠点を理解し、プロジェクトにより適した方法論を選べるようにします。

まずETLの仕組みを見てみましょう。ETLプロセスは通常、データソースからデータを抽出することから始まります。その後、以前に抽出したデータに対していくつかの変換を行います。最後に、変換されたデータを将来の利用のためにリポジトリに読み込みます。ETLプロセスでデータの変換が読み込み前に行われるという事実は、ETLの利点の大部分に寄与しています。主な利点は以下の通りです。

第一に、ETLはETLプロセス終了後、すぐに変換されたデータに即時アクセスを可能にします。このような即時アクセスにより、データを使用する前にほとんど準備を行わずに済みます。第二に、ETLプロセスのデータ系譜は透明で理解しやすいです。なぜなら、各ETLプロセスのデータ変換プロセスがあらかじめ定義されていて同じままだからです。第三に、ETLはコンプライアンスに配慮しています。時にはプライバシーコンプライアンスに準拠する必要があることもあり、これは最終目的地にプライベート情報をロードしないことを意味します。ETLは、データを保存する前の変換段階で機密情報を隠蔽、暗号化、または削除できるため、そのようなコンプライアンス要件に適しています。

しかしながら、ETLには多くの欠点があります。まず、ETLプロセスはかなり時間がかかることがあります。すべてのデータ変換がデータロードが行われる前に完了しなければならず、データ変換が完了するまでデータが利用可能になりません。データ変換プロセスの複雑さによっては、最終データに長期間アクセスできないこともあります。次に、ETLには剛性の問題があります。変換プロセスがあらかじめ決まっているため、ETLパイプラインをアドホックな要件に応じて修正するのは難しいです。第三に、ETLは脆弱であることがあります。最終データストレージにデータをロードする前にデータ変換を行うと、変換段階で何か問題が起きてもETLパイプラインはデータを保存しません。

ETLの欠点を克服するために、データサイエンティストたちは新しいデータ統合手法、すなわちELTを考案しました。ELTは抽出(extraction)、読み込み(loading)、transformation(変換)の略です。ETLとELTは基本的なステップを共有しますが、これらのステップを実行する順序は異なります。ETLとは異なり、ELTプロセスはデータ変換を行う前に抽出されたデータ全体をロードするため、ELTには以下のような利点があります。

第一に、ELTパイプラインはデータ変換前に抽出されたデータを読み込むため、変換されていないにもかかわらずデータを即座にアクセスできます。次に、ELTはより柔軟性があります。ELTの手法を採用すれば、データ消費の要件の変化に応じて、初期のデータソースから抽出されたすべてのデータにアクセスできるため、毎回データ変換プロセスをカスタマイズできます。第三に、ELTパイプラインでは非構造化データの保存が容易です。初期データを変換・構造化する時間や計算リソースがなくても、すべて保存し、後で変換や構造化の心配をすればよいのです。

まとめると、ETLとELTは基本的なステップは同じです:抽出、変換、読み込みです。それぞれの長所と短所は、データ変換が読み込みの前か後かに主に由来します。ETLとELTの違いを十分に理解した今、プロジェクトに最適なデータ統合手法を選ぶのがより簡単になるはずです。経験則として、構造化された小規模ソースデータがあり、ターゲットデータのフォーマットが比較的一貫している場合は、ELTよりETLを選ぶべきです。一方で、非構造化の大規模ソースデータを持ち、ターゲットデータの要件が常に変化する場合は、ETLよりELTを選ぶべきです。この記事をお読みいただきありがとうございました。あなたのデータエンジニアリングの旅路がうまくいくことを心からお祈りします。

さらなる参考文献: ETLとELTの概要

Related Articles