ETL(抽出、変換、ロード)とは

ETLの定義

ETL(抽出、変換、ロード)は、複数のソースからのデータを結合、クリーンアップ、整理するデータ統合プロセスです。その後、変換されたデータをデータウェアハウス、ターゲットデータベース、または他の宛先に読み込みます。

ETLデータ・パイプラインは、データ分析および機械学習のワークストリームの基盤を提供します。ETLは一連のビジネスルールを通じて、月次レポートのような特定のビジネスインテリジェンスのニーズに対応するためのデータをクレンジングして整理します。データ・ストリーミングのテクノロジーと組み合わせて使用すると、ストリーミングETLと呼ばれ、リアルタイムのデータ処理と即時の洞察が可能になります。

ETL データ・パイプラインは、データ分析と機械学習のワークストリームに対する基盤を提供します。ETLは一連のビジネスルールを通じて、月次レポートなどの特定のビジネスインテリジェンスのニーズに対応するためのデータをクレンジングおよび整理します。データ・ストリーミング・テクノロジーと併用することで、継続的に到着するイベント・ストリームにもETLを適用できます。これがストリーミングETLと呼ばれるアプローチです。

現在では、より新しいデータ統合オプションが企業で利用可能になっていますが、ETLはレガシー・システムと互換性があり、データ品質を向上させ、転送中の機密データのマスキングを可能にするため、依然として人気のある選択肢です。

ETLツールは オープンソース および商用ソリューションを通じて利用可能です。また、データベースや クラウド・プラットフォームにも統合されることが多いです。ETLソリューションの主な機能には、包括的な自動化、視覚的なインターフェイス、ETLとその他のデータ統合パターンを切り替える柔軟性が含まれます。

ETLが重要な理由は何ですか?

ETLは、企業が異種のソースから情報を収集し、オンプレミスのサーバーからクラウド・プラットフォームまで、さまざまな環境で分析や人工知能に使用できる信頼できるデータに変換するのに役立ちます。

今日のテクノロジー・ランドスケープと関連性があるとはいえ、ETLは実際には最新のAIワークロードやクラウド・コンピューティングよりも前から存在していました。計算と分析のためにデータを統合およびロードするプロセスとして、1970年代に導入されました。

ETLは最終的に、データ・ウェアハウジング・プロジェクトのデータを処理するための主要な方法になりました。1990年代から2000年代にかけて、 ビッグデータの時代が到来する中、組織はソーシャルメディアやIoT(モノのインターネット) デバイスやセンサーなど、新たなソースから取り出した大量のデータを統合するためにETLをデプロイしていました。

2000年代にクラウドインフラストラクチャがビジネスの定番となるにつれ、最新のETL ソフトウェアとツールによって、Amazon Web Services(AWS) 、Microsoft Azure、Snowflakeなどのクラウドデータプラットフォームやデータウェアハウスへのデータ移行と統合が可能になりました。また、このようなプラットフォームは、ETLソリューションが迅速かつ大規模に洞察を提供することを可能にし、それを採用した企業に競争上の優位性をもたらしました。

ETLの最新の進化は、ストリーミング・データの統合へのデプロイであり、継続的なデータ・フィードから集められた最新の洞察を提供します。

AI Academy

生成AIの成功の鍵はデータ管理

生成AIの使用を成功させるために、高品質のデータが不可欠である理由をご覧ください。

ETLとELTの比較

ETLに関する議論では、ELT(抽出、ロード、変換)という同様の名前のデータ統合プロセスについてよく言及されます。

用語が重複している点を除けば、この2つのプロセスは著しく異なります。明らかな違いは、操作の順序にあります。ELTでは、データ変換 はデータ統合プロセスの最後段階で行われ、中間ではありません。この2つのプロセスの最も大きな違いは、次のとおりです。

ETLとELTの違い

 

ETL

ELT

ステップの順序と位置

抽出後、データ変換は、データがターゲット・システムに読み込まれる前に、ステージング領域内で転送中に行われます。

抽出後、未加工データがターゲット・システムに読み込まれ、そのシステム内で変換されます。

