分析連線

透過分析連線,您可以整合外部分析與商業探索。分析連線可延伸運算式,您可以調用外部計算引擎,以在載入指令碼和圖表中使用 (若您這麼做,計算引擎會作為伺服器端延伸 (SSE) 來運作)。例如,您可以對 R 建立分析連線,並在載入資料時使用統計運算式。

建立分析連線

對於 QlikView DesktopQlikView Server (QVS),分析連線的設定方式是編輯 Settings.ini

備註: 在編輯 Settings.ini 檔案前,必須關閉 QlikView Desktop
在編輯 Settings.ini 檔案前,必須停止 QlikView Server
在新增連線或變更現有的連線後,需要重新啟動才能讓變更生效。
備註: 請注意,在您啟動 QlikView 之前,必須執行 SSE 外掛程式伺服器,否則將不會建立連線。

請執行下列動作:

  1. 開啟檔案 Settings.ini
    對於 QlikView Desktop,這位於 C:\Users\username\AppData\Roaming\QlikTech\QlikView
    對於 QlikView Server,這位於 C:\ProgramData\QlikTech\QlikViewServer
  2. 新增下列設定:

    [設定 7]
    SSEPlugin=<PluginConfig>[;<PluginConfig>...]

    其中 <PluginConfig> 是以逗號分隔的設定元素清單,包含下列內容:

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

    屬性 描述
    <EngineName> 分析連線的名稱。必須是唯一名稱。此為將會在應用程式內的運算式中使用的外掛程式對應/別名。需要 <EngineName> 才能使用外掛程式功能。例如,Python 外掛程式的 SSEPython 或 R 外掛程式的 R。
    <Address>

    以冒號分隔的清單具有兩個元素:

    <Host>:外掛程式的 DNS 名稱 (或 IP 位址)。

    <Port>:外掛程式待命的連接埠。

    <PathToCertFile> 前往資料夾的檔案系統路徑,該資料夾包含與外掛程式進行安全通訊時所需的用戶端憑證。此路徑只會指向含有憑證的資料夾。您必須確認這些內容的確已複製到該資料夾。三個憑證名稱必須如下: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 外掛程式,並定義一個或多個伺服器。

  • 一個 SSE 外掛程式伺服器:SSEPlugin=SSEPython,localhost:50051
  • 兩個 SSE 外掛程式伺服器:SSEPlugin=SSEPython,localhost:50051;R,localhost:50053
  • 一個 SSE 外掛程式伺服器的定義沒有憑證路徑,但有逾時設定:SSEPlugin=SSEPython,localhost:50051,,0,20