Qlik 是經典的商業智慧分析軟體,其家族擁有Qlik Sense等多款BI軟體。它使您能夠快速開發和交付互動式指導分析應用程式和儀表板。本文為您介紹Qlik Sense Desktop如何串連 Hologres並可視化分析資料。
使用限制
已知限制
Qlik Sense暫不支援同步PostgreSQL中外部表格的表結構,因此無法在如下頁面中查詢到外部表格中繼資料。
該限制不影響直接使用SQL語句查詢,如下圖所示。
Qilk暫不支援可視化顯示Hologres的外部表格,但是您可以在資料載入編輯器中通過SQL語句查詢外部表格並可視化分析。
Qlik Sense Desktop串連Hologres
安裝Qlik Sense Desktop
安裝Qlik Sense Desktop,詳情請參見Qlik官方文檔。
串連Hologres
開啟Qlik Sense Desktop,在頁面右上方單擊建立新應用程式。
在建立新應用程式彈框,為應用程式命名後,單擊建立。
在彈框中單擊開啟應用程式,在應用程式對應頁面添加資料,單擊從檔案和其他源添加資料。
在彈框中選擇PostgreSQL建立新的串連,配置參數資訊。
參數
描述
Host name
Hologres執行個體的公用網路地址。進入Hologres管理主控台的執行個體詳情頁,從網路資訊地區擷取網路地址。
Port
Hologres的執行個體連接埠。進入Hologres管理主控台的執行個體詳情頁,從網路資訊地區擷取連接埠。
Database
Hologres建立的資料庫名稱。
User Name
當前阿里雲帳號的AccessKey ID。擷取方式請參見建立存取金鑰。
Password
當前阿里雲帳號的AccessKey Secret。擷取方式請參見建立存取金鑰。
單擊測試連接,如果提示
Connection succeeded
,則表示串連成功。您可以單擊彈框右下角的建立,儲存新的串連資訊。配置PostgreSQL資料連線。
選擇目標Owner(即Hologres中的 schema),此處您可以選擇public。
在Tables地區選取項目需要分析的表。
單擊下方的添加資料,添加資料執行完畢後,Qlik Sense會將資料從Hologres匯入Qlik Sense,您可以在Qilk查看Hologres中的資料。
說明使用該模式Qlik Sense會將資料全部載入到Qlik Sense的引擎中,並非根據頁面操作即時發送查詢到資料庫。
配置Direct Query模式
在日常生產情境中,資料庫會包含PB級資料,建議您在Qlik Sense中使用Direct Query模式,而不用將資料匯入Qlik Sense,關於Direct Query模式的詳細解釋,請參見Qlik官方文檔。
開啟之前建立的應用,在頁面上方選擇 。
在頁面右側顯示資料來源串連資訊,單擊右下方的表徵圖,將串連資訊插入到編輯器中。
在指令碼編輯器中查詢指令碼的最前方,輸入
Direct Query
,即可啟用 Direct Query 模式。範例資料圖示和指令碼如下所示:SET ThousandSep=','; SET DecimalSep='.'; SET MoneyThousandSep=','; SET MoneyDecimalSep='.'; SET MoneyFormat='¥#,##0.00;-¥#,##0.00'; SET TimeFormat='TTh:mm:ss'; SET DateFormat='YYYY/M/D'; SET TimestampFormat='YYYY/M/D TTh:mm:ss[.fff]'; SET FirstWeekDay=6; SET BrokenWeeks=1; SET ReferenceDay=0; SET FirstMonthOfYear=1; SET CollationLocale='zh-CN'; SET CreateSearchIndexOnReload=1; SET MonthNames='1月;2月;3月;4月;5月;6月;7月;8月;9月;10月;11月;12月'; SET LongMonthNames='一月;二月;三月;四月;五月;六月;七月;八月;九月;十月;十一月;十二月'; SET DayNames='周一;周二;周三;周四;周五;周六;周日'; SET LongDayNames='星期一;星期二;星期三;星期四;星期五;星期六;星期日'; SET NumericalAbbreviation='3:k;6:M;9:G;12:T;15:P;18:E;21:Z;24:Y;-3:m;-6:μ;-9:n;-12:p;-15:f;-18:a;-21:z;-24:y'; LIB CONNECT TO 'PostgreSQL_hgpostcn-cn-st21y8nlm007-cn-hangzhou.hologres.aliyuncs.com'; --輸入 Direct Query,啟用 Direct Query 模式 DIRECT QUERY dimension l_shipmode, l_shipdate, o_orderstatus measure l_tax, l_quantity FROM public.lineitem INNER JOIN public.orders ON public.lineitem.l_orderkey = public.orders.o_orderkey;
單擊視窗右上方的載入資料,Qlik Sense將發送即時查詢。
在頁面上方選擇 ,開始建立可視化。
在編輯工作表頁面,您可以在頁面左側單擊圖表,選擇需要的圖表類型建立可視化。
說明直接拖動欄位到畫布,Qlik Sense無法產生Direct Query的查詢,因此建議您單擊圖表建立可視化。
鑒於Qlik Sense的處理邏輯,建議您先添加度量項,後添加維度項,以提高響應速度。
更多關於Qlik Sense對資料操作和分析的介紹,請參見Qlik官方文檔。
使用自訂ODBC對接Hologres
如果需要在Qlik Sense的表嚮導模式中查詢到外表,可以使用自訂ODBC的方式接對Hologres。
前提條件
在Qlik Sense伺服器端和用戶端都需安裝PostgreSQL的ODBC,您可以通過PostgreSQL的官網下載ODBC驅動。
由於Hologres相容PostgreSQL 11的生態,所以請務必安裝Vpsqlodbc_11_01_0000以上的版本。
配置DNS
你可以單擊
,找到並開啟ODBC 資料來源(64位)管理工具。切換至系統 DSN 選項卡,單擊添加按鈕。
在彈出的磁碟機程式中選擇 PostgreSQL Unicode(x64),然後單擊完成按鈕。
說明使用者 DSN 只有特定的使用者可以調用,而系統 DSN 對該系統的所有登入使用者可用。如果使用者需要在 Web BI Server 通過 ODBC 訪問 Hologres,應使用系統 DSN。
在彈出的對話方塊中輸入 Hologres 伺服器資訊,參數詳細說明如下所示。
參數
描述
User Name
當前阿里雲帳號的AccessKey ID。您可以單擊AccessKey 管理,擷取AccessKey ID。
Password
當前阿里雲帳號的AccessKey Secret。您可以單擊AccessKey 管理,擷取AccessKey Secret。
Server
Hologres執行個體的公用網路地址。進入Hologres管理主控台的執行個體詳情頁,從網路資訊地區擷取公用網路地址。
Port
Hologres的執行個體連接埠。進入Hologres管理主控台的執行個體詳情頁,從網路資訊地區擷取連接埠。
Database
Hologres的資料庫名稱。
單擊 Test 按鈕,如顯示如下頁面,表示串連成功。
單擊儲存,儲存該 DSN。
串連Hologres
配置完本地 DSN 並成功安裝 Qlik Sense 後,可執行以下步驟來串連 Hologres 與 Qlik Sense。
開啟 Qlik Sense Desktop 應用程式。單擊從檔案和其他源添加資料。
在彈出的視窗單擊 ODBC,以建立新的串連。
從列表中選擇此前建立的DSN,並填寫名稱。
單擊建立,以儲存新的串連資訊。之後您可以選擇Owner(即 Hologres 中的 schema),例如選擇 public,使用該連結方式即可讀取外部表格的Schema。
您可以選擇需要分析的表,單擊添加資料, Qlik Sense 會從 Hologres 將資料匯入 Qlik Sense,完成後您即可進行分析。
說明使用該模式 Qlik Sense 會將資料全部載入至 Qlik Sense 的引擎中,並非根據頁面操作即時發送查詢至資料庫。