Saikuの概要について 
PentahoCE版のインストール方法について 
Saikuのインストール方法について


前回から少し間が空きましたが、今回はSaikuを使ってレポートを作成する方法を説明します。

まず、ユーザーコンソールより新規作成またはCreate NewからSaiku Analyticsをクリックしていただくと、前回見ていただいたようなSaikuのホーム画面がでますので、Create a new queryをクリックしてください。
そうすると、レポートを作成する画面が表示されます。

SnapCrab_NoName_2016-7-27_18-25-36_No-00.png
この画面を見ていただくと、左側にキューブを選択する画面とキューブごとのメジャーとディメンジョンの項目が表示され、また上部にはツールバーがあることがわかります。

操作方法ですが、基本的にPentahoと変わらず、表示したい項目をドラッグアンドドロップまたはダブルクリックすることで自動的に表がレンダリングされます。
(項目を表示するには、各ディメンションを展開する必要があります)

SnapCrab_NoName_2016-7-27_18-27-14_No-00.png


SnapCrab_NoName_2016-7-27_18-27-44_No-00.png
追加した項目を削除する場合は、Measuresの項目の場合は、項目をダブルクリックすることで削除することができます。
例えば上の状態からSalesを削除したい時は、Measuresのボックスに表示されているSalesをダブルクリックして削除します。

CEハンズオン-2.png


SnapCrab_NoName_2016-7-27_18-37-20_No-00.png
また、それ以外の項目(Rows、Columns、Filterに追加してあるもの)は項目をドラッグし、それぞれボックスの外にドラッグすることで削除ができます。


続いてフィルターについてですが、フィルターはすでにフィールドに追加してある項目にフィルターをかける場合と、フィールドに追加していない項目でフィルターをかける場合と2つのパターンがあります。

まず、すでにフィールドに追加してある項目にフィルターをかける場合、すでに追加してある項目をダブルクリックしていただくと、フィルタープロパティが表示されます。

SnapCrab_NoName_2016-7-27_18-39-1_No-00.png
例えば、YearをColumnsにドラッグし、その後、ドラッグしたYearをダブルクリックすると上のような画面が表示されます。

ここで、2003年のデータだけを表示さするようにフィルタリングをしたい場合は、2003にチェックを入れて、真ん中の>マークを押していただくと、右側に2003と表示されます。
この状態でOKを押していただくと、2003年のデータのみというフィルタリングがかかった状態になります。

SnapCrab_NoName_2016-7-27_18-39-12_No-00.png
SnapCrab_NoName_2016-7-27_18-39-20_No-00.png
続いて、フィールドに追加していない項目でフィルターをかける場合はFIlterというボックスに項目を追加した後、その項目をダブルクリックすることでフィルターの設定をすることができます。

例えば、ColumnsがYearでRowsがTerritoryという表でTypeにフィルタリングをかけたい場合、
Typeを別途Filterのボックスにドラッグアンドドロップしていただいた後、ダブルクリックすることでフィルタープロパティが表示されます。フィルタープロパティ後は先ほどと同様にフィルターする項目を選択し、OKボタンを押してください。

SnapCrab_NoName_2016-7-27_18-40-11_No-00.png


SnapCrab_NoName_2016-7-27_18-40-23_No-00.png
SnapCrab_NoName_2016-7-27_18-40-32_No-00.png
今回はレポート作成における簡単な操作を紹介いたしました。
次回はもう少し詳細な機能について説明していきます。

db tech showcase

|
IMG_0519.JPG

7月13日〜15日に秋葉原UDXで開催されましたdb tech showcase Tokyo 2016に行ってきました。

・データ活用はBIからAIへ〜DataRobotによる機械学習の自動化がデータの価値を変える
・Googleスケールの機械学習テクノロジー
・最新Cassandraの3.0とDataStax version5.0(GraphDB, Advanced Replication, Spark)
・Next Generation Apache Cassandra
・ビッグデータのオンライン分析:HadoopやOLAP技術
・SparkSQLを利用したBigData処理

と題された6セッションを聴いてきました。
最初のデータ活用はBIからAIへセッションで見せていただいたDataRobotのデモは
インパクト大でした。用意された教師データを読み取り、ターゲットを指定し、大きめのボタンをクリックすると
Kaggle上位ランカーの開発者達の知見に基づき、百数十?のアルゴリズムの中から選択され、
チューニングされた30ぐらいのモデルが並列で作成されるデモでした。
DataRobotに関してはこのセッションで知りましたので、衝撃的でした。

