全部產品
Search
文件中心

Hologres:Quick BI

更新時間:Aug 07, 2024

Quick BI為您提供海量資料的即時線上分析服務以及豐富的視覺效果,您可以通過拖拽式操作或SQL語句方式,輕鬆地完成資料分析、業務資料探查及報表製作。本文為您介紹如何使用即時數倉Hologres串連Quick BI,並進行可視化分析。

前提條件

背景資訊

Hologres與Quick BI高效連通,支援通過Hologres資料來源直接連接Quick BI,將Hologres高效查詢的資料直接進行可視化分析。

說明

當前Quick BI進階版和專業版支援Hologres資料來源,其餘版本請使用PostgreSQL資料來源,更多關於PostgreSQL資料來源的操作請參見阿里雲資料來源PostgreSQL

本文以進階版Quick BI為例,為您示範串連Hologres並進行可視化分析的相關操作。

使用限制

  • Quick BI當前僅支援使用公用網路和傳統網路串連Hologres,不支援使用VPC網路連接Hologres。

  • 您無需在Hologres中配置白名單即可串連至Quick BI。

  • Hologres串連Quick BI時,您需要根據Quick BI的版本選擇相應的資料來源,推薦使用Hologres資料來源。

  • Quick BI當前僅支援在使用公網或者指定VPC網路時,進行白名單限制。

