ETLツールとデータ・プレパレーション・ツールは、機能の多くが共通しているために、同一視されやすいが、利用局面や想定される利用者の性質には明確な違いがある。本稿では、両者の共通点と相違点を整理したうえで、正しく使い分けるためのポイントを解説する。
データウェアハウス(DWH)内のデータを最新の状態で維持するために、業務システムで新たに生成されるデータを抽出(Extract)、変換(Transform)し、DWHにロード(Load)する一連の処理を、ETL処理と呼ぶ。ETL処理は、SQLやC言語などを使ったプログラミングにより開発されるが、ETLツールは、GUIを用いて視覚的に処理フローを定義する標準的な処理を部品化し再利用するといった機能を提供することで、ETL処理の開発生産性を向上させる。
ETLツールの利用者は、ITスキルを持つエンジニアであり、データベースの専門知識やプログラミング・スキルを持っていることが前提となる。代表的な製品としては、Informatica社のInformatica PowerCenter、IBM社のIBM InfoSphere DataStage、Talend社のTalend Data Integrationなどがあげられる。ライセンス価格は、サーバやCPU数(コア数)に比例するものが一般的である。
DWHの構築は、要件定義、設計、開発からテストに至るウォーターフォール型のシステム開発プロセスで行われるのが一般的だ。ETLツールは、このプロセスの開発フェーズで利用されるが、バグの修正や機能要件の追加、変更がない限り、一度開発されたETL処理は変更されないため、ETLツールの利用も1度だけとなる。
ETLツールの導入にあたっては、将来のバグ修正や機能要件の追加、変更の発生頻度や、他の開発プロジェクトと共有できるかどうかなどを含め、投資対効果を慎重に検討する必要がある。