データの種類

事前定義されたスキーマに合わせて変換できる構造化データに最適です。

格納先に適用されるスキーマ・オン・リード・アプローチを用いて、構造化データ、半構造化データ、非構造化データを処理するように設計されています。

データの量

小規模なデータ・セットに最適です。

ビッグデータ用に設計されています。

スピード

データの移動は、転送中の変換によって遅くなりますが、ターゲット・システムに到着すると同時に分析する準備が整います。

データはターゲットシステムに速く到達しますが、非構造化データは使用する前にターゲットシステム内でフォーマットされるのに時間がかかる場合があります。

コスト

変換に不可欠なデータ・インフラストラクチャーとエンジニアリングに関連する初期費用が高くなります。

データスタックが比較的シンプルであるため、初期コストは低いですが、予測できないデータ量は、後に予期せぬコストにつながる可能性があります。

保守

パイプラインは、データ・ソースの変更やダウンストリームのデータ要件に対応するために再設計する必要があるため、保守の必要性が高くなります。

データ・スタックがシンプルであるため、保守の必要性が低減します。

データ・プライバシーとセキュリティー

個人情報(PII)などの機密データを、転送中の変換中にマスキングしてから、格納先にロードすることができます。

ガバナンス・プログラムとセキュリティー対策は、機密の未加工データを公開するクラウド・ベースの侵害のリスクを軽減できます。

ETLの仕組み

ETLの仕組みを理解する最も簡単な方法は、プロセスの3つのステップ(抽出、変換、ロード)それぞれで何が起こっているかを理解することです。

抽出

ETLプロセスは、抽出の対象となる特定のデータ・ポイントと、異種のソース・システム全体でデータを統合するために使用できる潜在的な「キー」を特定することから始まります。入力データのソースは、多くの場合、メタデータを使用して追跡されます。

データ抽出中に、未加工データはデータソースからステージング・エリアにコピーまたはエクスポートされます。データ管理チームは、構造化データまたは非構造化データを含む、さまざまなソースからデータを抽出できます。データソースには以下が含まれますが、これに限定されません。

変換

ステージング・エリアでは、未加工データがデータ処理を受けます。ここでは、特定のビジネス・ルールに従って、データが変換され、意図した分析用途に合わせて統合されます。変換プロセスのこのフェーズには、以下が含まれます。

  • データのクリーニング、フィルタリング、集約、重複排除。
  • データの検証と認証。
  • 未加工データに基づいて計算、変換、要約を行う。このプロセスには、一貫性を保つために行と列のヘッダーを変更すること、通貨やその他の測定単位を変換すること、テキスト文字列を編集することなどが含まれます。
  • データ品質とコンプライアンスを確認するための監査の実施、メトリクスの計算。
  • 業界や政府の規制によって管理されるデータを削除、暗号化、または保護
  • データをテーブルまたは結合テーブルにフォーマットして、ターゲット・データ・ウェアハウスのスキーマに合わせる

ロード

最終ステップでは、変換されたデータがステージング・エリアからターゲットのデータウェアハウスへ移動されます。従来のETLでは、このプロセスには全データの初期ロードが含まれ、その後、増分データの変更の定期的なロードが行われ、頻度は少ないですが、ウェアハウス内のデータを消去して置き換える完全なリフレッシュが行われます。最新のストリーミングETLでは、データの読み込みが継続的に行われます。

従来のETLとストリーミングETLの比較

ETLは伝統的にバッチ指向のプロセスですが、Apache Kafkaなどの分散型イベントストリーミングプラットフォームは、ETLパターンをバッチ処理から継続的に到着するイベントストリームにまで拡張します。このようなストリーミングETLは、リアルタイムのデータ処理を可能にします。

Kafka互換のストリーミングプロセッサであるKafka Streams、ksqlDB、Apache Flinkは、データエンジニアがソースシステムからイベントのストリームを取り込み、移動中にデータを変換し、分析エンジンや下流アプリケーションに送信するETLパイプラインを構築できるようにします。これはバッチ処理ベースの統合とは異なり、低遅延で実現可能です。

