【MotionBoard】MotionBoard Viewを使ってみた
BI技術者の雑記
今回は、MotionBoard Viewという、複数の異なるデータソースを一つのデータソースとして結合する機能を紹介します。
1. MotionBoard Viewについて
MotionBoardでは、異なるデータソースの明細データをJOINやUNIONで結合した「MotionBoard View」が作成できます。
データソースとして使用するタイミングでデータを結合するため、常に最新のデータとなります。
2. MotionBoard Viewの用途
MotionBoard Viewの主な用途は以下になります。
①接続先が異なるデータソースを結合したいとき
②結合対象のデータを事前に絞り込みたいとき
①接続先が異なるデータソースを結合したいとき
原則として、すべてのデータソースをMotionBoard Viewの基にすることができます。
例えば、Oracle DatabaseとMicrosoft SQL Server、ExcelとDr.Sumのデータソースが結合できます。
ただし、次のものは使用できません。
・ボード共有のデータソース
・インメモリテーブル
・Datalizerのデータソース
・MotionBoard Viewで作成したデータソース
②結合対象のデータを事前に絞り込みたいとき
あらかじめ検索条件で絞り込んだデータを結合対象のデータにすることができるため、結合処理の負荷が軽減できます。
3. MotionBoard Viewのデータ結合の方法
MotionBoard Viewのデータソースの結合方法には、ワンショットクエリとテンポラリクエリの2種類があります。
①ワンショットクエリ
データの結合を、データソースの参照先となるデータベースで行う方法です。
ワンショットクエリとして動作するのは、次の条件を満たす場合です。
- 参照先のデータベースとJDBCドライバを通じて接続している
- 結合対象のデータソースの参照先が、JOINまたはUNIONを使用でき、外部接続設定のカスタムビューを使用できるデータベースである
- 結合対象のデータソースを、すべて同じ外部接続設定を使用して参照している
【特徴】
- データを結合する際の処理速度は参照先のデータベースに依存し、結合したデータに対する処理速度はMotionBoardに依存する
- データの結合を参照先のデータベースで行うため、データベースのテーブルやビューからデータを取得するよりも遅くなる傾向にある
- 結合対象のデータの件数は、参照先のデータベースに依存する
- 結合後のデータ件数は、参照先のデータベースに依存する
②テンポラリクエリ
データの結合を、MotionBoardで行う方法です。
【特徴】
- CSVファイルやDr.Sumなどのような、JDBC接続以外のデータソースは、テンポラリクエリで結合される
- データを結合する際の処理速度、データを結合した後の処理速度はMotionBoardに依存する
- データの結合をMotionBoardで行うため、通常のデータソースを扱うよりも処理速度が遅くなる傾向がある
- 結合対象のデータの件数はMotionBoardに依存する
- 結合後のデータの件数に制限はない
- 結合後のデータが100万件を超える場合、処理速度が著しく低下する可能性がある
- テンポラリクエリで使用するリソースや使用配分は、MotionBoard用の外部接続設定の「ドライバタイプ」に依存する
4. JOINによるデータ結合
JOINによるデータ結合では、スタースキーマの中心となるファクトテーブルと、属性データのディメンションテーブルを指定して、同じキー項目を持つデータソースを横に結合します。
<操作手順>
①MotionBoard View定義を作成したいボードを開く
・ボードメニューの[管理]→[ボード編集]を選択
②MotionBoard View定義を作るための準備をする
・エディタメニューの[ボード管理]ボタンをクリックする
・[ボード管理]画面で[データ管理]タブをクリックする
・[新規作成]ボタンをクリック
・MotionBoard Viewのデータソース定義の名前を入力し、[OK]ボタンをクリックする
③MotionBoard View定義の作成を開始する
・[データソース選択]画面で[新規MBView]ボタンをクリックする
・MotionBoard View定義の名前を入力して、[OK]ボタンをクリックする
④モデルタイプと格納先を指定する
⑤ファクトテーブルを選択する
⑥ディメンションテーブルを選択する
⑦項目間のリレーションを作成する
⑧MotionBoard View定義で使用する項目を選択する
・MotionBoard View定義で使用する項目のチェックボックスをオンにする
⑨MotionBoard View定義で設定した内容をプレビューで確認する
⑩MotionBoard View定義が作成されたことを確認する
⑪MotionBoard Viewを使用したデータソース定義を作成する
5. おわりに
今回は、MotionBoard View機能の概要と、MotionBoard ViewのJOINによる結合方法を紹介しました。
JOINによるデータ結合のほかにUNIONによるデータ結合も可能なので、用途に応じて使い分けてください。