Pentaho 定型レポートハンズオン 
オープンソースBI 勉強会 #12 
[2014/11/26] 
TwitterID:@teruu
本日の内容 
•勉強会について 
•BIの概要 
•定型レポートの概要 
•ダウンロード 
•起動 
•レポート作成 
–レポートウィザード 
–新規 
1
自己紹介 
川崎照夫 
TwitterID: teruu 
所属:KSKアナリティクス 
BI歴:2年 
DB歴:20年 
2
この勉強会について 
•随時、ツイートのお願い(質問など) 
•セキココ登録(イベント座席表サービス) 
http://sekico.co/ 
•挙手のお願い ・勉強会参加理由 ・Pentahoについて知りたい ・定型レポートについて知りたい 
3
Yahooリアルタイム検索 
「pentaho」定点観測中 
・「日本語の資料が全然ない」というツイート 
日本のPentahoユーザ 
・日本語の情報が見つからない 
・やりたいことがなかなかできない(簡単なことなのに...) 
・フラストレーションがたまりがち 
4/83 
Pentahoのチュートリアル資料を充実
これまでの開催 
•#5 MongoDB+Pentaho ハンズオン 
•#6 OLAP ハンズオン 
•#7 ETL ハンズオン 
•#8 定型レポート 
•#9 CTools (ダッシュボード) 
•#10 OLAP ハンズオン 
•#11 ETL ハンズオン 
•#12 定型レポート ハンズオン ※今回
次回 
•#13 土曜開催企画+懇親会 
–12/20(土)14:00~19:00 
–会場:銀座キレイが丘会議室 
https://atnd.org/events/59575 
※会場の都合で定員が限られますので、早めに参加登録を!
これまでの資料 
オープンソースBI勉強会メモ 
•#10 OLAPハンズオン 
https://www.evernote.com/shard/s29/sh/be254819-1722-4d55-bb34-549ebf898c25/f85483e7059dd4c56506d7ca0a5b0578 
•#11 ETLハンズオン 
http://www.slideshare.net/teruok/pdi-tutorial-20140121
BIの概要
会員制ドキュメント・ダウンロード・サービス「LiBRA」(リブラ) →提供資料の加工編集、再配布が可能 (http://libra.netcommerce.co.jp/) 以降はLiBRAの「ビジネス・インテリジェンス」から引用 (http://libra.netcommerce.co.jp/library/knowledge/841)
Pentahoについて 
•オープンソースベースのBIスイート 
•以下の製品群で構成 
EE 
CE 
主な対象 
ダッシュボード 
ダッシュボードエ ディタ 
CDF(Community Dashboard Framework) 
経営陣 
Reporting 
Reporting(定型レポート) 
ビジネスユーザ 
メタデータ 
インタラクティブレポート 
Adhocレポート 
OLAP(多次元分 析) 
Analyzer 
JPivot/saiku/Pivot4J 
アナリスト・ 
ビジネスユーザ 
ETL(データ統合) 
Data Integration 
開発者、DB管理者 
データマイニング 
Weka 
アナリスト、パワー ユーザ
21 
定型レポートについ て 
•関連書籍 
Pentaho 5.0 Reporting by Example: Beginner's Guide
22 
ダウンロード 
•Pentahoコミュニティエディション 
http://community.pentaho.com/ 
•Pentaho配布サイト 
http://sourceforge.net/projects/pentaho/files/ 
•Pentaho配布サイト レポートデザイナー 
http://sourceforge.net/projects/pentaho/files/Report%20Designer/5.2/ 
•ダウンロード候補(Ver5.2) 
prd-ce-5.2.0.0-209.zip (Windows/Linux) 
prd-ce-mac-5.2.0.0-209.zip (Mac)
23 
インストール 
•ダウンロードするだけ(Javaの環境があれば) 
•DBのJDBCドライバを追加 
–postgresqlのドライバは同梱されている 
•SourceForgeのサイトからダウンロードし、 Windowsであれば、解凍したフォルダ中の report-designer.batをダブルクリック 
•起動後、言語の設定を確認(日本語になってい るか)
特徴① 
オープンソース(LGPLライセンス) 
Java 
クロスプラットフォーム(Windows/Mac/Linux) 
GUIツールで設計、Webで参照 
ファイル形式:PRPT 
多様なデータソース 
多様な出力形式(HTML、PDF、Excel、CSV、 RTF) 
多様なチャート形式、スパークライン
特徴② 
レポートウィザード 
パラメータ 
計算式 
サブレポート 
埋め込みリンク 
スタイルシート 
クロス集計 
スケジューリング 
PDIによるバースティング
歴史 
2002年 JFreeReportプロジェクト開始 
2006年 主要な開発者Thomas MorgnerがPentahoに加 入 
名称をPentaho Reportingに変更 
2007年 Ver1.6 
2008年 Ver1.7 データソースとしてOLAPに対応 
2009年 Ver3.5 
2010年 Ver3.7 
2011年 Ver3.8 スパークライン機能追加 
2012年 Ver3.9 
2013年 Ver5.0 
2014年 Ver5.1
レポート作成の手順 
・レポートを新規作成 
・データソースを作成 
・クエリーを作成し、データを取得 
・ワークスペース上にレイアウト 
・取得したデータを使い計算式及び関数を作成 
・レポートを保存 
・BIサーバーにパブリッシュ
レポート作成① 
•レポートウィザード利用 
•データソース:1テーブル 
•データ:foodmartデータセット
起動 
Windowsの場合、report-designer.batをダブルク リックして起動 
29
ようこそ画面 
30 
レポートウィザードをクリック。
ウィザード・外観 
31 
ここでは「Jade」を選択。 
テンプレート は追加可能
ウィザード・データソース 
32 
右上の+をクリック。
データソースの種類 
33 
「JDBC」を選択。
JDBCデータソース 
34 
「接続」欄の+をクリックし 
データベース接続を作成。
データベース接続 
35 
パラメータを適宜入力し[Test]を クリック。 
接続名:pg (任意) 接続タイプ:PostgreSQL アクセス:Native(JDBC) ホスト名:localhost データベース名:postgres ポート番号:54320 (※デフォルトと重複しない設定に) ユーザ名:postgres パスワード:!84jJJJ# (※ハンズオンでのパスワード)
JDBCデータソース 
36 
利用可能クエリー欄の+をクリック し、クエリーを作成。
JDBCデータソース 
37 
クエリー名に「製品クエリー」と 入力し、クエリー欄の鉛筆アイコ ンをクリック。
SQLクエリーデザイナー 
38 
画面左側中段のドロップダ ウンメニューをクリック。
スキーマ選択 
39 
「foodmart」スキーマを選択するとテーブ ル一覧が表示される。
「product」表 
40 
「product」表をダブルクリックして追加。
「product」表 
41 
SQLクエリーデザイナーの分割ラインをマ ウスでドラッグして下方に移動。 (ORDER BYの操作のため)
ORDER BY追加 
42 
「brand_name」列と「product_name」列 をそれぞれ「ORDER BY」にマウスでド ラッグして追加。OKボタンをクリック。
JDBCデータソース 
43 
クエリーを確認して「プレビュー」 ボタンをクリック。
プレビュー 
44 
プレビューの内容を確認し「Close」をク リック。前の画面に戻り「OK」をクリック。
「次へ」 
45 
「製品クエリー」を選択して「次へ」をク リック。
レイアウト 
46 
上の[グループ化]欄に「brand_name」、 下の[選択アイテム]欄に「product_id」「product_name」 「sku」「srp」をそれぞれ追加。「次へ」をクリック。 (※Ctrlキーで複数選択も可)
フォーマット (brand_name) 
47 
「グループヘッダラベル」を「ブラン ド名:」に変更。
フォーマット (product_id) 
48 
表示名を「製品ID」に変更。データ形式に 「#」を入力。(桁区切り無しの数字) 
集計のドロップダウンで一番下の選択肢 「Count」を選択。
フォーマット (product_name) 
49 
表示名を「製品名」に変更。
フォーマット (sku) 
50 
表示名を「製品番号」に変更。 
整列を左寄せに変更。 
データ形式に「#」を入力。 
(桁区切り無しの数字に)
フォーマット (メーカー希望小売価格) 
51 
表示名を「メーカー希望小売価格」に 変更。データ形式のドロップダウンか ら2番目の選択肢「#,###;(#,###)」を 選択。[終了]ボタンをクリックして ウィザードを終了。
レポートウィザード 終了 
52 
緑色の実行ボタンをクリック。コン テキストメニューが表示されるので、 1番上の[印刷プレビュー]を選択。
印刷プレビューで 文字化け 
53 
→フォントを指定。 
(あらかじめテンプレートを用意 
することでも対応可)
フォントを一括指定 
54 
[構造]タブの[マスターレポー ト]を選択。フォントを変更。 
「フォント」の 「family」で Meiryo UI を選択
再度、印刷プレビュー 
55 
文字化け解消を確認。
PDF文書 
56 
実行ボタンをクリックして「PDF文書」を 選択。PDF形式のレポートが表示される。
HTML文書 
57 
実行ボタンをクリックして「HTML文書」を 選択。HTML形式のレポートが表示される。
Excel文書 
58 
実行ボタンをクリックして「Excel文書」を 選択。Excel形式のレポートが表示される。
レポートウィザード 再実行 
59 
レポートウィザードで指定した項目を修 正したい時は、[編集]-[レポートウィ ザード]を選択して再実行。 (レイアウト項目、フォーマット項目)
保存 
60 
[ファイル]-[保存]を選択し、作業フォルダ 「c:¥Pentaho¥pentaho_work」に移動。ファ イル名に「product_list」を指定して作成 したレポートを保存。(※拡張子は自動的 に「prpt」が指定される)
閉じる 
61 
×アイコンをクリックしてレポートを閉じ て終了。
レポート作成① 
•レポートウィザード利用 
•データソース:1テーブル 
•データ:foodmartデータセット
レポート作成② 
•新規レポート作成 
•データソース:2テーブル(JOIN)
新規 
64 
[File]-[新規]を選択
[データセット] 
65 
[データ]タブの[データセット]を右クリッ クし、[JDBC]を選択。
クエリー追加 
66 
接続欄で「pg」をクリック。 
利用可能クエリー欄で+をクリック。クエリー 名に「製品カテゴリークエリー」と入力し、クエ リー欄の鉛筆マークをクリック。
SQL クエリーデザイナー 
67 
「product」「product_class」 をダブルクリックして追加
JOIN 
68 
Product表の「product_class_id」をドラッグして product_class表の同名の列にドロップ。
一旦選択解除 
69 
それぞれの表でテーブル名の欄を右クリッ クして[deselect all]を選択
必要な列を追加 
70 
product表の「product_name」、 product_class表の 「product_subcategory」~ 「product_family」を追加。
列順を変更 
71 
列をドラッグして列順を変更。 (product_family、product_department、 product_category、product_subcategory の順) ORDER BYにも同じ順序で列を追加。
[syntax]タブ 
72 
[syntax]タブをクリックしてSQLを確認。
JDBCデータソース 
73 
[プレビュー]をクリック。
プレビュー 
74 
プレビューの内容を確認し「Close」をク リック。
ページ設定 
75 
[File]-[ページ設定]を選択。
ページ設定 
76 
[ページサイズ]を[A4]に変更。
レポート要素のサイズを変更 
77 
[レイアウトを変更しな い]を選択。
詳細エリア 
78 
クエリーで選択した列を[詳細]エリアに ドラッグ。 (※1列ずつ配置)
列幅調整 
79 
[構造]タブの[詳細]を表示し5列を選択。
列幅調整 
80 
[スタイル]タブの[width]欄をデフォルト の「100.0」(ピクセル)→「20%」に変更。 
※サイズは%単位で指定可能
[layout] 
81 
上位の[詳細]の[layout]を[row]に変更。 ※row:列を1行に配置、デフォルトは [block]モードになっている。(マスター レポートの[layout]で指定)
[詳細ヘッダー] 
82 
[詳細ヘッダー]を選択し[属性]タブを表示。 [hide-on-canvas]を[False]に変更。
ラベル追加 
83 
[パレット]エリアの[ラベル]をクリック。 ラベルが配置される。 
※他の方法でも追加可能。
ラベル追加 
84 
[詳細ヘッダー]にラベルを5つ追加。
ラベル幅調整 
85 
追加した5つのラベルを選択し[スタイル]タ ブの[width]欄をデフォルトの「100.0」→ 「20%」に変更。※Shiftキーで複数選択。
ラベル幅調整 
86 
上位の[詳細ヘッダー]の[layout]を[row]に変 更。
ラベルの値を入力 
87 
[属性]タブの[値]欄にそれぞれの値 を入力。 (グループ、部門、カテゴリー、サ ブカテゴリー、製品名)
フォントを一括指定 
88 
[構造]タブの[マスターレポー ト]を選択。フォントを変更。 
「フォント」の 「family」で Meiryo UI 
を選択
印刷プレビュー 
89 
[印刷プレビュー]を選択して内容を確認。
罫線設定 
90 
Ctrlキーを押しながら[詳細ヘッダー]と [詳細]の各列をクリックし選択。 
[Format]-[フォーマット]を選択。
サイズと枠線 
91 
[サイズと枠線]タブを表示。
サイズと枠線 
92 
[全て]ボタンをクリック。 スタイル:[solid]、色:[black]、幅: [1]を指定して[OK]をクリック。
罫線設定 
93 
borderのsize設定に「0.5」を入力。 
(top/left/bottom/right)
heightの値を「20.0」から「100%」に変更。 
高さ設定 
94
印刷プレビュー 
95 
[印刷プレビュー]を選択して内容を確認。
レポート作成② 
•新規レポート作成 
•データソース:2テーブル(JOIN)
レポート作成③(次回以降) 
•チャート 
•パラメータ 
•計算フィールド 
•サブレポート 
•スパークライン 
•ハイパーリンク 
•クロスタブ 
•スタイルシート 
•エンベッド(組込)
まとめ 
•BIの概要 
•定型レポートの概要 
•ダウンロード 
•起動 
•レポート作成 
–レポートウィザード 
–新規
丌明な点 
•Pentahoのフォーラムへ 
–日本語でコミュニティー・サポート 
http://forums.pentaho.com/forumdisplay.php?86 
(※投稿には要登録)
次回 
•#13 土曜開催企画+懇親会 
–12/20(土)14:00~19:00 
–会場:銀座キレイが丘会議室 
https://atnd.org/events/59575 
※会場の都合で定員が限られますので、早めに参加登録を!
今後のテーマ(1) 
•DWH 
–スタースキーマ 
–SCD(Slowly Changing Dimensions) 
–CDC (Change Data Capture) 
–サロゲートキー 
–MDM(マスターデータマネジメント) 
•OLAP(ROLAP/MOLAP) 
–キューブ設計 
–MDX 
101
今後のテーマ(2) 
Pentahoの各製品 
•PDI 
•OLAP 
•Reporting 
•ダッシュボード 
•データマイニング 
102
今後のテーマ(3) 
デザインツール 
•スキーマワークベンチ 
•アグリゲーションデザイナ 
•メタデータエディタ 
サードパーティー製品 
•saiku 
•Pivot4J 
103
今後のテーマ(4) 
その他のBI製品 
•Tableau 
•QlikView 
104
今後のテーマ(5) 
カラム指向DB 
•HP Vertica 
•Amazon Redshift 
NoSQL DB 
•MongoDB 
•Hadoop Hive 
インメモリDB 
105
今後のテーマ(6) 
データ可視化 
•CTools 
•D3 
•Highcharts 
•GIS系 
データ分析手法 
Rの活用 
106
今後のテーマ(7) 
•オープンデータの活用 
•Pentaho オープンソース・コミュニティの活用 
107
今後のテーマ(8) 
•開発手法 
•プロトタイピング 
•ドキュメント 
108
今後のテーマ(9) 
•開発ツール 
•SQLエディタ 
•XMLエディタ 
•ユーティリティ 
•バージョン管理 
•バグトラッキング 
•テスト手法 
•自動化手法 
109
今後のテーマ(10) 
運用 
•Apache 
•Tomcat 
•クラウド活用(AWS) 
•スケジューリング、バッチ実行 
110
今後のテーマ(11) 
ポータルサイト、CMSとの統合 
•Liferay 
•Alfresco 
111
今後のテーマ(12) 
学習メディアの活用 
•ドットインストール 
•Slideshare 
•YouTube 
112
今後のテーマ(13) 
•プロフィットセンター/コストセンターの考え方 
113

Pentaho 定型レポート ハンズオン