データ統合/ETLを使う

2010年3月12日(金)
川西 修司

サンプルTransformationを作る

Transformationを作成するにあたり、サンプル・ソースとサンプル・データを用意しました。以降は、このサンプルをもとに説明します。

サンプル・ソースでは、Spoonを使って、ロー・データからスター・スキーマを作成しています。スター・スキーマとは、データ・ウエアハウス(DWH)のスキーマとして最も単純なものです。図で表すと星(スター)のように中央から放射状に広がっているため、そう呼ばれています。中心には1つのファクト・テーブルがあり、スターの先端にはディメンジョン・テーブルがあります(図3-1)。

それでは、実際にSpoonを使ってTransformationを作成してみましょう。

  1. まず、先ほどのダウンロード・サイトからサンプル・ソース、サンプル・データを入手します。
  2. サンプル・ソースを実行する準備として、出力先となるデータベースを作成します。任意のデータベースを用いて、任意の名称で出力先データベースを作成します。
  3. Spoonを使い、ダウンロードしたサンプル・ソース「fruitveg.ktr」を開きます(図3-2)。
  4. データ・ソースを設定します。ビューをクリックし、データベース接続を右クリックして「新規作成」を選択します。
  5. 次に、(2)で作成したデータベースに合わせて必要事項を設定し、接続できることを確認します。
  6. サンプル・データを入力します。「Excel Input」をダブル・クリックし、「ファイル」タブで「参照」ボタンをクリックします。ダウンロードしたサンプル・データ「fruitveg.xls」を選択し、「追加」ボタンをクリックします。
  7. 「シート」タブでfruitvegシートが選択されていること、「フィールド」タブで5つのフィールドが設定されていること、「プレビュー」でデータが取得できていることをそれぞれ確認して、「OK」をクリックします。
  8. ディメンジョンを作成します。store_dim、category_dim、item_dimはそれぞれ、ロー・データから店舗、種類、アイテムのディメンジョン・テーブルを作成します。それぞれをダブル・クリックし、設定を確認します。
  9. データソース名に、(4)と(5)で作成したデータソースを設定します。テーブル名は既に設定してあり、この名称でテーブルが作成されます。ルックアップ・キーには、それぞれのディメンジョン・フィールド名を設定しています。キー・フィールドは、IDを自動生成して作成するよう設定しています。
  10. store_dim、category_dim、item_dimのそれぞれで「SQL」ボタンをクリックし、データベースにディメンジョン・テーブルを作成します。
  11. 最後にファクト・テーブルを作成します。「Table output」をダブル・クリックし、設定を確認します。
  12. データソース名に、(4)と(5)で作成したデータ・ソースを設定します。テーブル名は既に設定してあり、この名称でテーブルが作成されます。
  13. 「SQL」ボタンをクリックし、データベースにファクト・テーブルを作成します。
  14. Transformationを保存します。

これで、Transformationの作成は完了です。

サンプルTransformationを実行する

それでは、サンプルTransformationを実行してみましょう。

  1. データ変換メニューから「実行」を選択するか、ツールバーの実行アイコン(緑の矢印)をクリックします。
  2. データ変換の実行ダイアログが表示されます。今回は「ローカルで実行する」をチェックして「実行」ボタンをクリックします。ローカルで実行するほかに、リモートホストでCarteを起動してリモート実行させることや、クラスタで実行することも可能です。
  3. 実行結果が表示されます。正常に終了すると、実行状況タブで完了表示されます(図3-3)。失敗すると、Transformationは中断し、エラーになったステップ名の背景が赤で表示されます。ログ表示タブでログを確認できます。

Jobを作成してサンプルTransformationを実行する

最後に、JobからサンプルTransformationを実行してみましょう。

  1. ファイル・メニューから新規作成の「ジョブ」を選択してJobを開きます。
  2. デザインをクリックし、全般カテゴリから「START」「Transformation」をパレットにドラッグ&ドロップします。
  3. キーボードのShiftキーとマウスをクリックしながらSTARTからTransformationを接続します。
  4. Transformationをダブル・クリックし、データ変換名に先ほど作成したfruitvegを設定します。
  5. ジョブ・メニューから「実行」を選択するか、ツール・バーの実行アイコン(緑の矢印)をクリックします。STARTをダブル・クリックしてスケジュール設定することで、計画的に実行することもできます。
  6. ジョブの実行ダイアログが表示されます。「ローカルで実行する」をチェックして「実行」ボタンをクリックします。

以上、Spoonを用いてロー・データからデータ・ウエアハウス(DWH)を作成し、実行する方法をご紹介しました。ここでは紹介しませんでしたが、Spoon以外のコンポーネントを使うことによって、さまざまな環境に合わせてTransformationやJobを実行することも可能です。

次回は、Pentahoレポーティング・ツールの具体的な使い方を解説します。

  • 「データ統合/ETLを使う」サンプルプログラム

株式会社KSKソリューションズ
2006年KSKソリューションズ設立メンバーの1人。エンジニアとして主にオープンソースBI Pentahoを利用したBIシステムの構築に従事する。Pentaho日本語サイト(http://www.pentaho-partner.jp/)の運営やツールの日本語化、導入からサポート、トレーニングなど活動は幅広い。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています