分析接続

分析接続を使用すると、外部分析をビジネス ディスカバリと統合することができます。分析接続で、外部計算エンジンを呼び出すことによって、ロード スクリプトとチャートで使用できる数式を拡張します (これを行う際、計算エンジンはサーバーサイド拡張 (SSE) としての役割を果たします)。例えば、R への分析接続を作成して、データをロードするときに統計数式を使用することができます。

分析接続の作成

QlikView Desktop および QlikView Server (QVS) の両方で、Settings.ini を編集することによって分析接続が確立されます。

注: QlikView Desktop は、Settings.ini ファイルを編集する前に閉じる必要があります。
QlikView Server は、Settings.ini ファイルを編集する前に停止する必要があります。
新しい接続を追加したり、既存の接続を変更したりした場合は、その後に再起動して変更を有効にする必要があります。
注: QlikView を起動する前に、SSE プラグイン サーバーが実行されている必要があることに注意してください。実行されていない場合、接続は確立されません。

次の手順を実行します。

  1. Settings.ini ファイルを開きます。
    QlikView Desktop の場合、このファイルは C:\Users\username\AppData\Roaming\QlikTech\QlikView にあります。
    QlikView Server の場合は C:\ProgramData\QlikTech\QlikViewServer にあります。
  2. 次の構成を追加します。

    [Settings 7]
    SSEPlugin=<PluginConfig>[;<PluginConfig>...]

    ここで、<PluginConfig> は次を含む構成要素のカンマ区切りのリストです。

    <EngineName>,<Address>[,<PathToCertFile>,<RequestTimeout>,<ReconnectTimeout>]

    Property 説明
    <EngineName> 分析接続の名前。一意でなければなりません。アプリの数式内から使用されるプラグインへのマッピング/alias。このプラグイン機能を使用するには <EngineName> が必要です。たとえば、Python プラグインの場合の SSEPython や R プラグインの場合の R などです。
    <Address>

    2 つの要素から構成されるコロン区切りのリスト。

    <Host>: プラグインの DNS 名 (または IP アドレス)。

    <Port>: プラグインの待ち受けポート。

    <PathToCertFile> プラグインとのセキュアな通信に必要なクライアント証明書を含むフォルダーへのファイル システム パス。このパスは、証明書が配置されているフォルダーを指し示しているだけです。証明書が実際にこのフォルダーにコピーされていることを確認する必要があります。3 つの証明書の名前は、root_cert.pemsse_client_cert.pemsse_client_key.pem とする必要があります。許可されているのは相互認証のみです (サーバーとクライアント間の認証)。
    注: 証明書のファイル パスは任意で設定することになっていますが、省略した場合、安全でない通信が呼び出されます。
    <RequestTimeout> 整数値 (秒)。オプション。既定値は 0 (無期限) です。メッセージ経過時間のタイムアウト。
    <ReconnectTimeout> 整数値 (秒)。オプション。既定値は 20 (秒) です。クライアントが、プラグインへの接続が失われてから再接続を試みるまでの時間。
  1. QlikView Batch Settings.ini を開いてステップ 2 と同じ構成を追加し、ドキュメントをリロードできるようにします。

    既定の場所は、C:\Windows\system32\config\systemprofile\AppData\Roaming\QlikTech\QlikViewBatch です。

  2. 変更内容を Settings.ini ファイルに保存した後、QlikView を再起動します。[数式の編集] ダイアログまたは [ロード スクリプト] ダイアログから分析接続を追加すると、使用可能になります。

分析接続のセキュリティ保護

分析接続を使用する際は、QlikView 環境のセキュリティを強化するために、次のベスト プラクティスを検討してください。

  • サーバーサイド拡張 (SSE) プラグインは、管理者権限を使用せずに、分離された別個の環境にインストールして実行します。悪意のあるスクリプトからの害を最小限にするため、プラグインを開始しているユーザー アカウント、そしてこのユーザーがマシンおよびドメイン内で所有するアクセス権を把握しておきます。
  • セキュリティを強化するために、SSE プラグイン構成ファイル内で構成パラメータ allowScript を false に設定することによって、EvaluateScript 機能を無効にすることができます。これにより任意のスクリプトを実行することができなくなり、SSE プラグインは事前に定義された関数のみを実行できます。
  • QlikView ドキュメントを作成しているアプリケーション開発者は、SSE 数式で使用する変数を、制限された形式に設定することを推奨します。例えば、変数形式を数値のみに制限できます。

分析接続の使用における制限

新しい共有サーバー オブジェクトを作成しているときに、分析接続の機能が無効になります。

分析接続の数式を含む既存のシート オブジェクトをコピーすると、自動的にチャート プロパティ エディタが無効になります。つまり、このシート オブジェクトのチャート プロパティは編集できなくなります。

以下の例は、サーバーサイド拡張 (SSE) プラグインの設定方法を示しています。ここでは、Python プラグインを使用して、1 台または複数のサーバーを定義します。

  • SSE プラグイン サーバー 1 台: SSEPlugin=SSEPython,localhost:50051
  • SSE プラグイン サーバー 2 台: SSEPlugin=SSEPython,localhost:50051;R,localhost:50053
  • SSE プラグイン サーバー 1 台が証明書パスなしで定義されているが、タイムアウト設定を行う: SSEPlugin=SSEPython,localhost:50051,,0,20