このようなストリーミングETLには、従来のETLに比べて他にも優れたメリットがあります。重要なのは、柔軟性と拡張性の2つです。従来のETLパイプラインは、特定のユースケースや宛先向けに設計された変換ロジックで作成されていますが、さまざまなソースからKafkaにストリーミングされるデータは、さまざまなユースケースや消費者に合わせて変換できます。

言い換えれば、ストリーミングETLでは従来のETLにありがちな密結合を必要としないため、データ・ストリームを再利用でき、パイプラインの再構成にかかる時間と労力を削減できます。

このようなメリットがあるとしても、複雑な変換が必要な場合や時間が重要でない場合には、企業は依然としてストリーミングETLよりも従来のETLを選択できます。このような場合、従来のETLとバッチ処理の方がストリーミングETLよりもコスト効率が高くなります。

ETLおよびその他のデータ統合方法

従来のETL、ストリーミングETL、ELT以外にも、データ統合ワークフローを促進するために使用されるアプローチはあります。これらの手法には次のようなものがあります。

変更データキャプチャ (CDC)

CDCは、変更されたソース・データのみを識別してキャプチャーし、そのデータをターゲット・システムに移動します。CDCを使用すると、ETLの「抽出」ステップで必要なリソースを削減できます。データをデータレイクやその他のリポジトリにリアルタイムで移動するために単独で使用することもできます。

データの複製

データ・レプリケーションは、データ・ソースの変更をリアルタイムまたはバッチで中央データベースにコピーします。ETLとは異なり、通常、変換を限定してデータを保持します。データ・レプリケーションは、データの統合方法としてよく挙げられます。実際にはディザスター・リカバリー用のバックアップを作成するために最もよく使用されますが、データベースの移行やその他の目的にも使用できます。

データ仮想化

データ仮想化 は、ソース・データをターゲット・システムに物理的にコピー、変換、またはロードすることなく、統合され、全面的に使用可能なデータ・ビューをソフトウェアの抽象化レイヤーを通じて作成します。データ仮想化により、組織は同じソースデータから仮想データウェアハウス、データレイク、データ・マートを作成できます。このアプローチにより、それぞれ別のプラットフォームを構築・管理する費用と複雑さを軽減できる可能性があります。

ストリーム・データ統合(SDI)

ストリーム・データ統合は、ストリーミングETL、最新のELT、変更データ・キャプチャーなど、データ・ストリームをリアルタイムで継続的に使用およびロードできるようにするさまざまな統合方法の総称です。

ゼロETL

ゼロETLは、消費者が従来のデータ・パイプラインのステップをバイパスして、元の形式でデータをクエリーするためのファストデータ統合アプローチです。ゼロETLでは、ソース・システムとターゲット・システム間のポイントツーポイント接続を介してデータが共有されている間は、変換が延期されます。このような共有は、データの移動を必要とせずに複数のソース間でデータを照会するデータ・レプリケーションまたはフェデレーテッド・クエリーを通じて実行できます。

ETLのバリエーション

ETLの派生と考えることができるデータ統合アプローチがありますが、いくつかの注目すべき違いがあります。

  • ETLT(抽出、変換、ロード、変換)は、最後に追加の変換ステップを備えたETLです。従来のETLと同様に、一部のデータ変換はステージング領域で行われますが、追加の変換はデータウェアハウスなどの宛先システムで行われます。通常、最初の変換ステップには基本的な変更が含まれ、後の変換ステップにはより包括的な変更が含まれます。
  • リバースETLは、従来のETLのフローを変えます。データ・ソースからデータが抽出されるのではなく、データウェアハウスからすでに変換されたデータがSaaSアプリケーション、運用システム、またはその他の下流の消費者に送信されます。これはオペレーショナルアナリティクスとも呼ばれます。
  • TETL(変換、抽出、変換、ロード)は、最初に追加の変換ステップを備えたETLです。変換は、抽出される前にまずデータ・ソースで行われます。その後、ターゲット・システムにロードされる前に、必要に応じて再度変換されます。ソースシステムが変換を処理できる場合、企業はTETLを使用することを選択できます。これにより、ダウンストリームの処理の必要性が軽減されます。

