CData桑島です。本日は、イスラエル発の次世代型のBIツール Sisense を使ってサイボウズの kintoneのデータをもとにしたダッシュボードを作成してみます。

Sisense とは
Sisense(サイセンス)は、独自のIn-Chip®およびSingleStack®テクノロジによる高パフォーマンスを特徴としたセルフサービスとエンタープライズ両面を兼ね揃えた次世代型の BI ツールです。
- Open,Single-Stack™ Architecture
- In-Chip™ Technology
- Machine Learning
- Sisense Everywhere

最新の2019年度版のガートナー社のMagic QuadrantのBusiness Analytics PlatformではVisionaliesとして高い評価を得ています。
Sisense は以下のサイトからFree Trialを申し込む事が出来ます。クラウド版とオンプレ版がありますが、本手順ではオンプレミス版を利用しています。
Sisense とCData Software の関係
CData Softwareは、Sisenseで利用可能なJDBCドライバを提供するSisenseのテクノロジーパートナーです。

Sisenseの Data Connectors ページ内のCERTIFIED CONNECORとなっているデータソース はCDataが提供しているJDBCドライバとなります。

現在(2019/05/09 執筆時点)、Sisense社とCData Softwareの間で更なる利便性の向上のためCDataが提供する130+のSaaS/Cloud & ApplicationのSisense専用コネクターとしての提供を準備しております。これによりSisenseユーザーはCDataのフルラインでのJDBCドライバを専用のWebサイトからダウンロードして利用できるようになります。


https://www.cdata.com/solutions/bi/sisense/www.cdata.com
kintoneとは
kintone とはサイボウズがクラウドサービスとして提供する開発の知識がなくても自社の業務に合わせたシステムをかんたんに作成できるアプリケーション作成プラットフォームです。 kintoneを使用すると下記のような顧客や案件を管理するアプリケーションをノンコーディングで作成する事が出来ます。

kintoneには30日間無料で利用出来るトライアルがありますので、本手順を試したいがkintoneの環境を持っていない場合は以下のWebサイトからトライアル環境をお申し込みください。
Kintone Connecors for Sisense のダウンロードとインストール
こちらのWebサイトからKintone Connectorをダウンロードします。
https://www.cdata.com/solutions/bi/sisense/

ダウンロードしたZIPファイル内の「setup.jar」を使用してインストールします。

インストーラを進めて下記の通りInstallation Completeになればインストールは成功です。Quitボタンで閉じてください。

Kintone Connecors の実体はJDBCドライバです。JDBCドライバのJarファイル(cdata.jdbc.kintone.jar)とライセンスファイル(cdata.jdbc.kintone.lic)をSisenseのGenericJDBCを配置する以下パスにコピーします。

| パス | 備考 | |
|---|---|---|
| コピー元 | C:\Program Files\CData\CData JDBC Driver for kintone 2019\lib | |
| コピー先 | C:\ProgramData\Sisense\DataConnectors\jdbcdrivers\kintone | jdbcdrivers配下にkintoneフィルダを作成して格納 |
SisenseでのJDBCドライバの追加については下記のドキュメントに詳細な手順が記載されており参考になりますので併せてご参照ください。
SisenseでのElastiCubeの作成
ElastiCubesとはSisense独自の高パフォーマンスな分析用データストアです。このテクノロジーを利用する事で、Sisenseは、標準デスクトップクラスのコンピュータで数億件を超える生データのクエリを数秒で返す事が出来ます。詳細は、Sisenseの製品ドキュメントをご覧ください。
ElastiCubeはSIsenseのDataタブから作成します。

ElastiCubeの名称を「kintone」として「+Data」ボタンをクリックします。利用出来るコネクタ一覧が表示されるので、「Generic JDBC」を選択します。

接続情報のウィンドウが開くので以下の通り入力します。

| 値 | 備考 | |
|---|---|---|
| Connection String | jdbc:kintone:URL=https://XXXX.cybozu.com/;User=XXXX;Password=XXXX; | サブドメイン、ユーザID、パスワードはご利用のkintone環境に併せた文字列に変更ください |
| JDBC JARs Folder | kintone | jdbcdrivers配下に作成したフォルダ名 |
| Driver's Class Name | cdata.jdbc.kintone.KintoneDriver |
UserNameとPasswordは不要です。入力したら「次へ」ボタンをクリックします。SelectDatabaseにて「CData」をクリックします。

kintone内のアプリ一覧がテーブルとしてリスト表示されます。今回はkintoneのサンプルアプリである「案件管理(営業支援パック)」を選択してみます。すると右側のペインにデータプレビューエリアとSQLのQueryPreviewエリアが表示されます。今回はデフォルトのままのSQLで実行しますが件数が多い場合などは「SELECT * FROM Kintone.案件管理(営業支援パック) limit 10」のようりLimit句を付与して件数を絞り込んでください。実行するとkintoneアプリ内のデータがプレビューエリアに表示されればSisenseからkintoneへの接続は成功です。

このテーブルがkintoneでいうアプリケーションに相当します。

今回は3つのkintoneアプリを使用してElastiCubeのモデルを作成していきます。チェックボックスをオンにしてDoneしてくだい。

データモデルのペインに3つのテーブルが配置されます。以下の通りリレーションシップ付きのモデルを作成します。

| 変更箇所 | 変更内容 | 備考 |
|---|---|---|
| 案件管理(営業支援パック)>> 顧客管理レコード番号(関連レコード紐付け用)>> Change Data Type | Float -> Int | |
| 案件管理(営業支援パック)>> 合計費用 >> Change Data Type | Text -> Float | |
| 活動履歴(営業支援パック)>> 顧客管理レコード番号(関連レコード紐付け用)>> Change Data Type | Float -> Int | |
| 活動履歴(営業支援パック)>> 案件管理レコード番号(関連レコード紐付け用)>> Change Data Type | Float -> Int | |
| 案件管理(営業支援パック) >> 顧客管理レコード番号(関連レコード紐付け用)>> RelationShips | 顧客管理(営業支援パック) >> RecordId | |
| 活動履歴(営業支援パック) >> 顧客管理レコード番号(関連レコード紐付け用)>> RelationShips | 顧客管理(営業支援パック) >> RecordId | |
| 活動履歴(営業支援パック) >> 案件管理レコード番号(関連レコード紐付け用)>> RelationShips | 顧客管理(営業支援パック) >> RecordId |
作成後のイメージは以下の通りです。

作成したモデルを「Build」します。Build処理が完了したらElastiCubeの作成は完了です。

ダッシュボードの作成
それでは作成したkintoneのElastiCubeのデータを元にダッシュボードを作成していきます。「Analytics」タブを開き、「To Create Your Dashboad」ボタンをクリックします。

kintone を選択します。

ElastiCube内の項目を使用してWidgetを作成していきます。


まとめ
いかがでしたでしょうか? 今回はkintoneのデータだけを利用してSisense上でElastiCubeを作成してダッシュボードを作成しましたが、CDataが提供する130を超えるデータソースが同じ手順でSisense上で扱えますので是非気になるデータソース があればご利用ください。もし、リストに無いデータソース を扱いたい場合は、弊社サポートデスクまでお問い合わせください。