ETL vs ELT: 5つの重要な違い

![スクリーンショット 2022-04-22 10.00.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/65461/9b1d9457-2b0f-0481-d965-cae509d736fc.png)
## ETL vs ELT ５つの重要な違い
1. ELTがデータの抽出、ロード、変換であるのに対し、ETLは抽出、変換、ロードです。
1. ETLでは、データはデータソースからステージング、そしてデータウェアハウスに移動します。
1. ELTは、基本的な変換はデータウェアハウス側で行います。データのステージングを必要としません。
1. ETLは、データウェアハウスにロードする前でも、データのプライバシーとコンプライアンス、機密性と安全性の高いデータのクレンジングを行うことことができます。
1. ETLは、高度なデータ変換を実行することができ、ELTよりも費用対効果が高くなります。 

ETLとELTの説明は簡単ですが、全体像、つまりETLとELTの潜在的な利点を理解するには、ETLがデータウェアハウスでどのように機能するか、ELTがデータレイクでどのように機能するかについて、より深い知識が必要です。

## ETLおよびELT概要
ETLとELTはデータサイエンスの分野において必要なタスクの一部です。情報の取得元が構造化SQLデータベースもしくは、非構造化NoSQLデータベースの場合でも、同じデータフォーマットまたは互換性のあるフォーマットを使用する場合でも、加工処理が不要なケースはめったに無いからです。したがって、データソースを分析可能なデータに統合する前に、データソースのクリーンアップ、データの追加、および変換を行う必要があります。これにより、ビジネスインテリジェンスプラットフォーム（Looker、Chartio、Tableau、QuickSightなど）がデータを理解し、そこからインサイトや発見を得ることができるようになります。

ETL、ELTのいずれにおいても、データ変換、統合プロセスは以下のステップを含みます。

- **Extract 抽出**：抽出とは、元のデータベースまたはデータソースからソースデータを取得することです。 ETLを使用すると、データは一時的なステージング領域に送られます。 ELTを使用すると、すぐにデータレイクのストレージシステムに移行します。

- **Transform 変換**：変換とは、情報の構造を変更するプロセスを指します。そのため、ターゲットデータシステムおよびそのシステムの残りのデータと統合されます。

- **Load ロード**：ロードとは、情報をデータストレージシステムに格納するプロセスのことです。

既に述べたように、ETLとELTは、上記のステップを異なる順序で実行します。ターゲットのデータストアへロードする前に変換すべきか、それともその後にすべきか？といった問題を解くためには、まずETLとELTについてそれぞれ理解しておく必要があります。