ETLのメリットとは

従来のETLとストリーミングETLは、増大するデータ資産を管理する企業にさまざまなメリットをもたらします。

  • データ品質の向上:ETLは、データ・クレンジングや重複排除などの手法を通じて変換段階でデータ品質を向上させ、ターゲットとなるデータ・ストアに到着するデータの信頼性を高め、すぐに使用できる状態にします。
  • コンプライアンスサポート:ETLは、データを宛先に配信する前に暗号化などのコンプライアンスやセキュリティー対策を実施できるため、金融サービスや医療などの規制の厳しい業界の企業にとって有用です。
  • レガシー・システムの互換性: クラウド・ベースの環境よりも機能が低いオンプレミスサーバーなどのレガシー・システムを使用している組織は、従来のETLをデプロイして、ターゲットにロードされる前に必要に応じてデータが確実に変換されるようにできます。
  • クラウド・ストレージのニーズの管理:フィルタリングや集約などのデータ変換技術により、クラウド・データ・プラットフォームに読み込まれるデータ量を削減でき、クラウド・ストレージの要件とコストを削減できます。
  • AIワークフローのサポート:ストリーミングETLにより、AIおよび機械学習ワークフローに高品質のデータを継続的に提供できるようになります。新鮮で信頼できる情報をAIモデルに提供することで、ドリフトを減らし、予測の精度を向上させることができ、企業がAIを日常業務にうまく組み込むのに役立ちます。

ETLの課題

データ・ストリーミング・テクノロジーによるETLのモダナイゼーションにより、速度と柔軟性が向上し、従来の課題のいくつかを軽減することができました。ただし、組織が考慮すべき重要な考慮事項が残っています。

  • 事前の準備:ETLでは、ELTと比較して、ステージングと変換のためのサーバーを含む、より複雑な技術スタックが必要です。また、統合を開始する前に、ビジネスルールを特定し、変換ロジックを作成する必要があります。
  • インフラストラクチャーと人件費:ETLは企業のクラウド・コンピューティングのコスト削減に役立ちますが、ELTと比較すると、インフラストラクチャーとパイプラインの設計により多くの初期費用を費やす傾向があります。
  • スキーマ管理: 列の名前の変更やデータ型の変更など、ソース・データの構造の予期しない変更は、パイプラインの障害を引き起こす可能性があります。スキーマ・レジストリーなどのスキーマ管理ツールは、スキーマの検証を自動化し、ダウンストリームの問題を防ぐことができます。

ETLのユースケース

従来のETLの長い歴史とストリーミングETLの登場により、このプロセスはさまざまな業種・業務における多様なユースケースをサポートするようになります。

  • 機密データの取り扱い: ETLの変換段階で、個人情報(PII)をターゲットの宛先に配信する前にマスキングすることができます。
  • 定期報告:バッチETLは、販売レポートや法規制への適合レポートなど、スケジュールされた間隔で作成されるレポートのデータを集約するためのコスト効率の高い方法です。
  • 不正アクセス検知:金融機関はストリーミングETLを使用して疑わしいパターンを検知し、潜在的な不正アクセスを示す異常を即座に報告できます。
  • 予知保全:ETLを介して取り込まれ、変換され、配信されるIoTデータの分析により、組織は保守と修理の必要性を評価し、設備のダウンタイムを防ぐことができます。

ETLツール

従来、組織のデータ・エンジニアは独自のETLコードを作成してカスタム・パイプラインを作成していました。現在、ETLパイプラインの構築にかかる労力と時間を大幅に削減するさまざまなETLツールやサービスが存在しています。企業は多くの場合、この目的でデータベースやクラウド・サービス・プラットフォームに統合されたオープンソース・ソフトウェア、商用ソリューション、ツールを活用しています。

