監控產品資訊

本文說明如何在 BigQuery sharing (舊稱 Analytics Hub) 監控清單。資料供應商可以追蹤產品資訊的使用指標。取得共用資料用量指標的方法有兩種:

  • 使用 BigQuery sharing。您可以使用「Sharing」(共用) 頁面,查看清單的使用指標資訊主頁。這個資訊主頁包含每日訂閱、每日執行工作、各組織的訂閱者數量,以及各資料表的工作頻率。您可以查詢 INFORMATION_SCHEMA.SHARED_DATASET_USAGE 檢視表,擷取共用資料的用量指標。

  • 使用 INFORMATION_SCHEMA 檢視畫面。您可以查詢 INFORMATION_SCHEMA.SHARED_DATASET_USAGE 檢視表,追蹤訂閱者如何使用資料集。

使用共用功能

如要使用「共用」功能取得共用資料的用量指標,請按照下列步驟操作:

  1. 前往 Cloud de Confiance 控制台的「Sharing (Analytics Hub)」(共用 (Analytics Hub)) 頁面。

    前往「共用 (Analytics Hub)」

  2. 按一下資料交換名稱,查看其中項目的用量指標。

  3. 按一下「用量指標」,然後執行下列操作:

    1. 從「Listings」(商家資訊) 選單中選取商家資訊。

    2. 設定日期範圍。

這個頁面會顯示下列用量指標:

  • 訂閱總數:所選產品資訊目前的訂閱數。最多可查看 60 天內的訂閱總數。
  • 訂閱者總數:所選產品資訊中所有訂閱項目的不重複訂閱者人數。最多可查看 60 天內的總訂閱人數。
  • 執行的工作總數:在所選產品資訊的各個資料表上執行的不重複工作數量。
  • 掃描的位元組總數:從所選產品資訊的所有資料表掃描的位元組總數。
  • 每日訂閱數:這張圖表會追蹤所選產品資訊在一段時間範圍內的訂閱數。最多可查看 60 天的每日訂閱資料。
  • 每個組織的訂閱者:列出組織和使用所選清單的訂閱者數量。
  • 每日執行的工作:這張圖表會顯示所選產品資訊的工作用量。
  • 資料表的工作頻率:所選產品資訊中資料表的存取頻率。

使用INFORMATION_SCHEMA檢視畫面

資料供應商可以查詢 INFORMATION_SCHEMA.SHARED_DATASET_USAGE 檢視表,追蹤訂閱者如何使用資料集。請確認您具備查詢這個檢視表的必要角色。

如要對預設專案以外的 Cloud de Confiance 專案執行查詢,請使用下列格式:

PROJECT_ID.region-REGION_NAME.INFORMATION_SCHEMA.SHARED_DATASET_USAGE

更改下列內容:

  • PROJECT_ID: Cloud de Confiance 專案 ID
  • REGION_NAME:BigQuery 資料集區域名稱

例如 myproject.region-us.INFORMATION_SCHEMA.SHARED_DATASET_USAGE。

以下範例說明如何查詢 INFORMATION_SCHEMA 檢視表,查看用量指標。

取得所有共用資料表執行的工作總數

以下範例會計算專案中訂閱者執行的工作總數:

SELECT
  COUNT(DISTINCT job_id) AS num_jobs
FROM
  `region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE

結果大致如下:

+------------+
| num_jobs   |
+------------+
| 1000       |
+------------+

如要查看訂閱者執行的工作總數,請使用 WHERE 子句:

  • 如果是資料集,請使用 WHERE dataset_id = "..."。
  • 如果是資料表,請使用 WHERE dataset_id = "..." AND table_id = "..."。

根據處理的資料列數,取得最常用的資料表

下列查詢會根據訂閱者處理的資料列數量,計算最常使用的資料表。

SELECT
  dataset_id,
  table_id,
  SUM(num_rows_processed) AS usage_rows
FROM
  `region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
GROUP BY
  1,
  2
ORDER BY
  3 DESC
LIMIT
  1

輸出結果會與下列內容相似:

