はじめに
データを活用するためには社内に散在するデータを収集し集約する仕組みが必要です。利用したいデータが複数のシステムに分散している場合、それぞれのデータベースにアクセスし、データを取り出していくことを、一つ一つ手作業で行っていては膨大な時間と手間がかかってしまい現実的ではありません。また間違いが発生したときに、原因を究明するのも大変です。そのため、データを集約するETLツールを導入し、属人的にならないようにシステム化してくことが必要です。
それでは、ETLについて解説していきます。
ETLとは
ETLとは、抽出(Extract)、変換(Transform)、書き出し(Load)の頭文字をとったものになります。
社内には様々なシステムがありますが、システムの数だけデータの格納形式が異なっています。
そのため、まずは、それぞれのシステムからデータを抽出(Extract)するために接続しなければなりません。
例えていうなら、蛇口がそれぞれ異なっているようなものでしょうか。ホースをそれぞれの蛇口に対応する形式にあわせて接続します。そして、データを保存する際に、データ形式を整えるための変換(Transform)を行います。
そして、変換したデータは保存する場所に書き出して(Load)いきます。
では、それぞれの機能で具体的にどのような作業が行われるのか見ていきましょう。
Extract
様々なデータベースやファイルにアクセスし、データを抽出することです。そして、ETLツールには、様々なデータベースにアクセスするために多くの接続アダプターが付属されています。接続アダプターとは、データベースはもちろんのこと、ファイル連携やERPやアプリケーション特有の接続方法に準拠した接続機能を有しているものになります。
Transform
コードや値を変換及び加工処理を行うことです。例えば、Webフォームから住所を入力する際に「港区赤坂六の4の5」と漢数字や英数字、全角半角が混在して入力されると同じ住所も異なる値として扱われてしまいます。このようなデータは正しく扱うために変換・加工する必要があります。また、文字や数値、日付データの加工だけでなく、数値の集計やデータの結合なども用途に応じて行います。
Load
変換、加工を終えたデータをデータウエアハウスに流し込むことです。ETLツールには、データを流し込めなかった時のエラー処理や条件分岐などを設定できる機能がついています。
ETLツール
代表的なETLツールを紹介します。(以下アルファベット順です)
その他SQLServer にもSSIS(SQL Server Integration Service)という機能が付属されています。
まとめ
ビッグデータの活用によって、ますますデータ量が増加してくる現在、データの利活用にはまずデータを自由自在に活用できる状態にしておくことが必要になってきます。そのためには、散在しているデータの収集、変換・加工、格納を自動化できる仕組みとしてETLツールの重要性は高まってきます。
DWHの利用が拡大していく中で、DWH用途に最適化されたデータベースが市場に次々に投入されてきていますので、データ量やユーザー数などの規模や利用形態など 要件に柔軟に対応できる製品を選択することをお勧めします。
◆DMExpress のご紹介セミナー
困難なビッグデータ統合をシンプル・高速に実現