主要なETLソリューションの機能には以下が含まれます。

  • 包括的な自動化: データ・ソースからターゲット・データウェアハウスまでのデータ・フロー全体を自動化することで、データエンジニアはデータの移動やフォーマットという面倒な作業から解放され、より迅速な結果とより効率的な運用が可能になります。
  • 視覚的なドラッグ・アンド・ドロップ・インターフェース:この機能は、ルールとデータ・フローの指定に使用できます。
  • 複雑なデータ管理のサポート:この機能には、複雑な計算、データ統合、および文字列操作の支援が含まれます。
  • セキュリティとコンプライアンス: 最高のETLツールは、データを暗号化し、データ・ガバナンスルールを適用し、HIPAAやGDPRなどの業界や官公庁・自治体の規制に準拠するためのガイドラインに従う場合があります。
  • 統合スタイルの柔軟性:ETLと他のパターン(ELTやTETLなど)を切り替えるオプションにより、企業はワークロードごとに最適な統合スタイルを柔軟に選択できます。
  • リアルタイムストリーミングデータ統合:最新のETLソリューションには、エンタープライズAIに不可欠になったリアルタイムデータのストリーミングと処理機能が含まれています。

ETLに関するよくある質問

ETLはまだ企業で使用されていますか?

ETLは、企業がより新しいデータ統合パターンを検討する中、依然として基本的なデータ統合プロセスであり続けます。バッチベースのETLは多くのワークロードに対して信頼性が高くコスト効率の高い方法であり、ストリーミングETLは組織が時間的制約のある意思決定のためのリアルタイムの洞察を得るのに役立ちます。

ETLはクラウド環境でも機能しますか。

従来のETLは最新のクラウド・インフラストラクチャーよりも古いものですが、今日のETLは、さまざまなソースからデータを抽出および変換し、クラウド・データウェアハウスを含むクラウドベースのリポジトリにロードするために一般的に使用されています。クラウド・サービス・プロバイダーは、多くの場合、クラウドベースのステージング・エリアを含むETL機能を提供しています。クラウド・プラットフォームの拡張性と計算能力は、ETLプロセスの性能を向上させ、より速い処理能力と洞察をもたらします。

ステージング・エリアとは

ステージング・エリアは、データ・ソースとターゲット間の一時的なストレージであり、未加工データの一時的な保管に使用されます。これは、未加工データがクリーンアップ、検査、変換されてから、目的地に移動する前の積み込みドックとして機能します。

初期ロード、増分ロード、完全ロードの違いは何ですか。

初期ロード、増分ロード、完全ロードは、ETL中にデータがロードされるさまざまな方法を表します。初期ロードとは、データ・ソースからターゲット宛先への初めてのデータ抽出とロードのことです。これにはデータ・セット全体が含まれ、プロジェクトの開始時に一度実行されます。

増分ロードは、直近のロード以降に新規作成、変更、または削除されたデータのみをロードするプロセスです。また、フルロードとは、データ・セット内のすべてのデータをターゲット・システムに転送するプロセスであり、多くの場合、そのシステム内の既存のレコードを置き換えます。

執筆者

Alice Gomstyn

Staff Writer

IBM Think

Amanda McGrath

Staff Writer

IBM Think

関連ソリューション
データ管理ソフトウェアとソリューション

データ・サイロを排除し、複雑さを軽減し、データ品質を向上させることで、卓越した顧客体験と従業員体験を実現するデータ・ストラテジーを設計します。

データ管理ソリューションの詳細はこちら
IBM watsonx.data

watsonx.dataを使用すると、オープンでハイブリッド、かつ管理されたデータ・ストアを通じて、データがどこに保存されていても、すべてのデータを使用して分析とAIを拡張できます。

watsonx.dataについてはこちら
データ分析コンサルティングサービス

IBMコンサルティングと連携することで、企業データの価値を引き出し、ビジネス上の優位性をもたらす洞察を活用した組織を構築します。

分析サービスを発見する
次のステップ

データ・サイロを排除し、複雑さを軽減し、データ品質を向上させることで、卓越した顧客体験と従業員体験を実現するデータ・ストラテジーを設計します。

  1. データ管理ソリューションの詳細はこちら
  2. watsonx.dataについてはこちら