次のGoogleスケールセッションでは、ニューラルネットワークの説明で
中間層を増やすとより複雑な形を学習できることをtensorflow playgroundで見せていただき、
http://playground.tensorflow.org
tensorflowを使ったロボットの動画等をいくつか見せていただき、
Google Vision APIを使ったデモを見せていただきました。
http://vision-explorer.reactive.ai

Cassandraセッションはプレゼンで使用されていたスライドショーが
シェアされるとの説明がありました。

ビッグデータのオンライン分析セッションでは、
Apache KylinとApache DruidというOLAPエンジンが紹介されていました。
http://kylin.apache.org/
http://druid.io/
リアルタイムにペタバイト級のデータも処理できる技術みたいでした。

Bigdata処理セッションでは、IBM Bluemixで、RSSフィードを収集し、
Sparkで処理するデモが用意されてました。RSSフィードを収集し加工する際に
Node-REDというウェブブラウザベースのETLツールが使用されてました。

PentahoもこういったIoTな流れに追従してくれるものと期待しています。
以上です。

ユーザーコンソール上にデータソースとしてアップロードされているキューブの名前一覧を取得する場合、
直接キューブ名を取得するAPIはございませんが、スキーマ情報を取得するAPIがありますので、
このAPIを活用して取得することができます。

①まずデータグリッドステップにて、APIとして使うURLを入力します。
ここで使うAPIはpentaho/plugin/data-access/api/datasource/analysis/catalog/{スキーマ名}です。

データグリッド.png
②続いてHTTPクライアントステップにて、先ほどのステップで登録したAPIデータを入力しているフィールドを選択し、該当するサーバーのユーザー名とパスワードを入力してください。

httpクライアント.png

③XMLデータ取得ステップからファイルタブにて、「先行のステップから値を引き継ぐ」にチェックを入れて、先ほどのHTTPクライアントステップで設定した結果フィールド名を選択します。

XMLデータ取得1.png

④同じくXMLデータ取得ステップの全般タブにてXpathに/Schema/Cubeと入力してください。

XMLデータ取得2.png
⑤同じくXMLデータ取得ステップのフィールドタブにて、フィールド名を自由に入力していただき、
Xpathのところで「@name」、要素タイプに「属性」、結果タイプに「値」、データタイプに「String」を入力してください。

XMLデータ取得3.png
この状態で実行していただくと、この例ではSteelWheelsスキーマ内で設定されているキューブ名の一覧を取得することができます。

このAPIは実際にはURLの最後に指定したスキーマ内のキューブしか取得できませんが、
スキーマ名の一覧を取得するAPI(pentaho/plugin/data-access/api/datasource/analysis/catalog/)が別途ございますので、これら組み合わせてすべてのキューブ名の一覧取得をPDIで行うことができます。
EE版のみの設定にはなりますが、PUCで出力する際、出力ファイルの改行コードを変更することができます。

方法は起動スクリプトファイル(start-pentaho.shまたはctlscript.shファイル)、
-Dline.separator=$'\r\n'を追加してください。

その後再起動していただいてエクスポートを行うと改行コードがCRLFになっています。

※CRの場合は\r、LFの場合は\nを設定してください。

なお、CE版の場合、このスクリプトを設定すると不具合が発生しますので、お気をつけください。
アナライザレポートによる分析軸として日付を使用されることも多くあると思いますが、
ご使用のデータによっては日付がタイムスタンプ型として登録されている場合、
(例えば、2016/6/14 14:00:00 、2016/6/14 13:30:00というタイムスタンプデータがある場合)、
日付レベルで集計を行うことができず、 秒数単位での集計値が表示されます。

例:日付ディメンジョンごとの売上の表示方法
2016/6/14 14:00:00   100,000
2016/6/14 13:30:00   5,000

※以下のような結果にはなりません。
2016/6/14        105,000




日付レベルでの集計を行うためには、タイムスタンプ型のデータから時間を取り除く必要がありますが、
時間を取り除く方法といたしましてスキーマワークベンチにてスキーマを構成する際に設定することができます。

1つ目は日付レベルよりNameエクスプレッションを使用し、
cdataの欄にDATE_FORMAT(<column名>, '%Y-%m-%d')とご記載いただく方法です。

sql2.png

2つ目は同じく日付レベルよりMemberフォーマッタを使用を選択し、
そこで、languageのところにJavaScriptと記載いただいて、
cdataの欄に、
var originalFormat = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
var newFormat = new java.text.SimpleDateFormat("yyyy-MM-dd");
return newFormat.format(originalFormat.parse(member.getName()));
とご記載いただく方法です。

