Delta Sharing物化历史记录系统表参考

共享具体化数据历史表表示使用 Delta Sharing 从视图共享、具体化视图和流式处理表创建的数据具体化。 它包含有关数据来源、实体化过程中可加以安全控制的对象以及创建实体化时间的信息。

有关共享具体化的详细信息,请参阅添加视图到共享读取共享视图

表路径:此系统表位于 system.sharing.materialization_history.

共享具体化数据历史记录系统表架构

共享具体化数据历史记录系统表使用以下架构:

列名 类型 DESCRIPTION 示例数据 可为 Null
sharing_materialization_id 字符串 数据实体化的唯一标识符。 da38803f-2a62-4e27-bdb9-29b801c6dd84
account_id 字符串 在其中创建具体化的 Azure Databricks 帐户的 ID。
workspace_id 字符串 Azure Databricks 工作区的计费 ID。 6051921418418893
recipient_name 字符串 使用数据物化生成的收件人名称。 e2-dogfood 真 实
provider_name 字符串 使用数据具体化的提供商名称。 aws:us-west-2:19a85dee-54bc-43a2-87ab-023d0ec16013 真 实
share_name 字符串 用于创建数据具体化的共享的名称。 my_share
schema_name 字符串 共享资产架构的名称。 my_schema
table_name 字符串 用于创建数据具体化的表的名称。 stocks
created_at 时间戳 创建具体化时的时间戳。 2025-01-01 00:00:00

示例查询

本部分包括以下示例查询,可用于深入了解计费属性:

当提供程序按数据具体化计费时,只有提供程序才能看到查询结果。 当接收方按数据具体化计费时,只有收件人才能看到查询结果。

有关增量共享属性和产生成本的更多详细信息,请参阅如何产生和检查增量共享成本?

Delta Sharing 接收者询问查询共享视图所消耗的 DBU 数量

将实例 ... 替换为你的信息。

SELECT
  SUM(bu.usage_quantity)
FROM
  system.billing.usage bu
INNER JOIN
  system.sharing.materialization_history dm
ON
  dm.sharing_materialization_id = bu.sharing_materialization_id
WHERE
  bu.billing_origin_product = 'DATA_SHARING' AND
 dm.share_name = '...' AND
 dm.schema_name = '...' AND
 dm.table_name IN (...);

Delta Sharing 收件人询问哪个提供商查询了最多的使用量

SELECT
  SUM(bu.usage_quantity) AS total_usage,
  dm.provider_name
FROM
  system.billing.usage bu
INNER JOIN
  system.sharing.materialization_history dm
ON
  dm.sharing_materialization_id = bu.sharing_materialization_id
WHERE
  bu.billing_origin_product = 'DATA_SHARING'
GROUP BY
  dm.provider_name
ORDER BY
  total_usage DESC;

Delta Sharing 提供者询问过滤视图中用于开放收件人的 DBU 消耗量是多少

SELECT
  SUM(bu.usage_quantity)
FROM
  system.billing.usage bu
INNER JOIN
  system.sharing.materialization_history dm
ON
  dm.sharing_materialization_id = bu.sharing_materialization_id
INNER JOIN
  system.information_schema.table_share_usage tsu
ON
  dm.share_name = tsu.share_name AND
  dm.schema_name = tsu.schema_name AND
  dm.table_name = tsu.table_name
INNER JOIN
  system.information_schema.tables t
ON
  t.catalog_name = tsu.catalog_name AND
  t.schema_name = tsu.schema_name AND
  t.table_name = tsu.table_name
WHERE
  bu.billing_origin_product = 'DATA_SHARING' AND
  t.table_type = 'VIEW';

Delta Sharing提供者询问哪个活跃收件人承担了最多成本

SELECT
 SUM(usage_quantity) usage,
 srp.recipient_name
FROM
  system.billing.usage bu
INNER JOIN
  system.delta_sharing.data_materializations dm
ON
  dm.sharing_materialization_id = bu.sharing_materialization_id
INNER JOIN system.information_schema.share_recipient_privileges srp
ON
  srp.share_name = dm.share_name
WHERE
  bu.billing_origin_product = 'DATA_SHARING'
ORDER BY
  bu.usage DESC
LIMIT 1;