监控清单

作为数据提供方,您可以跟踪清单的用量指标。您可以通过以下两种方法获取共享数据的用量指标:

  • 使用 Analytics Hub。借助 Analytics Hub,您可以查看清单的用量指标信息中心,其中包括每日订阅数、每日执行的作业数、每个组织的订阅者数量以及每个表的作业频率。您可以通过查询 INFORMATION_SCHEMA.SHARED_DATASET_USAGE 视图来检索共享数据的用量指标。

  • 使用 INFORMATION_SCHEMA 视图。您可以通过直接查询 INFORMATION_SCHEMA.SHARED_DATASET_USAGE 视图来跟踪订阅者如何使用数据集。

使用 Analytics Hub

如需使用 Analytics Hub 获取共享数据的用量指标,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,转到 Analytics Hub 页面。

    转到 Analytics Hub

  2. 点击包含您要查看其用量指标的清单的数据交换名称。

  3. 点击用量指标,然后执行以下操作:

    1. 清单菜单中,选择清单。

    2. 设置时间范围。

该页面会显示以下用量指标:

  • 总订阅数:所选清单的当前订阅数。您最多可以查看 60 天的总订阅数。
  • 订阅者总数:所选清单的所有订阅中的唯一订阅者数量。您最多可以查看 60 天的订阅者总数。
  • 执行的作业总数:在所选清单的每个表上运行的唯一作业数量。
  • 扫描的总字节数:从所选清单的所有表中扫描的总字节数。
  • 每日订阅数:此图表跟踪所选清单在一段时间内的订阅数。您最多可以查看 60 天的每日订阅数。
  • 每个组织的订阅者数量:列出组织及其使用所选清单的订阅者的数量。
  • 每日执行的作业数:此图表显示所选清单中的作业用量。
  • 表的作业频率:在所选清单中访问表的频率。

使用 INFORMATION_SCHEMA 视图

如果您是数据提供方,则可以通过查询 INFORMATION_SCHEMA.SHARED_DATASET_USAGE 视图来跟踪订阅者如何使用数据集。确保您具有查询此视图所需的角色。

如需对非默认项目运行查询,请按以下格式添加项目 ID:

PROJECT_ID.region-REGION_NAME.INFORMATION_SCHEMA.SHARED_DATASET_USAGE

例如 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"

后续步骤