Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menjelaskan cara memantau dan mengkueri data refresh tentang tampilan materialisasi di Databricks SQL.
Melihat detail tampilan materialisasi tunggal
Anda dapat melihat detail tampilan materialisasi tunggal dengan menggunakan Catalog Explorer, atau secara programatis, dengan DESCRIBE EXTENDED operasi. Anda juga dapat mengkueri log peristiwa untuk detail riwayat refresh tampilan materialisasi.
Menampilkan detail di Catalog Explorer
Anda dapat mengakses informasi tentang tampilan materialisasi Anda dengan melihatnya di Catalog Explorer. Di Catalog Explorer, Anda dapat melihat status refresh terakhir dan jadwal refresh apa pun yang dibuat di SQL. Untuk detail tentang jadwal yang dibuat di SQL, lihat CREATE MATERIALIZED VIEW.
Catalog Explorer memperlihatkan detail untuk setiap tampilan materialisasi di panel sisi kanan, termasuk:
- Status refresh saat ini dan waktu proses terakhir. Untuk melihat detail selengkapnya tentang pembaruan, termasuk durasi eksekusi, kesalahan terperinci, serta jenis refresh (termasuk apakah tampilan materialisasi sepenuhnya atau disegarkan secara bertahap dan mengapa), klik Lihat detail refresh.
- Perbarui Jadwal Jika tampilan materialisasi memiliki jadwal yang ditetapkan melalui SQL, jadwal akan ditampilkan. Untuk memperbarui jadwal, gunakan ALTER MATERIALIZED VIEW.
- Tag. Untuk menambahkan tag kustom, klik Tambahkan tag. Tag tidak secara otomatis digunakan untuk mengaitkan biaya, tetapi Anda dapat membuat kueri secara manual untuk menyambungkan tag kustom ke biaya Anda. Untuk detailnya, lihat Biaya atribut ke gudang SQL dengan tag kustom.
Ada properti tampilan materialisasi yang tidak tersedia di Catalog Explorer. Untuk properti tersebut, atau untuk mendapatkan informasi secara terprogram, Anda dapat menggunakan DESCRIBE EXTENDED perintah .
Lihat detail dengan DESCRIBE EXTENDED
Anda dapat melihat detail tentang tampilan terwujud secara terprogram dengan menggunakan DESCRIBE EXTENDED perintah . Ini termasuk detail di luar apa yang Anda dapatkan dari Catalog Explorer. Mereka meliputi:
Status penyegaran terkini yang telah diselesaikan.
Jadwal penyegaran.
Kolom tampilan termaterialisasi.
Jenis refresh tampilan materialisasi (tidak tersedia di Catalog Explorer).
Ukuran data untuk tampilan materialisasi, dalam total byte (tidak tersedia di Catalog Explorer).
Lokasi penyimpanan tampilan materialisasi (tidak tersedia di Catalog Explorer).
Beberapa informasi hanya disertakan dalam hasil saat diaktifkan:
- Kolom pengklusteran, jika diaktifkan.
- Apakah vektor penghapusan diaktifkan (hanya ditampilkan saat
true). - Apakah pelacakan baris diaktifkan (hanya ditampilkan saat
true).
-- As table:
DESCRIBE TABLE EXTENDED sales;
-- As a single JSON object:
DESCRIBE TABLE EXTENDED sales AS JSON;
Mengkueri log peristiwa secara terprogram
Untuk mendapatkan detail tentang riwayat refresh untuk tampilan terwujud, atau detail saat refresh terjadi, Anda dapat mengkueri log peristiwa secara terprogram.
Sebagai pemilik alur, Anda bisa membuat tampilan untuk memungkinkan orang lain mengkueri log peristiwa untuk alur Anda. Kueri berikut membuat tampilan yang bisa digunakan orang lain untuk mengkueri log peristiwa. Kueri ini menggunakan TABLE fungsi nilai untuk mengkueri tabel log peristiwa yang benar.
CREATE VIEW my_event_log_view AS
SELECT *
FROM event_log(TABLE(<catalog_name>.<schema_name>.<mv_name>));
Untuk mengkueri tampilan log peristiwa, gunakan kueri seperti berikut ini.
SELECT *
FROM my_event_log_view
WHERE event_type = "update_progress"
ORDER BY timestamp desc;
Untuk mengkueri catatan peristiwa secara langsung sebagai pemilik pipeline, Anda tidak perlu membuat tampilan. Anda bisa menggunakan TABLE fungsi nilai dan mengkueri data secara langsung, seperti kueri sampel berikut.
SELECT *
FROM event_log(TABLE(<catalog_name>.<schema_name>.<mv_name>))
WHERE event_type = "update_progress"
ORDER BY timestamp desc;
Untuk daftar lengkap kueri sampel menggunakan log peristiwa, lihat Contoh kueri dasar.
Memantau pelaksanaan tampilan materialisasi
Anda dapat memantau jalannya alur di seluruh ruang kerja Anda, menggunakan halaman Pekerjaan & Alur, halaman Riwayat Kueri, atau secara terprogram melalui kueri log peristiwa.
Melihat semua eksekusi tampilan materialisasi di UI
Jika Anda menggunakan halaman Pekerjaan & Alur untuk memantau status berbagai pekerjaan orkestrasi di ruang kerja Anda, Anda juga dapat melacak semua tampilan materialisasi dan tabel streaming yang dibuat di situ. Setiap tampilan materialisasi yang dibuat di Databricks SQL memiliki alur yang mendukungnya. Untuk melihat semua tampilan materialisasi dan tabel streaming yang dapat Anda akses:
- Klik
Tombol Pekerjaan & Alur di sisi kiri ruang kerja Anda.
- Klik saklar Pipelines untuk memfilter tampilan Anda hanya pada pipelines.
- Klik tombol Jenis alur dan pilih MV/ST untuk memfilter hanya alur yang dibuat oleh Databricks SQL.
- Klik filter Dapat Diakses oleh saya , untuk menampilkan semua alur yang dapat Anda akses.
Anda akan dapat melihat semua tampilan materialisasi dan tabel streaming yang dibuat di seluruh organisasi Anda, termasuk tampilan ringkasan status eksekusi terbaru. Mengklik nama alur akan membuka halaman detail pemantauan alur untuk mendapatkan informasi selengkapnya. Untuk mempelajari selengkapnya tentang halaman detail pemantauan alur, lihat Memecahkan masalah refresh yang gagal.
Menampilkan eksekusi menggunakan riwayat kueri
Jika Anda lebih terbiasa dengan tab Riwayat Kueri , Anda juga bisa menggunakannya untuk menampilkan semua eksekusi sebelumnya dari semua kueri di mana Anda memiliki setidaknya CAN VIEW akses ke gudang SQL yang dijalankan. Anda bisa menggunakan halaman riwayat kueri untuk mengakses detail kueri dan profil kueri yang dapat membantu Anda mengidentifikasi kueri yang kinerjanya buruk dan kendala dalam alur yang digunakan untuk melakukan pembaruan tabel streaming Anda. Untuk gambaran umum jenis informasi yang tersedia untuk riwayat kueri dan profil kueri, lihat Riwayat kueri dan Profil kueri.
Penting
Fitur ini ada di Pratinjau Umum. Admin ruang kerja dapat mengontrol akses ke fitur ini dari halaman Pratinjau . Lihat Kelola Pratinjau Azure Databricks.
Semua pernyataan-pernyataan yang terkait dengan tampilan yang terwujud muncul dalam riwayat kueri. Anda dapat menggunakan filter drop-down Pernyataan untuk memilih perintah apa pun dan memeriksa kueri terkait. Semua CREATE pernyataan diikuti oleh REFRESH pernyataan yang dijalankan secara asinkron di dalam jalur pemrosesan. Pernyataan REFRESH biasanya mencakup rencana kueri terperinci yang memberikan wawasan tentang mengoptimalkan performa.
Untuk mengakses REFRESH pernyataan di antarmuka pengguna riwayat kueri, gunakan langkah-langkah berikut:
- Klik
Riwayat Kueri di bilah sisi kiri.
- Pilih kotak centang REFRESH dari filter dropdown Pernyataan.
- Klik nama pernyataan kueri untuk menampilkan detail ringkasan seperti durasi kueri dan metrik agregat.
- Klik Lihat profil kueri untuk membuka profil kueri. Untuk detail tentang menavigasi profil kueri, lihat Profil kueri.
- Secara opsional, gunakan tautan di bagian Sumber Kueri untuk membuka kueri atau alur terkait.
Lihat CREATE MATERIALIZED VIEW.
Memecahkan masalah refresh yang gagal
Anda dapat menemukan pembaruan yang gagal untuk tampilan terwujud (atau tabel streaming) dengan melihat daftar Pekerjaan & Alur. Untuk memecahkan masalah pembaruan yang gagal, gunakan halaman detail pemantauan alur atau log peristiwa.
Untuk mengatasi masalah refresh penuh ketika Anda yakin seharusnya bertahap, pertama-tama periksa apakah Anda mengaktifkan pelacakan baris untuk tabel Delta sumber mana pun. Untuk informasi lebih lanjut tentang refresh inkremental, lihat Dukungan untuk tampilan materialisasi refresh inkremental.
Anda bisa mendapatkan detail tambahan dari halaman pemantauan alur, atau dengan mengkueri log peristiwa secara terprogram.
Menggunakan halaman pemantauan alur
Untuk mendapatkan detail selengkapnya tentang tampilan materialisasi (atau tabel streaming) yang gagal, Anda dapat menggunakan halaman pemantauan alur untuk men-debug masalah. Setiap tampilan materialisasi memiliki alur yang mendukungnya. Halaman pemantauan alur mencakup informasi, seperti:
- Status eksekusi terakhir dan riwayat eksekusi.
- Durasi eksekusi terakhir.
- Apakah tampilan materialisasi sepenuhnya atau disegarkan secara bertahap. Untuk detail selengkapnya tentang cara membuat tampilan materialisasi Anda di-refresh secara bertahap, lihat Dukungan untuk refresh bertahap tampilan materialisasi.
- Log peristiwa untuk debugging yang lebih rinci. Jika tampilan materialisasi Anda gagal diperbarui atau memiliki masalah lain, klik panel masalah untuk melihat log secara lebih rinci.
Untuk memecahkan masalah tampilan materialisasi Anda:
- Di ruang kerja Anda, klik
Tombol Pekerjaan & Alur di bilah navigasi kiri.
- Klik nama alur Anda dalam daftar.
- Jika pembaruan gagal dijalankan, UI menampilkan kesalahan (atau daftar kesalahan) di panel bawah.
- Klik tombol untuk Melihat Log atau klik panel masalah untuk melihat kesalahan secara lebih rinci.
- Ini membuka UI log kejadian. Setiap kesalahan memiliki pesan dan ringkasan tingkat tinggi, serta tab JSON dengan detail lebih lanjut. Untuk memperbaiki masalah dengan Asisten Databricks, klik Diagnosis Kesalahan.
Untuk detail selengkapnya tentang halaman pemantauan alur, lihat di sini.
Mengkueri riwayat refresh untuk tampilan materialisasi
Log peristiwa dapat berguna untuk menyiapkan dasbor untuk memantau status pembaruan atau durasi di seluruh ruang kerja, atau jika Anda lebih suka pemantauan terprogram daripada menggunakan UI. Tampilan materialisasi yang dibuat dengan Databricks SQL tidak mendukung penyimpanan log peristiwa ke metastore, sehingga hanya pemilik tampilan materialisasi yang dapat mengkueri log peristiwa secara langsung.
Untuk melihat status operasional REFRESH pada tampilan materialisasi, termasuk refresh saat ini dan sebelumnya, kueri log peristiwa pipeline:
SELECT *
FROM event_log(TABLE(<fully-qualified-table-name>))
WHERE event_type = "update_progress"
ORDER BY timestamp desc;
Ganti <fully-qualified-table-name> dengan nama tampilan materialisasi yang berkualifikasi lengkap, termasuk katalog dan skema. Jika Anda bukan pemilik alur, Anda mungkin harus terlebih dahulu membuat tampilan untuk mengkueri log peristiwa. Lihat Mengkueri log peristiwa secara terprogram.
Mengkueri jenis refresh yang terjadi untuk tampilan materialisasi
Beberapa kueri dapat disegarkan secara berkala. Jika refresh inkremental tidak dapat dilakukan, refresh penuh dilakukan sebagai gantinya.
Untuk melihat jenis refresh untuk tampilan termaterialisasi, kueri log peristiwa.
SELECT timestamp, message
FROM event_log(TABLE(my_catalog.my_schema.sales))
WHERE event_type = 'planning_information'
ORDER BY timestamp desc;
Contoh output untuk perintah ini:
-
- stempel waktu
- message
-
2025-03-21T22:23:16.497+00:00Flow 'sales' has been planned in :re[LDP] to be executed as ROW_BASED.
Alokasikan biaya ke Gudang Data SQL dengan tag khusus
Tag tidak ditambahkan secara otomatis ke rekaman penagihan, tetapi Anda bisa menggabungkannya secara manual ke informasi penagihan Anda dalam kueri.
Setelah Anda menambahkan tag ke setiap tampilan materialisasi (atau tabel streaming) dengan Catalog Explorer, Anda dapat memantau biaya tampilan materialisasi dengan menggabungkan tabel sistem table_tags dan billing. Ini adalah kueri sampel untuk mengambil rekaman tagihan dari semua tampilan materialisasi dan tabel streaming yang dibuat dengan Databricks SQL, serta menambahkan tag di tingkat tabel.
SELECT
u.*,
tag_info.tags
FROM
system.billing.usage u
LEFT JOIN (
SELECT
t.catalog_name,
t.schema_name,
t.table_name,
collect_list(named_struct('tag_name', t.tag_name, 'tag_value', t.tag_value)) AS tags
FROM
main.information_schema.table_tags t
GROUP BY
t.catalog_name,
t.schema_name,
t.table_name
) tag_info
ON tag_info.catalog_name = u.usage_metadata.uc_table_catalog
AND tag_info.schema_name = u.usage_metadata.uc_table_schema
AND tag_info.table_name = u.usage_metadata.uc_table_name
WHERE usage_metadata.uc_table_name is not null;
Anda dapat menggunakan ide yang sama ini untuk menggabungkan tag kolom dari tabel column_tags sebagai gantinya.