Delta Sharingマテリアライゼーション履歴システムテーブル リファレンス
共有マテリアライズド・データ履歴テーブルは、ビュー共有、マテリアライズドビュー、およびストリーミング・テーブルから Delta Sharingを使用して作成されたデータ・マテリアライゼーションを表します。 これには、データの取得元、具体化されるセキュリティ保護可能なリソース、および具体化が作成された日時に関する情報が含まれています。
共有具体化の詳細については、「 共有へのビューの追加 」および「 共有ビューの読み取り」を参照してください。
テーブルパス :このシステムテーブルは system.sharing.materialization_historyにあります。
materialization_historyスキーマを有効にする
アカウント管理者は、 materialization_history スキーマを有効にする必要があります。
- アカウントコンソールで、左側のパネルにある[ プレビュー ]をクリックします。
 - マテリアライゼーション履歴システムテーブルの共有 を有効にします。
 
共有 マテリアライゼーションデータ履歴 システムテーブル のスキーマ
共有マテリアライズド・データ・ヒストリー・システムテーブルは、次のスキーマを使用します。
列名  | Type  | 説明  | サンプルデータ  | 許容  | 
|---|---|---|---|---|
  | string  | データ具体化の一意の ID。  | 
  | False  | 
  | string  | 具体化が作成された Databricks アカウントの ID。  | False  | |
  | string  | 請求された Databricks ワークスペースの ID。  | 
  | False  | 
  | string  | データ実体化を使用する受信者の名前。  | 
  | True  | 
  | string  | データ具体化を使用するプロバイダの名前。  | 
  | True  | 
  | string  | データ実体化の作成に使用される共有の名前。  | 
  | False  | 
  | string  | 共有アセットのスキーマの名前。  | 
  | False  | 
  | string  | データ実体化の作成に使用されるテーブルの名前。  | 
  | False  | 
  | timestamp  | マテリアライゼーションが作成されたときのタイムスタンプ。  | 
  | False  | 
サンプル クエリ
このセクションでは、請求属性に関する知見を得るために使用できる次のサンプル クエリについて説明します。
- Delta Sharing の受信者が、共有ビューのクエリに費やされた DBU の数を尋ねる
 - Delta Sharing の受信者は、最も多くの使用状況を照会したプロバイダーを尋ねます
 - Delta Sharing プロバイダーは、開いている受信者のビューのフィルター処理に費やされた DBU の数を尋ねます
 - Delta Sharing プロバイダーは、どのオープン受信者が最もコストが発生しているかを尋ねます
 
プロバイダーがデータ具体化に対して課金されると、プロバイダーのみがクエリ結果を表示できます。受信者がデータ具体化に対して課金されると、受信者のみがクエリ結果を表示できます。
Delta Sharing の属性とコストの発生方法の詳細については、「 Delta Sharing のコストが発生して確認する方法」を参照してください。
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.usage_metadata.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.usage_metadata.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.usage_metadata.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.table_catalog = tsu.catalog_name AND
  t.table_schema = 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) AS usage,
 srp.recipient_name
FROM
  system.billing.usage bu
INNER JOIN
  system.sharing.materialization_history dm
ON
  dm.sharing_materialization_id = bu.usage_metadata.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'
GROUP BY
  srp.recipient_name
ORDER BY
  usage DESC
LIMIT 1;