◇MYNOS-2014 年 8 月号- オープンソース BI を使ったデータ統合(ETL)とレポーティングの実現 ----- Pentaho を使った BI システム基盤構築 事例 ----企業の中には、基幹システムのデータのほか、別パッケージ等で稼働している基幹システム以 外のデータ、CSV や Excel など外部から提供されるデータなど、様々なデータが様々な形式で存 在します。現場では、単一システムのデータだけでなく、これら複数のデータを組み合わせ、売上 レポート、在庫レポート、予実管理表など、様々なレポートを作成しています。 今回は複数のデータを統合し、レポート作成するツールとして、オープンソースである Pentaho の導入事例と導入する上でのコツ、ポイントをご紹介していきます。 ■課題 E 社では月次で売上レポート、在庫レポートなど約100本のレポート(CSV、Excel)を作成する 中で次の課題を抱えていました。 1. DB、CSV、テキストデータを組合せて、レポートを作成するのに手間がかかる 2. レポートの作成が属人化している(担当者じゃないとレポート作成できない) 3. クエリー(SQL)でテーブル結合を多く必要とし、結果としてクエリー実行処理に時間が かかっている 4. 新しいレポートニーズに対応できていない そこで弊社は上記課題解決のため、オープンソースソフトウェア(OSS)のビジネスインテリジェ ンス(BI)製品である Pentaho を使ったデータ統合(ETL)とレポーティングシステム構築を提案しま した。 ■Pentaho(ペンタホ)とは Pentaho とは、OSS の BI 製品で、従来の商用 BI 製品と同等の機能と性能を提供している統合 BI スイート製品です。 Pentaho は以下のとおり BI 機能すべてをカバーしています。 1. データ統合(ETL) 2. 多次元分析(OLAP) 3. レポーティング 4. ダッシュボード 5. データマイニング これまでに500万以上がダウンロードされ、2,000社以上の商用ユーザー、10,000以上の デプロイメントの実績がある製品です。 コミュニティによって提供される OSS の無償版(Community Edition)と、拡張機能およびテクニ カルサポートを含んだ有償版(Enterprise Edition)があり、今回は無償版を採用しました(将来、 必要になった時に有償版への移行を検討)。 ■システム全体イメージ ・データ統合ツール「Pentaho Data Integration」を Amazon Web Services(AWS)の Amazon Elastic Compute Cloud(Amazon EC2)上に構築 ・基幹システム(Oracle、約50テーブル)、外部から提供される CSV やテキストデータをデータ統合(ETL)し、データウェアハウ ス(DWH)を構築(AWS の Amazon RDS for Oracle を使用) ・毎日夜間にジョブスケジューリング(cron)して ETL を実行 ・レポート出力(約100本)は DWH のデータを抽出し、CSV/Excel を出力 ■データ統合(ETL)JOB イメージ ■レポート出力 JOB イメージ ■解決 1. データ統合で属人化を解消 【課題】 レポート作成の事前準備作業として、基幹システムデータと外部提供の CSV やテキストデータ を Microsoft Access に取り込み加工する必要があり、非常に手間がかかっていた。 また、Access スキルを持った社員が限られ、作業が属人化していた。 【解決策】 データ統合ツール「Pentaho Data Integration」を使い、DWH を構築。 Access を解析してレポートに必要なクエリーを移行したため、Access へのデータ取り込みと加 工が不要になり、属人化が解消。 ■解決 2. 非正規化したテーブルを用意してレポート作成時間を短縮 【課題】 基幹システムのテーブルは正規化され、無駄が少なくビジネス変化に対応しやすくなっている 反面、複雑なレポートや BI 分析を行う時にはパフォーマンス(時間)に問題があった。 【解決策】 DWH 上に複数テーブルを結合した非正規化テーブルを用意。レポート作成時のクエリーで非 正規化テーブルを参照することで、クエリー処理時間を短縮。 次に、Pentaho データ統合を導入する上でのコツ、ポイントをご紹介いていきます。 ■Tips1. 差分コピーで ETL 時間を短縮 レコード件数が少ないテーブルを DWH へ登録する時は、全件削除&全件コピーを行ない、レ コード件数が一定数(100万件)を超えるテーブルには更新日付が3か月以内のレコードだけを 抽出して、マージすることで時間を短縮。 ■Tips2. データを暗号化してクラウド利用でもセキュリティを強化 DWH を AWS 上に構築。Amazon Virtual Private Cloud(Amazon VPC)を使い、論理的に分離 した仮想ネットワーク環境だが、万一不正アクセスされた場合に備え、データの暗号化。 Pentaho は独自のプラグインモジュール開発が可能であり、暗号化/復号のプラグインモジュ ールを開発。DWH 登録時に暗号化し、レポート出力前に復号。 ■Tips3. 処理完了後には完了通知メールを配信 Pentaho のメール送信の機能を使い、ETL 処理完了時、レポート出力完了時に担当者へメー ルを送信。処理成功時と失敗時でメール宛先、件名、本文を切り替え、失敗時にはエラーログフ ァイルを添付してメールを送信。 ■今後の展望 Pentaho の OLAP デザインツール「Schema Workbench(スキーマワークベンチ)」を使って、 OLAP 分析のキューブ定義をすることで、ブラウザ上でレポート表示内容の編集、分析など多次 元分析(OLAP)機能の実現を目指しています。 ■所感 Pentaho のデータ統合ツールは無償版と有償版で機能に差がありません。 次のようなケースに向いています。 1. DB 移行作業(DB to DB) 2. DB インポート取込作業(File to DB) 3. ファイルエクスポート作業(DB to File) オープンソース BI を使ったデータ統合(ETL)やレポーティング、Pentaho にご興味がある場合 は弊社ホームページのお問い合わせフォーム、または弊社担当営業までお気軽にお問い合わ せください。 解説:東日本ソリューション本部 第一ソリューション開発部 武内大
© Copyright 2024 Paperzz