javascript.png
どちらの方法をご使用いただいても、結果として上記の例であれば、
 日付         売上
2016/6/14        105,000
の集計値をアナライザレポート上で見ることが可能になります。

ぜひお試しください。

CToolsの技術書が発売されました

|
これまでPentahoのアナライザやPDIに関する技術書は発売されておりましたが、
CToolsに関する技術書は出版されておりませんでした。

しかし、この度Packt社より、Learning Pentaho CToolsというCToolsの技術書が発刊されました。

3420OS_4770_Learning Pentaho Ctools.jpg

約400ページに及び、CToolsの各ツールの紹介からインストール、さらには実際にサンプルコードを用いてのダッシュボード作成等、幅広く製品技術をカバーしております。


しかしながら、この本は全編英語となっており、初学者にとっては大変難しいかもしれません。
そこで、弊社ではCT1000というCToolsのトレーニングを開講しております。


このトレーニングを受講していただくと以下リンク先のようなダッシュボードを作成することができるようになります。

これからCToolsを使ってダッシュボードを構築したいという方はぜひトレーニングへご参加いただき、Learning Pentaho CToolsをご一読いただくことをおすすめいたします。

レポートデザイナのデータセットにPDIのデータ変換を使用する方法をご紹介します。

PDIのデータ変換を作成します。
20160602_1.png

動作を確認するために、prptと同じディレクトリにktrを保存します。
20160602_2.png

レポートデザイナーを開き、レポートのデータセットから「Pentaho Data Integration」を選択します。
20160602_3.png

先ほど作成したktrファイルを指定します。(ディレクトリパスが入っているとユーザーコンソールにパブリッシュ後に、パスが異なりktrが読み取れない為、ファイル名だけを指定します)
20160602_4.png

データ項目を配置し確認します。
20160602_5.png

20160602_6.png

BAサーバー(ユーザーコンソール)にパブリッシュします。
20160602_7.png

20160602_8.png

続いて、ktrをレポートと同じフォルダ内にアップロードします。
20160602_9.png

20160602_10.png

20160602_11.png
(「ビュー」 > 「隠しファイルの表示」のチェックをオンにしますとktrファイルがユーザーコンソール上に表示され確認できます)

レポートを開きますと、データ変換で処理されたデータが表示されます。
20160602_12.png


★Have a nice open source day★
KSK Analytics Pentaho Team

前回レポートデザイナーのPDF出力時にパスワードを設定する方法について紹介いたしましたが、
今回は同じくPDFを出力する際に、発行されるPDFファイルの印刷をできないようにするための設定を紹介いたします。

まず、出力したいレポートを開いていただき、
メニューバーのファイル>レポート設定を選択してください。

そうしますと、レポート設定の一覧が出てきますので、ここで暗号化と印刷可否を設定します。
まず、左側のローカルコンフィギュレーションからoutput-capable-pdfを選択してください。

その後、右側にoutput-capable-pdfの設定項目が出てきますので、以下の2点にチェックを付けてください。

①Encryption(40bitまたは120bitを選択してください)
②PrintLevel(コンボボックスにてnoneを選択してください)

reportprint1.png
これで、暗号化と印刷不可の設定ができました。
この状態でPDF出力を行います。

まずファイル>エクスポート>PDFとして保存をクリックしてください。

reportprint2.png

すると、PDF保存の設定画面が出てきますので、ファイル出力先を設定してください。

その後詳細設定タブを開いていただき、セキュリティ設定と暗号化のところで、
「40ビットキーで暗号化する」、または「120ビットキーで暗号化する」のどちらかにチェックをつけてください。
(※レポート設定のEncryptionで設定したビットを選択してください)
また、印刷の許可設定が印刷不可になっていることも確認してください。

reportprint3.png
これで設定が完了しましたので、PDF出力をしてください。

出力したPDFを開くと、印刷ボタンをクリックできないようになっていることを確認してください。

reportprint4.png

レポートデザイナーではPDFやExcelなどにレポートを出力することができますが、
セキュリティの関係で出力したレポートを見ることができる人を制限したい場合、
出力時にパスワードを設定することができます。

ここではPDF形式で出力する際にパスワードを設定する方法について説明いたします。

まず、出力したいレポートを開いてください。

blog20160526-1.pngこの状態でメニューバーのファイル>レポート設定を選択してください。

blog20160526-2.pngこのページ設定では暗号化とパスワードを設定します。
まず、左側のローカルコンフィギュレーションからoutput-capable-pdfを選択してください。