使用Quick BI進行可視化分析

  1. 登入Quick BI管理主控台

  2. 添加資料來源。

    1. 在Quick BI管理主控台頁面,單擊頂部功能表列的工作空間

    2. 工作空間頁面左側導覽列,單擊資料來源

    3. 資料來源頁面,單擊右上方的建立資料來源

    4. 選擇目標資料來源並配置相應參數。

      1. 選擇Alibaba Hologres資料來源。Alibaba Hologres

      2. 配置添加Hologres資料來源的各項參數。配置串連

        • 參數配置(使用指定VPC網路連接Hologres)。

          參數名稱

          描述

          說明

          顯示名稱

          按照您的需求填寫,用於分辨資料來源使用。

          資料庫地址

          Hologres執行個體的指定VPC網路網域名稱。

          您可以登入管理主控台,進入執行個體詳情頁,從網路資訊網域名稱列擷取指定VPC的網域名稱。

          說明

          此處不包含連接埠,例如:hgpostcn-cn-nwy364b5v009-cn-shanghai-vpc-st.hologres.aliyuncs.com

          連接埠

          Hologres執行個體的指定VPC網路連接埠。

          您可以登入管理主控台,進入執行個體詳情頁,從網路資訊網域名稱列擷取指定VPC的網域名稱的連接埠。

          資料庫

          串連的Hologres執行個體的資料庫名稱。

          您可以登入管理主控台,進入執行個體詳情頁,從資料庫管理頁面擷取。

          Schema

          預設為public Schema。

          您可以使用新建立的Schema,在資料來源配置了Schema後,列表中會展示當前Schema下所有的表。但是在使用即席SQL時,還需要在表名稱前手動添加對應的Schema名(即schema.table),才能正確索引到Schema下面的表。

          使用者名稱

          當前帳號的AccessKey ID。

          您可以單擊AccessKey 管理,擷取AccessKey ID。

          密碼

          當前帳號的AccessKey Secret。

          您可以單擊AccessKey 管理,擷取AccessKey Secret。

          VPC資料來源開關

          需要勾選該開關

          購買者accessId

          購買執行個體使用者的AccessKey ID。

          購買者accessKey

          購買執行個體使用者的AccessKey Secret。

          執行個體id

          Hologres執行個體ID

          地區

          Hologres執行個體所在的地區。

        • 參數配置(使用公網串連Hologres)。

          參數名稱

          描述

          說明

          顯示名稱

          按照您的需求填寫,用於分辨資料來源使用。

          資料庫地址

          Hologres執行個體的公網網路網域名稱。

          您可以登入管理主控台,進入執行個體詳情頁,從網路資訊網域名稱列擷取公網的網域名稱。

          說明

          此處不包含連接埠。

          連接埠

          Hologres執行個體的公網網路連接埠。

          您可以登入管理主控台,進入執行個體詳情頁,從網路資訊網域名稱列擷取公網網域名稱的連接埠。

          資料庫

          串連的Hologres執行個體的資料庫名稱。

          您可以登入管理主控台,進入執行個體詳情頁,從DB管理頁面擷取。

          Schema

          預設為public Schema。

          您可以使用新建立的Schema,在資料來源配置了Schema後,列表中會展示當前Schema下所有的表。但是在使用即席SQL時,還需要在表名稱前手動添加對應的Schema名(即schema.table),才能正確索引到Schema下面的表。

          使用者名稱

          當前帳號的AccessKey ID。

          您可以單擊AccessKey 管理,擷取AccessKey ID。

          密碼

          當前帳號的AccessKey Secret。

          您可以單擊AccessKey 管理,擷取AccessKey Secret。

          VPC資料來源開關

          需要關閉該開關

        • 參數配置(使用傳統網路串連Hologres)。

          參數名稱

          描述

          說明

          顯示名稱

          按照您的需求填寫,用於分辨資料來源使用。

          資料庫地址

          Hologres執行個體的傳統網路網域名稱。

          您可以登入管理主控台,進入執行個體詳情頁,從網路資訊網域名稱列擷取傳統網路的網域名稱。

          說明

          此處不包含連接埠,例如:hgpostcn-cn-nwy364b5v009-cn-shanghai-vpc.hologres.aliyuncs.com

          連接埠

          Hologres執行個體的傳統網路連接埠。

          您可以登入管理主控台,進入執行個體詳情頁,從網路資訊網域名稱列擷取傳統網路網域名稱的連接埠。

          資料庫

          串連的Hologres執行個體的資料庫名稱。

          您可以登入管理主控台,進入執行個體詳情頁,從DB管理頁面擷取。

          Schema

          預設為public Schema。

          您可以使用新建立的Schema,在資料來源配置了Schema後,列表中會展示當前Schema下所有的表。但是在使用即席SQL時,還需要在表名稱前手動添加對應的Schema名(即schema.table),才能正確索引到Schema下面的表。

          使用者名稱

          當前帳號的AccessKey ID。

          您可以單擊AccessKey 管理,擷取AccessKey ID。

          密碼

          當前帳號的AccessKey Secret。

          您可以單擊AccessKey 管理,擷取AccessKey Secret。

          VPC資料來源開關

          需要關閉該開關

    5. 參數配置完成後,您可以單擊串連測試,測試Quick BI與Hologres的串連狀態:

      • 如果顯示資料來源連通性正常,則表示Quick BI與Hologres串連成功。

      • 如果顯示資料來源連通性異常,請檢查參數是否正確,則表示Quick BI與Hologres串連失敗。請根據報錯資訊處理異常。

    6. 單擊確定,完成配置。

  3. 可視化分析資料。

    成功串連資料來源後,在資料來源 > 我的資料來源頁面,單擊已建立的資料來源,顯示當前資料庫中的所有表。

    • 如果您希望使用介面化操作完成資料的可視化分析,則可以使用拖拽方式。

    • 如果您希望使用SQL陳述式完成資料的可視化分析,則可以使用即席分析SQL方式。

    兩種方式的具體操作如下:

    • 拖拽方式。

      1. 單擊目標表操作列的建立資料集表徵圖,建立資料集。

      2. 配置建立資料集對話方塊的名稱位置參數。

      3. 單擊確定

      4. 我的資料集頁面,您可以單擊目標資料集操作列下的表徵圖,進行相應操作:

        • 單擊編輯表徵圖,查看當前資料集的資料。

        • 單擊建立儀錶盤表徵圖,建立儀錶盤,將表資料匯入並組建圖表,進行可視化展示。

        • 單擊建立試算表表徵圖,建立試算表,將目標表資料匯入並產生試算表,進行可視化展示。

        • 單擊更多表徵圖,執行更多操作。例如,資料脫敏、緩衝配置及清除緩衝等。

        具體功能的操作,詳情請參見概述

        樣本建立儀表板,在儀表板編輯頁面建立堆積柱狀圖,並設計圖表樣式展示資料。

    • 即席分析SQL方式。

      1. 資料來源頁面,單擊右上方的即席分析SQL,進入即席分析SQL頁面。

      2. 您可以根據業務需求輸入查詢SQL語句,並單擊執行

      3. 擷取需要查詢的資料後,單擊建立資料集

      4. 配置儲存自訂SQL對話方塊的名稱位置SQL參數。

      5. 單擊確定

      成功建立資料集後,您可以在資料集中可視化分析表資料,詳情請參見自訂SQL

時間篩選控制項最佳實務

在Hologres建立表時,您可以設定Segment_key(別名event_time_column)屬性,對時間類型過濾條件進行索引最佳化,防止全表掃描並加速查詢。Hologres預設把表中第一個時間戳記類型作為Segment_key

