Pentaho社の東京オフィス開設

|
Pentaho社の東京オフィスが正式に開設されました。今後、日立製作所様とのさらなる連携により、IoT分野でのビジネス拡大を目指します。

http://itpro.nikkeibp.co.jp/atcl/news/16/092802819/?rt=nocnt

KSKアナリティクスも日本地域のPentahoパートナーとして、IoT分野での強力なこの連携を歓迎します。日本でさらにPentahoがメジャーな存在になっていくことを楽しみにしています。当社も、お客様やパートナー様により高い付加価値を提供できるよう、より一層の努力を行ってまいります。

今後ともどうぞよろしくお願い申し上げます。

株式会社KSKアナリティクス
代表取締役 森本好映


GCPNEXT World Tour in Tokyo

|
gcpnext|tokyo

昨日、GCPNEXT World Tour in Tokyoへ行ってきました。

お昼過ぎに到着し、展示会場に入ると助六弁当とお茶のセットがセルフサービスな感じで積まれていましたので、一つありがたくいただき、急ぎ気味で完食してから、展示製品・サービスを見て回りました。

会場中央付近では、インターネットで見たことがあった唐揚げサーバのデモが行なわれてました。
お皿を認識する映像と処理の様子がモニターに映されていました。

コーヒーとマカロンもいただきました。


CaffeOnSpark

|
Screen Shot 2016-09-02 at 3.17.48 PM.png
Spark Summit 2016のセッションでSparkでの分散ディープラーニングフレームワーク比較の発表が行なわれていたようです。こちらがそのスライドショーです。
http://www.slideshare.net/SparkSummit/which-is-deeper-comparison-of-deep-learning-frameworks-on-spark
このスライドによりますとCaffeOnSparkが一番パフォーマンスがよく、安定しているようです。


https://github.com/yahoo/CaffeOnSpark/
さっそくこちらからソースを取ってきて、手順にそってCaffeOnSparkをビルド、
サンプルのMNISTを実行すると問題なく動作しました。

Caffe自体のインストールはUbuntu 14.04環境だったため、こちらの手順で行いました。
http://www.nal.ics.es.osaka-u.ac.jp/personal/k-yamanishi/CaffeUbuntu.html

PDIではSpark Submitを実行するステップがありますので、
CaffeOnSpark対応と言えます。
http://www.pentaho-partner.jp/blog/2015/06/spark-submit-on-spoon.html

Spark・ディープラーニング導入をご検討の際はKSKアナリティクスへご一報いただけますと幸いです。
Pentahoではレポートを作成する際、レンダリングのたびにデータベースにアクセスしてデータを取り出し、表示させています。しかし、頻繁にレンダリングを行うと、その都度データベースへのアクセスが必要になり、負荷がかかってしまいます。

そこでPentahoでもキャッシュの仕組みが導入されています。

Pentahoで使用できるキャッシュは以下のようになっています。

Ehcached
Memcached
Infinispan and so forth...


Pentahoでは標準機能としてEhcachedが入っていますが、使用される状況に合わせてMemcachedやInfinispan等への切り替えも可能です。


詳しくは英語になりますが、以下もご参照ください。


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をご一読いただくことをおすすめいたします。

2016年9月

        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  

アイテム

  • Screen Shot 2016-09-02 at 3.17.48 PM.png
  • 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

月別 アーカイブ