その後、右側にoutput-capable-pdfの設定項目が出てきますので、以下の3点にチェックを付けてください。

①Encryption(40bitまたは120bitを選択してください)
②ownerpassword(設定したいパスワードを入力してください)
③userpassword(設定したいパスワードを入力してください)

blog20160526-3.png
これで、パスワードの設定ができました。
この状態でPDF出力を行います。

PDF出力については、まずファイル>エクスポート>PDFとして保存をクリックしてください。

blog20160526-4.pngすると、PDF保存の設定画面が出てきますので、ファイル出力先を設定してください。

その後詳細設定タブを開いていただき、セキュリティ設定と暗号化のところで、
「40ビットキーで暗号化する」、または「120ビットキーで暗号化する」のどちらかにチェックをつけてください。
(※レポート設定のEncryptionで設定したビットを選択してください)

blog20160526-5.pngこれで設定が完了しましたので、PDF出力をしてください。

出力したPDFを開くとパスワードを入力するようにポップアップが表示されます。

blog20160526-8.png





アナライザーレポートではレポートで使用するディメンションやメジャーの項目が左側のフィールドリストに一覧で表示されます。

スキーマ.png
フィールドリストはカテゴリー、数値-テキスト-時間、A→Z、スキーマのいずれかで並べ替えを行うことができます。
デフォルトではカテゴリーが並べ替えの設定として登録されていますが、このデフォルトの表示順の設定を変更することができます。

①URLを使用したソートオプションの指定
ソートオプションはURLの最後に「fieldListView」クエリーパラメータを追加することでURLに設定できます。
例えば、HTMLやXMLのコードブロックで以下のようなことが可能です。

http://localhost:8080/pentaho/api/repos/xanalyzer/editor?amp;showFieldList=true&amp;showFieldLayout=true&amp;catalog=SampleData&amp;cube=Quadrant%20Analysis&amp;autoRefresh=true&amp;debug=true&amp;fieldListView=cmdViewName

②アノテーションを使用したソートオプションの指定
アノテーションを使用してソートオプションを指定するには、「AnalyzerFieldListView」というCubeレベルのアノテーションを
Mondrianスキーマファイルに追加します。このアノテーションは以下に示すように、キューブの下に最初の子エレメントを置く必要があります。

<Cube name="Quadrant Analysis">
<Annotations>
<Annotation name="AnlalyzerFieldListView">cmdViewName</Annotation>
</Annotations>
<Table name="Quadrant_Acuals" />
<DimensionUsage name="Region" source="Region" />
<DimensionUsage name="Department" source="Department"/>
<DimensionUsage name="Positions" source="Positions" />

③analyzer.propertiesファイルからのソートオプションの指定
このソートオプションは「report.field.list.view」プロパティのcmdViewTypeを設定することで指定できます。

# Default field list view mode used to sort the available field # list in the editor. Possible values include: cmdViewCategory,

# cmdViewType, cmdViewSchema and cmdViewName

# This can also be overriden on a cube level with the annotation

# AnalyzerFieldListView report.field.list.view=cmdViewType

なお、cmdViewTypeの部分は設定したい表示順によって記載が異なります。

表示順の設定名
カテゴリ →cmdViewCategory
数値-レベル-時間 →cmdViewType
A→Z →cmdViewName
スキーマ →cmdViewSchema

この設定に関する注意点
①表示順の設定は以下の優先順位に基づいています。
1,URLで指定されたソート順(ブログ内①)
2,既存のアナライザーレポートの場合、最後に保存された設定
3,キューブで設定したアノテーション(ブログ内②)
4,analyzer.propertiesで設定した順番(ブログ内③)

1~4に該当しない場合、cmdViewCategoryが自動的に適応されます。

2016年7月

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

アイテム

  • SnapCrab_NoName_2016-7-29_17-36-5_No-00.png
  • SnapCrab_NoName_2016-7-29_17-32-7_No-00.png
  • SnapCrab_NoName_2016-7-29_17-28-57_No-00.png
  • SnapCrab_NoName_2016-7-29_17-23-18_No-00.png
  • SnapCrab_NoName_2016-7-29_17-20-58_No-00.png
  • SnapCrab_NoName_2016-7-29_17-19-19_No-00.png
  • SnapCrab_NoName_2016-7-29_17-17-30_No-00.png
  • SnapCrab_NoName_2016-7-29_17-14-34_No-00.png
  • SnapCrab_NoName_2016-7-27_18-40-32_No-00.png
  • SnapCrab_NoName_2016-7-27_18-40-23_No-00.png

月別 アーカイブ