Referensi tabel sistem riwayat materialisasi OpenSharing

Tabel riwayat data materialisasi bersama mewakili materialisasi data yang dibuat dari berbagi tampilan, tampilan materialisasi, dan tabel streaming menggunakan OpenSharing. Ini berisi informasi tentang dari mana data berasal, objek yang dapat diamankan yang dimaterialisasikan, dan kapan materialisasi tersebut dibuat.

Untuk informasi lebih lanjut tentang materialisasi yang dibagikan, lihat Menambahkan tampilan ke bagian bersama dan Membaca tampilan yang dibagikan.

Jalur tabel: Tabel sistem ini terletak di system.sharing.materialization_history.

materialization_history Mengaktifkan skema

Admin akun harus mengaktifkan materialization_history skema:

  1. Di konsol akun, klik Pratinjau di panel sisi kiri.
  2. Aktifkan Berbagi Tabel Sistem Riwayat Materialisasi.

Skema tabel sistem riwayat data yang termaterialisasi dan dibagikan

Tabel sistem riwayat data materialisasi bersama menggunakan skema berikut:

Nama Kolom Tipe Deskripsi Contoh Data Bisa bernilai null
sharing_materialization_id string ID unik dari materialisasi data. da38803f-2a62-4e27-bdb9-29b801c6dd84 Tidak benar
account_id string ID akun Azure Databricks di mana materialisasi dibuat. Tidak benar
workspace_id string ID ruang kerja Azure Databricks ditagih. 6051921418418893 Tidak benar
recipient_name string Nama penerima yang terkait dengan materialisasi data. e2-dogfood Benar
provider_name string Nama penyedia yang menggunakan materialisasi data. aws:us-west-2:19a85dee-54bc-43a2-87ab-023d0ec16013 Benar
share_name string Nama share yang digunakan untuk membuat materialisasi data. my_share Tidak benar
schema_name string Nama skema aset bersama. my_schema Tidak benar
table_name string Nama tabel yang digunakan untuk membuat materialisasi data. stocks Tidak benar
created_at stempel waktu Tanda waktu kapan materialisasi dibuat. 2025-01-01 00:00:00 Tidak benar

Contoh pertanyaan

Bagian ini mencakup kueri sampel berikut yang dapat Anda gunakan untuk mendapatkan wawasan tentang atribusi penagihan:

Saat penyedia ditagih untuk materialisasi data, hanya penyedia yang dapat melihat hasil kueri. Saat penerima ditagih untuk materialisasi data, hanya penerima yang dapat melihat hasil kueri.

Untuk detail selengkapnya tentang bagaimana atribut OpenSharing dan dikenakan biaya, lihat Bagaimana cara dikenakan dan memeriksa biaya OpenSharing?.

Penerima OpenSharing menanyakan berapa banyak DBA yang dihabiskan untuk mengkueri tampilan bersama

Ganti contoh ... dengan informasi Anda.

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 (...);

Penerima OpenSharing menanyakan penyedia mana yang mengkueri penggunaan terbanyak

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;

Penyedia OpenSharing menanyakan berapa banyak DBA yang dihabiskan untuk memfilter tampilan untuk penerima terbuka

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';

Penyedia OpenSharing menanyakan penerima terbuka mana yang dikenakan biaya terbanyak

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;