QlikView 11.2 Direct Discovery FAQ

QlikView 11.2
Direct Discovery FAQ
1) QlikView Direct Discovery とは?
QlikView Direct Discovery 機能は、QlikView のインメモリデータセットの連想機能をクエリモデル
と結合しています。クエリモデルでは、ソースデータは QlikView のデータモデルに直接ロードされ
ず、集計されたクエリ結果が QlikView のユーザーインターフェースに戻されます。それでも Direct
Discovery のデータセットは 連想体験 の一部であり、 ユー ザーはインメ モリ デー タと Direct
Discovery データの両方を連想的に操作できます。
2) Direct Discovery と、従来のクエリやデータ視覚化ツールとの機能の違いは?
QlikView Direct Discovery の特長は、インメモリと Direct Discovery データセットを、同一チャート
上にある場合でも一緒に分析できるハイブリッド機能にあります。ビジネスユーザーは、いずれの
データセットにおいても連想的に選択を行い、関連性の有無を QlikView のイメージカラー(緑、グ
レー、白)で確認できます。また、チャートを作成して、両方のデータセットからのデータを一緒に分
析することも可能です。
このハイブリッドアプローチは、データ視覚化ツールや従来のクエリ機能に勝る素晴らしい能力と柔
軟性をもたらします。その理由は、そうした従来のツールでは、インメモリエンジンへデータを展開し
たり、データベースに対してクエリを発行することはできますが、その両方を同じアプリケーション上
で一貫して行うことはできないからです。
QlikView Direct Discovery では、ユーザーはサイズにかかわらず、どのような量のデータに対して
も、Business Discovery を実行し、視覚的な分析を行うことが可能です。この独自のハイブリッドア
プローチの採用により、ユーザーはビッグデータソースに保存されたデータと、QlikView のインメモ
リモデルに保存された追加のデータソースとを直接関連付けることができます。QlikView は同一イ
ンターフェース内でシームレスに Teradata、SAP、Facebook などの複数のデータソースに同時に
接続できるため、ビジネスユーザーはデータサイロを越えてデータの関連付けが可能です。
3) QlikView はデータベースにアクセスするか、インメモリで実行するかという選択をどのように管
理していますか?
QlikView は、特別なスクリプト構文を用いて、どのデータがインメモリに存在し、どのデータが
Direct Discovery のデータであるかを判断します。これにより、スクリプト構文で指定された特定の
データ項目が、スクリプトのリロードプロセス中に QlikView データモデルにロードされないようにで
きます。ただし、ユーザーインターフェースの QlikView オブジェクトではクエリを目的としてデータ項
目を使用でき、分析のために QlikView インメモリデータセットと結合することが可能です。
qlikview.com
この構造が作成されると、Direct Discovery データを一般的なフィールド名でインメモリデータに結合できま
す。これによりユーザーは Direct Discovery とインメモリデータセットの両方を連想的に操作できます。
QlikView のキャッシュ機能もまた、全般的なユーザーエクスペリエンスの向上のために使用されます。
QlikView サーバーはクエリの選択状態をメモリに保存します。ユーザーが同じ選択を行った場合、
QlikView はキャッシュを利用してユーザーエクスペリエンスを向上します。キャッシュには時間制限を設け
ることが可能です。詳細は質問 16 をご参照ください。
4) Direct Discovery のビジネス価値は?
現在、QlikView の Business Discovery は、完全なデータセットに依存しており、データセットは、ユーザー
インターフェースを使用してユーザーが分析を行えるようメモリにロードされます。QlikView が即座に分析で
きるデータ量は、単一マシンのメモリ量と処理能力によって制限されますが、QlikView の高度なデータ圧縮
技術とドキュメントのチェーン機能により、これが制限要因となることはほとんどありません。しかしながら、
ビッグデータの出現により、ビジネスアナリストが膨大なデータを直接利用したいと考える状況が増えてい
ます。
QlikView Direct Discovery は、ビッグデータに対する直接クエリと、インメモリにロードされたデータとを結
合するハイブリッドアプローチを使用して、さまざまなデータソースからの分析を実現しています。これにより、
ビッグデータソースの膨大なデータを、QlikView の直感的で連想的な分析体験に使用できるようになります。
ビジネスユーザーは、ビッグデータソースの情報を直接照会して可視化を行ったりダッシュボードを提供し
たり、またインメモリデータを用いて連想的に分析したりすることが可能です。インメモリデータは、SAP、
Salesforce、業務デー タ ソー スとい っ た さま ざまな デー タ ソ ースか ら抽 出で きま す。QlikView Direct
Discovery は複雑な ETL プロセスやデータサイロを必要とせず、直接接続によってユーザーの QlikView ア
プリケーションにビッグデータをもたらし、その他のデータソースとともに Business Discovery を実現しま
す。
5) QlikView Direct Discovery 機能を使用するメリットは?
Direct Discovery により、ビジネスユーザーは独自の QlikView Business Discovery 機能をビッグデータに
活用できます。
•
詳細へのドリルダウン
ビジネスユーザーは、集計されたインメモリデータセットから詳細データへドリルダウンできます。分析
に有用なすべてのデータを、データをメモリにロードする際のスケーラビリティの制約を受けることなく
活用できます。
•
ビッグデータの連想データ探索
ビジネスユーザーは、日常的に使用している既知のデータ値を選択することで、不慣れなビッグデータ
も分析が可能です。QlikView は、選択されたインメモリデータに対するビッグデータ値を、連想的に
ユーザーに表示します。
•
インメモリを超えた QlikView ユーザーエクスペリエンスの拡張
ソーシャル機能、コラボレーティブ機能、モバイル機能を備えた独自の QlikView 体験を生かし、セルフ
サービス型のビッグデータ分析を提供します。ビジネスユーザーは、自身で、またはグループやチーム
で質問をし、回答を得て、ビッグデータにおける洞察への新たな道を開くことができます。
QlikView 11.2 Direct Discovery FAQ
| 2
•
QlikView の容易な導入と迅速なアプリ開発
ビジネスユーザーは、その容量の大きさや必要とされる開発作業のために、これまでは別々に使用さ
れていたか、あるいは使用されていなかったデータセットに対して、Business Discovery を実現できま
す。複雑で長期にわたる ETL 開発を経ることなく、これらのデータセットを分析することが可能です。
•
使いやすさ
QlikView Direct Discovery は、ビッグデータに対しても同様に、使いやすい QlikView のユーザーエク
スペリエンスを提供します。
6) QlikView Direct Discovery にはどのような種類の分析要件が適していますか?
QlikView Direct Discovery は、ビッグデータソースの大量データを探索し、分析を行う必要がある分析に適
しています。さらに、ビジネスユーザーがビッグデータを連想的に分析できることから、柔軟性のないクエリ
パスを前もって作成せずに、迅速に分析アプリケーションを構築する必要がある Business Discovery プロ
ジェクトで、この機能を活用することができます。
7) QlikView Direct Discovery のシステム要件は?
QlikView Direct Discovery は QlikView 11.2 の一部として提供されます。ソフトウェアは 2012 年 12 月より
無償で提供されます。
8) QlikView Direct Discovery 機能の価格は?
QlikView Direct Discovery 機能は QlikView 11.2 とともに無償で提供されます。
9) QlikView 11.2 へアップグレードするための前提条件はありますか?
前提条件はありません。ただし、アップグレードのベストプラクティスに従うことが推奨されます。
10) 開発者が Direct Discovery 機能を使用可能にするのですか?
はい。QlikView 開発者は QlikView アプリケーションのロードスクリプトに Direct Discovery テーブルを設定
し、ビジネスユーザーが必要なビッグデータソースを照会できるようにする必要があります。このプロセスに
ついては、質問 11 および 13 にて詳細をご説明しています。
QlikView 11.2 Direct Discovery FAQ
| 3
11) QlikView Direct Discovery はどのように機能しますか?
スクリプトエディタでは、Direct Discovery 形式のデータに接続するための新しい構文が導入されました。通
常、データベーステーブルからデータをロードするためには、以下の構文が必要です。
図1:通常の QlikView ロードスクリプト構文
QlikView 11.2 Direct Discovery FAQ
| 4
Direct Discovery メソッドを呼び出すには、キーワード「SQL」を「DIRECT」に置き換えます。
図 2:Direct Discovery 用 QlikView ロードスクリプト構文
上記の例では、CarrierTrackingNumber および ProductID の列のみが通常の方法で QlikView にロードさ
れます。OrderQty や Price などその他の列は、データベースのデータテーブルに存在します。OrderQty
フィールドと Price フィールドは、「IMPLICIT」フィールドとして参照されます。IMPLICIT フィールドは、
QlikView が「メタレベル」で認識しているフィールドです。IMPLICIT フィールドの実際のデータは、データ
ベースにのみ存在しますが、フィールドは QlikView の式で使用される場合があります。「IMPLICIT」フィー
ルドについての詳細は質問 12 をご参照ください。
QlikView 11.2 Direct Discovery FAQ
| 5
Direct Discovery のテーブル ビュー とデー タ モデ ルを見 る と、以 下の通 り、デ ータ 列項 目はモ デル
(OrderFact テーブル)の内にありません。
図 3:Direct Discovery とインメモリデータセットにおける連想データモデル
Direct Discovery の構造が作成されると、一般的なフィールド名を使用して Direct Discovery データをイン
メモリデータに結合できます(図 3)。この例では、「ProductDescription」テーブルがインメモリにロードされ、
ProductID フィールドを使用して Direct Discovery データに結合されました。これによりユーザーは、Direct
Discovery とインメモリデータセットの両方を連想的に操作できます。図 4 で示すように、ビジネスユーザー
は、Direct Discovery とインメモリのいずれのデータセットにおいても連想的に選択を行い、関連性の有無
を QlikView のイメージカラー(緑、グレー、白)で確認できます。
図 4:Direct Discovery とインメモリデータセットにおける連想 Business Discovery
QlikView 11.2 Direct Discovery FAQ
| 6
12) 「IMPLICIT」フィールドとは?
IMPLICIT フィールドは、QlikView が「メタレベル」で認識しているフィールドです。QlikView はロードスクリプ
トでキーワード「DIRECT」を認識すると、ロードスクリプトに明示的に記述されてないフィールドを自動的に
「IMPLICIT」フィールドにします。IMPLICIT フィールドの実際のデータは、データベースにのみ存在します
が、フィールドは QlikView の式で使用される場合があります。つまり、ユーザーが QlikView で式を処理す
る際は、IMPLICIT フィールドを他の任意のフィールドとして扱うことができます。
IMPLICIT フィールドの概念を導入した理由は、集計が QlikView 自身によって処理されるのではなく、デー
タ ベ ー ス 上 で 行 わ れ る べ き か ど う か を QlikView が 決 定 す る よ う に す る た め で す 。 例 え ば 、 式
Count(Address)が QlikView のチャートで使用され、Address が IMPLICIT フィールドである場合、
QlikView はデータベースに計算を委ねます(QlikView が Address フィールドのデータを保持していないこと
は明らかなため)。つまり、QlikView がすでに保有する同じ式構文を使用する一方で、IMPLICIT フィールド
はデータベースにおける集計を追加的にサポートします。その結果、データベースから Direct Discovery
フィールドを使用していることがユーザーには透過的となります。
より高度な使用やデータベース固有のタスクには、SQL()関数を利用できる場合があります。詳細は質問
14 をご参照ください。
13) IMPLICIT フィールドはどのように定義されますか?
IMPLICIT フィールドを定義する方法は現在 2 つあります。最も簡単な方法は、キーワード「DIRECT」を用
いて Direct Discovery テーブルをロードするだけの方法です。Direct Discovery テーブルスクリプトがロード
されると、QlikView はデータベーステーブルからすべてのフィールドをフェッチし、それらを IMPLICIT フィー
ルドとして保存します。
2 つめは、キーワード「IMPLICIT」を使用する方法です。このキーワードが使用されると、QlikView はキー
ワード「DIRECT」の後に記述されているフィールドの後に、IMPLICIT として記述されているフィールドのみ
をロードします。これらのデータベースのフィールドのみが、QlikView アプリケーションの Business
Discovery 用ユーザーインターフェースで使用できます。QlikView アプリケーションでユーザーが使用すべ
きでないフィールドがデータベーステーブル上に存在する場合、開発者はこの方法を使用できます。
2 つの方法については以下の例をご覧ください。
例
データベースフィールド:Field1、Field2、Field3、Field4、Field5
•
DIRECT SELECT Field1, Field3 FROM TableName
QlikView は Field2、Field4、Field5 を IMPLICIT フィールドと見なします
•
DIRECT SELECT Field1, Field3 IMPLICIT Field2, Field4 FROM TableName
QlikView は Field2 と Field4 のみ IMPLICIT フィールドと見なします
QlikView 11.2 Direct Discovery FAQ
| 7
14) SQL 構文を QlikView の数式で使用できますか?
はい。新しい式構文 SQL()を使用すれば、QlikView チャートから SQL 構文を実行できます。SQL 構文は、
ロードスクリプトで Direct Discovery テーブルとして定義されたソーステーブルに対してのみ記述できること
に留意してください。
15) データ集計はどこで行われますか?
Direct Discovery フィールドを使用した QlikView チャートでは、集計はデータベースで行われます。また、
チャートがインメモリの軸を持つ場合、データベースレベルでの集計の終了後、セカンドレベルの集計が
チャートレベルで行われます。
16) Direct Discovery を使用した QlikView アプリケーションの予想されるパフォーマンスは?
Direct Discovery 機能は QlikView から外部システムを照会しているため、そのパフォーマンスは基本的に
基盤となるシステムのパフォーマンスに依存しています。インメモリ処理は、インデータベース処理よりも常
に高速となることに注意してください。Direct Discovery 機能には、標準的なデータベース、およびクエリ
チューニングのベストプラクティスを採用することが可能です。パフォーマンス チューニングはすべてソース
データベースで行う必要があります。Direct Discovery 機能では、QlikView アプリケーションからのクエリ
パフォーマンス チューニングはサポートしていません。
全体的なユーザーエクスペリエンスを向上させるために、QlikView のキャッシュ機能が使用されます。
QlikView はクエリの選択状態をメモリに保存します。同じ種類の選択が行われると、QlikView はキャッシュ
からクエリを利用します。これらのキャッシュされた結果セットは、ユーザー間で共有されます。同じ種類の
選択が行われた場合、QlikView はソースデータを照会せずに、キャッシュされた結果セットを利用すること
に注意してください。
キャッシュには時間制限を設けることが可能です。Direct Discovery のクエリ結果でキャッシュの制限を設
定するには、専用の構文「STALE」をロードスクリプトで使用します。この時間制限に達すると、QlikView
サーバーは、前回の選択で生成された Direct Discovery のクエリ結果を保存したキャッシュを消去します。
キャッシュが消去されると、QlikView は選択にソースデータを照会し、指定された時間制限に達するまで再
びキャッシュを保持します。
QlikView 11.2 Direct Discovery FAQ
| 8
図 5:Direct Discovery テーブルのキャッシュを消去する、ロードスクリプトの「STALE」オプション
17) QlikView Direct Discovery を使用するには、どのような種類のデータベース接続が必要ですか?
QlikView Direct Discovery は、SQL 準拠のデータソースでのみ使用できます。サポートされているデータ
ソースは以下の通りです。
•
ODBC/OLEDB データソース
SQL Server、Teradata、Oracle を含むすべての ODBC/OLEDB ソースをサポートしています。
•
SQL をサポートするカスタム接続
Salesforce.com、SAP SQL Connector、SQL 準拠のデータソース用のカスタム QVX connector
18) Direct Discovery 機能は、32 ビットと 64 ビット接続の両方をサポートしていますか?
はい。
QlikView 11.2 Direct Discovery FAQ
| 9
19) 新しい Direct Discovery 機能で使用できる QlikView の集計機能は?
QlikView Direct Discovery はベースコードとして SQL を生成するため、すべての QlikView 機能が Direct
Discovery 機能との互換性を持つわけではありません。この初期リリースでサポートされる機能は、Sum、
Avg、Count、Min、Max です。その他の機能は追って利用可能になります。
20) データベース接続のセキュリティはどのように確保されていますか?
QlikView アプリケーションを Direct Discovery 機能とともに使用するすべてのユーザーは、同じ接続を使用
します。この初期リリースでは、認証パススルー、またはユーザーごとの資格情報や Section Access はサ
ポートされていません。
21) データベースに非同期の並列呼び出しを行うことができますか?
はい。コネクションプーリング機能を使用すれば、データベースに対して複数の呼び出しを実行できます。
プーリング機能を設定するロードスクリプト構文は以下の通りです。
図 6:プーリング機能を設定するロードスクリプト構文
22) QlikView アプリケーションから Direct Discovery クエリを最適化できますか?
パフォーマンス チューニングはすべてソースデータベースで行う必要があります。Direct Discovery 機能で
は、QlikView アプリケーションからのクエリ パフォーマンス チューニングはサポートしていません。
23) すべての QlikView 機能は、Direct Discovery 機能と互換性がありますか?
Direct Discovery のアプローチは対話型で SQL 構文特有の性質を持っているため、いくつかの制約があり
ます。
サポートされていないチャートタイプは以下の通りです。
•
ピボットテーブル
•
ミニチャート
QlikView 11.2 Direct Discovery FAQ
| 10
また、下記の QlikView 機能もサポートされていません。
•
高度な集計
•
計算軸
•
Direct Discovery フィールドを使用した QlikView オブジェクトにおける比較分析(並列ステート)
•
Direct Discovery フィールドはグローバル検索ではサポートされていません
•
Direct Discovery テーブルを使用した QlikView アプリケーションからのバイナリロード
24) サポートされているデータタイプは?
すべてのデータタイプがサポートされています。ただし、特定のデータ形式は QlikView で定義しなければな
らない場合があります。これは、ロードスクリプトで「SET Direct…Format」構文を使用して実行できます。
以下の例は、Direct Discovery のソースとして使用されているソースデータベースのデータ形式を定義する
方法を示しています。
図 7:データベース特有のデータ形式を定義するロードスクリプト構文
25) Direct Discovery を設定するためには、ロードスクリプトでどのような SQL 構文を使用できますか?
QlikView Direct Discovery の初期リリースは、(インメモリにロードされた)無制限の外部データソースに加
えて、1 つのインデータベース テーブル(ビューも可能)の使用のみサポートしています。
QlikView 11.2 Direct Discovery FAQ
| 11
26) Direct Discovery のログ機能は?
Direct SQL ステートメントは基盤となるデータソースへ渡されます。渡されたそのような SQL ステートメント
は、基盤となる接続のトレースファイルを通して見ることができます。
この例として、標準 ODBC 接続を以下に示します(図 8)。「Start Tracing Now(トレースの開始)」ボタンをク
リックすると、トレースが有効になります。
図 8:標準 ODBC 接続のトレース機能の「Start Tracing Now(トレースの開始)」ボタン
これ以降のトレースファイルは、ユーザーの選択や操作を通じて生成された SQL ステートメントを詳述しま
す。
27) さらなる情報はどのように入手できますか?
詳細は QlikView 11.2 Direct Discovery データシートをご参照ください。
© 2012 QlikTech International AB. All rights reserved. QlikTech, QlikView, Qlik, Q, Simplifying Analysis for Everyone, Power of Simplicity, New Rules, The Uncontrollable Smile and
other QlikTech products and services as well as their respective logos are trademarks or registered trademarks of QlikTech International AB. All other company names, products and
services used herein are trademarks or registered trademarks of their respective owners. The information published herein is subject to change without notice. This publication is for
informational purposes only, without representation or warranty of any kind, and QlikTech shall not be liable for errors or omissions with respect to this publication. The only warranties
for QlikTech products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be
construed as constituting any additional warranty.
QlikView 11.2 Direct Discovery FAQ
| 12