🙆‍♀️

Pentaho DataIntegrationのETLサーバでXMLを戻す手順

2021/08/15に公開

目的

一つ前の投稿Pentaho DataIntegrationで自分専用ETLサーバをつくるで作成した専用ETLサーバの実用方法となります

開発環境

前回と同じPentahoDataIntegration(以後PDI)を使います。ダウンロードはこちらからpdi-ce-6.1.0.1-196.zipをダウンロードし解凍しておきます。
できたフォルダ内のspoon.sh(Windows環境の場合はspoon.bat)を実行するとGUIが起動します。

手順

ファイル → 新規 → データ変換
で新しいデータ変換を作成します。

左側リストの 入力 → 行生成 を右側エリアにDrug&Drop

行生成をダブルクリックして内容を設定します設定画面はOKで閉じます

左側リストから Output → XML Output を右側エリアにDrug&Drop
行生成の上にマウスカーソルを合わせるとメニューが表示される
ので、右のアイコンをクリックして、XML Outputアイコンに矢印を繋ぎます。

アイコンを繋いだらXML Outputアイコンをダブルクリックし設定していきます
ファイルタブでは「サーブレットに出力を渡す」にチェックを入れます
フィールドタブでは「フィールドを取得」ボタンで入力フィールドを取得し、各フィールドにコンテンツタイプ等必要な設定をしていきます
設定が済んだらOKボタンで閉じます。

ここまでできたら任意の場所に名前をつけて保存しておきます。ファイル → 名前を付けて保存 で保存できます(VFSではない方)

動作チェック

XML Outputアイコンをクリックして選択状態にした上でプレビュー(目のようなアイコン)をクリックします。
クイック起動ボタンをクリックすると実行内容を確認できます。

うまく動作することが確認できたら作成したデータ変換ファイル(test.ktr)をPDI実行しているサーバーの任意ディレクトリに設置します。
今回は/pdifilesというディレクトリを作成し、その直下に設置しました。

/pdifiles/test.ktr

設置が済んだら

http://192.168.0.1/kettle/executeTrans/?trans=/pdifiles/test.ktr
#URLエンコード後
http://192.168.0.1/kettle/executeTrans/?trans=%2Fpdifiles%2Ftest.ktr

にアクセスします。(アドレスは各環境に合わせて修正すること)

ブラウザにXMLが表示されれば成功です。(表示はchromeの例、ブラウザが違うと表示も変わります)

終わりに

今回は固定データでの例ですが、PentahoDataIntegrationは様々なデータにアクセスが可能ですので、データ変換の作り方次第で必要なデータをWebアクセスでユーザーに提供できるようになります。XMLはExcelやLibreOffice_calcの表計算ソフトのWEBSERVICE関数とFILTERXML関数で扱うことができますから、軽い表データ等は簡単にユーザー開示していくことが可能です。表計算でのデータ表示は次回記事にしたいと思います。

Discussion