**こちらも参考**: [What is ETL?](https://www.integrate.io/jp/blog/etl-vs-elt-ja/)

## ETL処理について
![スクリーンショット 2022-04-22 9.33.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/65461/5c10be62-ebb9-e378-4204-c64429d12346.png)
[OLAPデータウェアハウス](https://www.tutorialspoint.com/dwh/dwh_olap.htm)の場合、クラウドかオンプレミスかに関係なく、リレーショナルデータベースのデータ構造を使用する必要があります。したがって、当たり前ですがOLAPデータウェアハウスにロードしてくるデータは、データウェアハウスが取り込む前にリレーショナル形式に変換されたデータである必要があります。このデータ変換プロセスの一部として、リレーション情報に基づいて複数のデータソースを結合するためにデータマッピングが必要になる場合があります（そうして最終的には、ビジネスインテリジェンスプラットフォームは、唯一の統合されたユニットとして情報を分析することができます）。

なぜデータウェアハウスがETLを必要とするのでしょうか? その理由は言葉の通り、変換がデータのロードより前に行われるからです。それではETLについてもう少し詳しく見ていきましょう。

- **きめ細かいワークフローによる継続的なプロセス**：ETLは、最初に同じまたは異なるデータソースからデータを抽出します。次に、データをステージング領域に保管します。その後、データはクレンジング、変換され、データウェアハウスに保存されます。

- **かつてはデータエンジニアおよび開発者による詳細な設計、管理、およびコーディングが必要**：データウェアハウジングのためにETL変換を手作業でコーディングする昔ながらの方法には、膨大な時間がかかりました。処理を設計した後、新しい情報が追加されるなどの理由によりデータウェアハウスの設計が変更されると、それに対応したデータを準備するまでに時間がかかっていました。

- **最新のETLソリューションは、より簡単で高速** ：最新のETLは、特にクラウドベースのデータウェアハウスおよびクラウドベースのSaaSプラットフォームで、はるかに高速に実行されます。 [Integrate.io](https://try.integrate.io/jp-demo/)などの[クラウドベースのETLソリューション](https://www.integrate.io/blog/cloud-based-etl-tools/)を使用することで、ユーザーはプログラミングの専門知識がなくても、さまざまなソースからデータを即座に抽出、変換、およびロードすることができます。

## ETLの最大の利点
ELTに対するETLの最大の利点の1つは、OLAPデータウェアハウスの構造化された特性です。 ETLでデータを構造化し、変換後、高速で、効率的、安定したデータ分析が可能になります。それとは対照的に、ELTはスピーディなデータ分析を必要としている場合には向きません。

ELTに対するETLのもう1つの重要な利点は、コンプライアンスに関するものです。多くの場合、[GDPR](https://www.integrate.io/blog/etl-for-gdpr-and-ccpa/)、[HIPAA](https://www.hhs.gov/hipaa/index.html)、または[CCPA](caprivacy.org)によって規制されている企業は、クライアントのプライバシーを保護するために、特定のデータ列を除いたり、マスキングしたり、または暗号化する必要があります。これらの処理には、電子メールをドメインのみに変換したり、IPアドレスの最後の部分を削除するといったことがあるかと思います。 ETLは、データをデータウェアハウスに入れる前に変換するため、これらの変換を実行するためのより安全な方法を提供します。対照的に、ELTでは最初に機密データを加工なしでアップロードする必要があります。そのためシステム管理者が監視している場合は画面で検知されるでしょう。また、ELTを使用してデータを変換すると、データレイクにアップロードするときに準拠していないデータがEU外へ持ち出される場合、EUのGDPRコンプライアンス基準を意図せず違反してしまう可能性があります。こうしたことから、ETLはコンプライアンス違反のリスクを低減するのにも役立つと言えます。なぜなら、ロード前に変換が行われるETLでは、コンプライアンス違反のデータが誤ってデータウェアハウスもしくはレポートやダッシュボード等にそのまま使われることがないからです。

最後に、データ統合/変換プロセスとして、ETLは20年以上にわたって存続してきました。つまり、データの抽出、変換、ロードのニーズを支援するために、様々な機能的に開発された[ETLツール](https://www.integrate.io/jp/blog/top-7-etl-tools-2022-ja/)とプラットフォームを利用可能です。また、ETLパイプラインの作成には、熟練の経験豊富なデータエンジニアを簡単に見つけることができます。

## ELT処理について
![スクリーンショット 2022-04-22 9.55.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/65461/4a3f734f-4dda-af60-d78c-cc2df93cef21.png)

**ELTとは?**
ELTとは 「Extract、 Load、 Transform」の略です。このプロセスでは、データウェアハウスを介してデータを活用し、基本的な変換を行います。つまり、データのステージングは必要ありません。ELTでは、構造化データ、非構造化データ、半構造化データ、さらにはローデータなど、あらゆる種類のデータに対応したクラウドベースのデータウェアハウスソリューションを使用します。

**ELTのプロセスは、「データレイク」とも密接に関係しています。** 「[データレイク](https://www.integrate.io/glossary/what-is-data-lake/)」は、OLAPデータウェアハウスとは異なり、あらゆる種類の構造化データまたは非構造化データを受け入れる特別な種類のデータストアです。データレイクでは、ロードする前にデータを変換する必要はありません。データ形式に関係なく、あらゆる種類の「未加工」情報をデータレイクにすぐにロードすることができます。

ビジネスインテリジェンスプラットフォームでデータを分析する前に、データ変換が必要となります。ただし、データをデータレイクにロードした後に、データのクレンジング、強化、および変換が行われます。それでは ELTとデータレイクについて見ていきましょう。

- **高速なクラウドベースのサーバーによって可能になった新しいテクノロジー**：ELTは比較的新しいテクノロジーであり、最新のクラウドベースのサーバーテクノロジーによって実現可能になりました。クラウドベースのデータウェアハウスは、ほぼ無限のストレージ機能とスケーラブルな処理能力を提供します。たとえば、Amazon RedshiftやGoogle BigQueryのようなプラットフォームは、信じられないほどの処理能力によりELTパイプラインを可能にしています。

- **どんなデータもすべて取り込む**：ELTとデータレイクを組み合わせて、現在も拡大し続けている保管されたデータをすぐに取り込むことが可能です。またデータをデータレイクに保存する前に、データを特別な形式に変換する必要はありません。
- **必要なデータのみを変換**：ELTは、特定の分析に必要なデータのみを変換します。データの分析プロセスは遅くなりますが、柔軟性が向上します。データをその場でさまざまな方法を使って変換し、さまざまな種類のメトリック、予測、レポートを作成できるためです。対照的にETLの場合は、事前に定義された構造が新しいタイプの分析に向かない場合、ETLパイプライン全体とOLAPウェアハウスのデータ構造を変更する必要があります。

- **ELTはETLよりも信頼性が低い**：ELTのツールとシステムはまだ進化しているため、OLTデータベースと組み合わせたETLほど信頼性がないことを頭に入れておく必要があります。ETLは構築により多くの労力がかかりますが、ETLは膨大なデータを処理する際により正確なインサイトを提供します。また、ELTテクノロジーを熟知しているELT開発者は、ETL開発者よりも見つけてくるのが難しいです。

## ELTの最大のメリット
ETLに対するELTの主な利点は、新規に非構造化データを格納する場合の柔軟性と容易さにあります。 ELTを使用すると、あらゆる種類の情報を保存できます。最初に情報を変換および構造化する時間や能力がなくても、必要なときにすべての情報にすぐにアクセスできます。さらに、データを取り込む前に複雑なETLプロセスを開発する必要がなく、開発者とBIアナリストが新しい情報を処理する時間を節約できます。

その他のELTのメリットをご紹介します。

**メリット1 ：高速性**
データの可用性という点では、ELTはより高速なオプションです。ELTでは、すべてのデータがすぐにシステムに入り、そこからユーザーは、変換と分析の両方に必要なデータを正確に判断することができます。

**メリット2：低メンテナンス**
ELTでは、一般的にユーザーは「ハイタッチ」のメンテナンスプランを持つ必要がありません。 ELTはクラウドベースであるため、ユーザーが手動で更新を行うのではなく、自動化されたソリューションを利用します。 

**メリット3：ローディングの高速化**
ELTは、データがウェアハウスにロードされるまで変換ステップを行わないため、データを最終地点にロードする時間を短縮することができます。データのクレンジングやその他の修正を待つ必要がなく、ターゲットシステムに一度だけ入力すればよいのです。

## ELTの最適な使用方法
この記事で説明したように、ETL vs ELTの比較は現在進行形で続けられており結論は出ていません。では、どのような状況でETLの代わりにELTの使用を検討すべきでしょうか？ここでは、そのいくつかをご紹介します。

**利用例1**：

膨大な量のデータを持つ企業。ELTは、構造化、非構造化を問わず、膨大な量のデータに最適です。対象となるシステムがクラウドベースである限り、ELTソリューションを使えば、膨大な量のデータをより迅速に処理することができるでしょう。

**利用例2**：

必要な処理能力に対応できるリソースがある企業。ETLでは、処理の大部分は、データがウェアハウスに届く前のパイプライン内で行われます。ELTでは、データがデータレイクに到着してから作業を行います。目的に応じてデータにどのような処理が必要かにもよりますが、中小企業の場合、データレイクのメリットを最大限に引き出すために必要な大規模なテクノロジーを開発・検討するだけの経済的な柔軟性がない場合もあります。

**利用例3**：

すべてのデータを早急に一か所に集めたい企業。変換がプロセスの最後に行われる場合、ELTはほとんどすべてのことよりも転送速度を優先します。つまり、良いデータも悪いデータもその他のデータも、すべてのデータが後の変換のためにデータレイクに入ってしまうのです。

## ETL vs. ELT 比較表

| |ETL|ELT|
|:----|:----|:----|
|テクノロジーの浸透度とツールや専門家の可用性|20年以上に渡って使われてきたすでによく開発された手段です。ETLの技術者はすぐに見つけてくることができます。|新しいテクノロジーということで、技術者を見つけるのが難しく、データパイプライン開発がETLに比べて難しいといったことがあります。|
|システム内でのデータの可用性|データウェアハウスや[ETL処理](https://www.integrate.io/blog/etl-data-warehousing-explained-etl-tool-basics/)を作成する際、事前に決めたデータについてのみ変換、ロードします。そのためデータの可用性は限定されます。|即座にロード可能であり、ユーザーは取り込んだ後にどのデータを加工したり利用すべきかを決めることができます。|
|計算項目を追加できるか？|計算は既存の列を置き換えるか、データセットに追加して計算結果をターゲットデータに送ることができます。|計算項目を既存のデータセットに直接追加することができます。|
|データレイクとの互換性|通常、データレイク向けのソリューションではありません。構造化されたリレーショナルなデータウェアハウスシステムと統合するためにデータを変換します。|非構造化データを取り込むためのデータレイクへのパイプラインを提供します。分析のために必要に応じてデータを変換します。|
|コンプライアンス|機密情報をデータウェアハウスやクラウドに格納する前に編集および削除できます。これにより、GDPR、HIPAA、およびCCPAコンプライアンス基準を満たすことが容易になります。また、データをハッキングや不注意な露出から保護します。|機密情報を編集/削除する前にデータがアップロードされます。これは、GDPR、HIPAA、およびCCPA標準に違反する可能性があります。機密情報は、ハッキングや不注意によるデータ漏洩といった問題に対してより脆弱な状況です。また、クラウドサーバーが別の国にある場合、一部のコンプライアンス基準に違反する可能性があります。|
|データサイズと変換処理の複雑さ|複雑な変換を必要とする小規模なデータセットを扱うのに最適です。|大量の構造化および非構造化データを処理する場合に最適です。|
|データウェアハウスに対応しているか？|クラウドベースおよびオンプレミスのデータウェアハウスと連携します。リレーショナルデまたは構造化データ形式である必要があります。|クラウドベースのデータウェアハウジングソリューションと連携して、構造化、非構造化、半構造化、および未加工のデータ形式をサポートします。|
|ハードウェア要件|[クラウドベースのETLプラットフォーム](https://www.integrate.io/blog/cloud-based-etl-tools/)（Integrate.ioなど）は、特別なハードウェアを必要としません。|クラウドベースであり、特別なハードウェアを必要としません。|
| |昔からのオンプレミスETLには、膨大なリソースと高価なハードウェアが要件として求められる場合がありますが、現在はあまり一般的ではありません。| |
|集計方法の違い|データセットのサイズが大きくなると、集計はより時間がかかります。|強力なクラウドベースのターゲット・データシステムがあれば、大量のデータをすばやく処理できます。|
|実装の難易度|専門家を容易に見つけてくることできます。プロジェクトを効率的に進めるために、高度に進化したETLツールを利用できます。|新しいテクノロジーとして、ELTソリューションツールはまだ発展途上にあります。必要なELTの知識とスキルを持つ専門家を見つけるのは容易ではありません。|
|メンテナンス|Integrate.ioのような自動化されたクラウドベースのETLソリューションにおいて、メンテナンスはほとんど必要ありません。ただし、物理サーバーを使用するオンプレミスETLソリューションでは、頻繁なメンテナンスが必要になります。|クラウドベースであり、通常は自動化されたソリューションが組み込まれているため、メンテナンスはほとんど必要ありません。|
|処理の順序|データ変換は、ステージング領域内で抽出した直後に発生します。変換後、データはデータウェアハウスにロードされます。|データが抽出され、最初にターゲットデータにロードされます。その後、分析のため「必要に応じて」データの一部が変換されます。|
|費用|セッションごとの課金モデル（Integrate.ioなど）で請求するクラウドベースのSaaS ETLプラットフォームは、使用要件に応じて、約100ドルからスタートする柔軟なプランを提供しています。一方、InformaticaのようなエンタープライズレベルのオンプレミスETLソリューションは、年間100万ドル以上かかる可能性があります。|セッションごとの課金モデルで請求するクラウドベースのSaaS ELTプラットフォームは、約100ドルからスタートする柔軟なプランを提供しています。 ELTのコスト上の利点の1つは、高額な料金を支払うことなくデータをロードおよび保存し、必要に応じて変換できることです。情報をロードして保存するだけであれば、これにより初期費用を節約できます。ただし、財政難の企業は、データレイクのメリットを最大限に活用するために必要な処理能力を確保できない場合があります。|
|変換処理|変換は、データウェアハウスではなく外部のステージングエリア内で行われます。|変換はデータシステム自体で内部的に行われるため、ステージング領域は不要です。|
|非構造化データのサポート|非構造化データを構造化するために使用できますが、非構造化データをターゲットシステムに渡すのには使用されません。|非構造化データをデータレイクにアップロードし、非構造化データをビジネスインテリジェンスシステムで利用できるようにするソリューションです。|
|データをロードするのにかかる時間|処理時間は、多段階のプロセスを経るため、ELTよりも長くなります。（1）ステージング領域へのデータロード、（2）変換の実行、（3）データウェアハウスへのデータロード。いったんデータがロードされると、データ分析はELTよりも高速に行われます。|変換の必要がなく、データがターゲットシステムにそのままロードされるため、データの処理時間が高速になります。ただし、データ分析はETLよりも遅くなります。|
|データを変換するのにかかる時間|すべてのデータがロード前に変換を必要とするため、最初はデータ変換に時間がかかります。また、データシステムのサイズが大きくなった場合も、変換に時間がかかります。ただし、変換されてシステム内に配置されると、迅速かつ効率的にデータ分析を行うことができます。|変換はロード後に必要に応じて行われるため、その時点で分析対象のデータのみを変換するため、変換は非常に高速に行われます。ただし、データを継続的に変換する必要があるため、クエリ/分析にかかる合計時間が遅くなります。|


## まとめ
ETLは、Extract（抽出）、Transform（変換）、Load（ロード）の略で、ELTはExtract（抽出）、Load（ロード）、Transform（変換）の略です。
ETLでは、データはデータソースからステージング、そしてデータ転送先（デスティネーション）へと流れます。
ELTでは、データ転送先で変換を実施します。データのステージングは不要です。
ETLは、データのプライバシーやコンプライアンス、データ転送先にロードする前にセンシティブなデータをクレンジングするなどに役立ちますが、ELTは、それよりシンプルで、マイナーなデータニーズを持つ企業に適しています。

## データ活用に力を
もしあなたがデータ統合のボトルネックに悩んでいるなら、Integrate.ioの自動化されたETLプラットフォームは、クラウドベース、ビジュアル、ノーコードのインターフェイスを提供し、データ統合と変換を手間のかからないものにしてくれます。Integrate.ioの何百ものすぐに使える統合は[こちら](https://www.integrate.io/integrations/)でチェックしてください。 
ご質問やご相談などございましたら、[Integrate.io](https://try.integrate.io/jp-demo/)がどのようにしてあなたのユニークなETLの課題を解決することができるかを知るために、私たちのチームにお気軽にご相談ください。