+---------------+-------------+----------------+
| dataset_id    | table_id      | usage_rows     |
+---------------+-------------+----------------+
| mydataset     | mytable     | 15             |
+---------------+-------------+----------------+

找出使用資料表最多的機構

下列查詢會根據資料表處理的位元組數,計算出用量最高的訂閱者。您也可以將 num_rows_processed 欄當做指標。

SELECT
  subscriber_org_number,
  ANY_VALUE(subscriber_org_display_name) AS subscriber_org_display_name,
  SUM(total_bytes_processed) AS usage_bytes
FROM
  `region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
GROUP BY
  1

輸出結果會與下列內容相似:

+--------------------------+--------------------------------+----------------+
|subscriber_org_number     | subscriber_org_display_name    | usage_bytes    |
+-----------------------------------------------------------+----------------+
| 12345                    | myorganization                 | 15             |
+--------------------------+--------------------------------+----------------+

如果訂閱者沒有組織,您可以使用 job_project_number,而非 subscriber_org_number。

取得資料交換的使用指標

如果資料交換和來源資料集位於不同專案,請按照下列步驟查看資料交換的使用指標:

  1. 找出屬於資料交換作業的所有清單。
  2. 擷取附加至產品資訊的來源資料集。
  3. 如要查看資料交換的用量指標,請使用下列查詢:
SELECT
  *
FROM
  source_project_1.`region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
WHERE
  dataset_id='source_dataset_id'
AND data_exchange_id="projects/4/locations/us/dataExchanges/x1"
UNION ALL
SELECT
  *
FROM
  source_project_2.`region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
WHERE
  dataset_id='source_dataset_id'
AND data_exchange_id="projects/4/locations/us/dataExchanges/x1"

取得共用檢視畫面的用量指標

下列查詢會顯示專案中所有共用檢視表的用量指標:

SELECT
  project_id,
  dataset_id,
  table_id,
  num_rows_processed,
  total_bytes_processed,
  shared_resource_id,
  shared_resource_type,
  referenced_tables
FROM `myproject`.`region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
WHERE shared_resource_type = 'VIEW'

輸出結果會與下列內容相似:

+---------------------+----------------+----------+--------------------+-----------------------+--------------------+----------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|     project_id      |   dataset_id   | table_id | num_rows_processed | total_bytes_processed | shared_resource_id | shared_resource_type |                                                                                                              referenced_tables                                                                                                              |
+---------------------+----------------+----------+--------------------+-----------------------+--------------------+----------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|     myproject       | source_dataset | view1    |                  6 |                    38 | view1              | VIEW                 | [{"project_id":"myproject","dataset_id":"source_dataset","table_id":"test_table","processed_bytes":"21"},
{"project_id":"bq-dataexchange-exp","dataset_id":"other_dataset","table_id":"other_table","processed_bytes":"17"}]                 |

+---------------------+----------------+----------+--------------------+-----------------------+--------------------+----------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

取得共用資料表值函式的用量指標

下列查詢會顯示專案中所有共用資料表值函式的用量指標:

SELECT
  project_id,
  dataset_id,
  table_id,
  num_rows_processed,
  total_bytes_processed,
  shared_resource_id,
  shared_resource_type,
  referenced_tables
FROM `myproject`.`region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
WHERE shared_resource_type = 'TABLE_VALUED_FUNCTION'

輸出結果會與下列內容相似:

+---------------------+----------------+----------+--------------------+-----------------------+--------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------+
|     project_id      |   dataset_id   | table_id | num_rows_processed | total_bytes_processed | shared_resource_id | shared_resource_type  |                                                  referenced_tables                                                  |
+---------------------+----------------+----------+--------------------+-----------------------+--------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------+
|     myproject       | source_dataset |          |                  3 |                    45 | provider_exp       | TABLE_VALUED_FUNCTION | [{"project_id":"myproject","dataset_id":"source_dataset","table_id":"test_table","processed_bytes":"45"}]           |
+---------------------+----------------+----------+--------------------+-----------------------+--------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------+

後續步驟