Quick BI支援進階的SQL預留位置功能,您可以使用SQL預留位置來設定時間控制項。更多SQL預留位置資訊,請參見自訂SQL

  1. 設定時間篩選欄位預留位置。

    執行以下步驟前,需要在Hologres建立名稱為LINEITEM的內部表,並且將MaxCompute公用空間MAXCOMPUTE_PUBLIC_DATA中public.odps_lineitem_10g表的資料匯入到LINEITEM表中,詳細步驟請參見Hologres查詢體驗快速入門

    1. 在Quick BI管理主控台的資料來源頁面,單擊右上方的SQL建立資料集,進入建立程式碼片段對話方塊。

    2. 輸入以下SQL語句,從LINEITEM表中取出時間戳記資料。

      SELECT
          *
      FROM
        "public"."lineitem" AS AME_T_1_
      WHERE
        AME_T_1_."l_shipdate" >= TO_TIMESTAMP('${report_date.get(0)}', 'yyyy-MM-dd hh24:mi:ss')
        AND AME_T_1_."l_shipdate" <= TO_TIMESTAMP('${report_date.get(1)}', 'yyyy-MM-dd hh24:mi:ss')

    3. 單擊參數設定,設定SQL預留位置。

    4. 變數類型下拉式清單選擇“日期-年月日時分秒 > YYYY-MM-DD HH-MI-SS”。

    5. 單擊確定後,單擊確認編輯

    6. 儀表板編輯頁面,單擊建立篩選項,在查詢條件設定對話方塊,欄位選擇所設定的SQL預留位置。

      選擇SQL預留位置

    7. 儀表板編輯頁面,單擊查看SQL,擷取到如下SQL。

      SELECT
        AME_T_1_."l_shipmode" AS T_A0_2_,
        AME_T_1_."l_shipinstruct" AS T_A1_3_,
        SUM(AME_T_1_."l_extendedprice") AS T_A2_4_
      FROM
        "public"."lineitem" AS AME_T_1_
      WHERE
        AME_T_1_."l_shipdate" >= TO_TIMESTAMP('1993-01-01 00:00:00', 'yyyy-MM-dd hh24:mi:ss')
        AND AME_T_1_."l_shipdate" <= TO_TIMESTAMP('1998-12-31 23:59:59', 'yyyy-MM-dd hh24:mi:ss')
      GROUP BY
        AME_T_1_."l_shipmode",
        AME_T_1_."l_shipinstruct"
      LIMIT
        1000 OFFSET 0
  2. 驗證Segment_key是否生效。

    您可查看SQL的執行計畫中是否有Segment Filter的關鍵字出現以驗證Segment_key是否生效。

    1. 登入Hologres管理主控台,單擊左側執行個體列表

    2. 執行個體詳情頁左側導覽列,單擊資料庫管理

    3. DB授權頁面,單擊SQL編輯器

    4. SQL編輯器頁面,單擊左上方的建立SQL視窗

    5. 在新增的臨時Query查詢頁面,選擇已建立的執行個體名資料庫後,請您在SQL查詢的編輯框輸入如下語句,單擊運行

      以下SQL語句用來查看擷取到SQL的執行計畫,用於驗證Segment_key是否生效。

      SQL執行計畫

      explain SELECT
        AME_T_1_."l_shipmode" AS T_A0_2_,
        AME_T_1_."l_shipinstruct" AS T_A1_3_,
        SUM(AME_T_1_."l_extendedprice") AS T_A2_4_
      FROM
        "public"."lineitem" AS AME_T_1_
      WHERE
        AME_T_1_."l_shipdate" >= TO_TIMESTAMP('1993-01-01 00:00:00', 'yyyy-MM-dd hh24:mi:ss')
        AND AME_T_1_."l_shipdate" <= TO_TIMESTAMP('1998-12-31 23:59:59', 'yyyy-MM-dd hh24:mi:ss')
      GROUP BY
        AME_T_1_."l_shipmode",
        AME_T_1_."l_shipinstruct"
      LIMIT
        1000 OFFSET 0
    6. 結果頁簽中擷取執行計畫,如下。

      ->  Limit  (cost=0.00..1.01 rows=1 width=24)
            ->  Partial HashAggregate  (cost=0.00..1.01 rows=1 width=24)
                  Group Key: l_shipmode, l_shipinstruct
                  ->  Redistribute Motion  (cost=0.00..1.01 rows=10 width=24)
                        ->  Result  (cost=0.00..1.01 rows=10 width=24)
                              ->  Partial HashAggregate  (cost=0.00..1.01 rows=10 width=24)
                                    Group Key: l_shipmode, l_shipinstruct
                                    ->  Parallelism (Gather Exchange)  (cost=0.00..1.01 rows=32 width=24)
                                          ->  Result  (cost=0.00..1.01 rows=32 width=24)
                                                ->  DecodeNode  (cost=0.00..1.01 rows=32 width=24)
                                                      ->  Partial HashAggregate  (cost=0.00..1.01 rows=32 width=24)
                                                            Group Key: l_shipmode, l_shipinstruct
                                                            ->  Index Scan using holo_index:[1] on lineitem  (cost=0.00..1.00 rows=1000 width=24)
                                                                  Segment Filter: ((l_shipdate >= '1993-01-01 00:00:00+08'::timestamp with time zone)

      執行計畫中,出現了Segment Filter,說明Segment_key已生效,您可以使用SQL預留位置建立的時間控制項。