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.
Anda dapat secara manual me-refresh tampilan terwujud mandiri atau tabel streaming saat Anda tahu bahwa tabel sumber telah diperbarui. Namun, Anda juga dapat mengatur jadwal untuk refresh, baik menurut waktu, saat tabel sumber diperbarui, atau melalui orkestrasi.
Anda juga dapat membuat pemberitahuan dan mengatur mode performa untuk refresh terjadwal Anda.
Membuat jadwal
Anda dapat mengonfigurasi pipeline mandiri agar diperbarui secara otomatis berdasarkan jadwal yang ditentukan, atau dipicu saat data upstream berubah. Tabel berikut ini memperlihatkan opsi berbeda untuk menjadwalkan refresh.
| Metode | Description | Contoh kasus penggunaan |
|---|---|---|
| Manual | Refresh sesuai permintaan menggunakan pernyataan SQL REFRESH , atau melalui UI ruang kerja. |
Pengembangan, pengujian, pembaruan ad-hoc. |
TRIGGER ON UPDATE |
Jadwalkan alur untuk menyegarkan secara otomatis saat data hulu berubah. | Beban kerja produksi dengan SLA kesegaran data atau periode refresh yang tidak dapat diprediksi. |
SCHEDULE |
Jadwalkan alur untuk di-refresh pada interval waktu yang ditentukan. | Persyaratan refresh berbasis waktu yang dapat diprediksi. |
| Tugas SQL dalam pekerjaan | Refresh diorkestrasi melalui Pekerjaan Lakeflow. | Alur kompleks dengan dependensi lintas sistem. |
Bahkan ketika Anda menjadwalkan refresh, Anda dapat menjalankan refresh manual kapan saja jika Anda memerlukan data yang diperbarui.
Pembaruan manual
Untuk me-refresh alur secara manual, Anda dapat memanggil refresh dari Databricks SQL, atau menggunakan UI ruang kerja.
REFRESH pernyataan
Untuk me-refresh alur menggunakan Databricks SQL:
Di
Editor SQL, jalankan pernyataan berikut:
REFRESH MATERIALIZED VIEW <table-name>;Untuk tabel streaming, gunakan
REFRESH STREAMING TABLE.
Untuk informasi selengkapnya, lihat REFRESH (MATERIALIZED VIEW atau STREAMING TABLE).
Antarmuka Pengguna Ruang Kerja
Untuk memperbarui pipeline di antarmuka pengguna ruang kerja:
- Di ruang kerja Azure Databricks, klik
ikon Alur Kerja. Pekerjaan & Pipeline . - Pilih alur yang ingin Anda refresh dari daftar.
- Klik tombol Mulai.
Saat alur di-refresh, Anda akan melihat pembaruan di UI.
Pemicu pada pembaruan
Klausa TRIGGER ON UPDATE secara otomatis memperbarui jalur saat data sumber di hulu berubah. Ini menghilangkan kebutuhan untuk mengoordinasikan jadwal di seluruh alur. Himpunan data tetap segar tanpa mengharuskan pengguna mengetahui kapan pekerjaan upstream selesai atau mempertahankan logika penjadwalan yang kompleks.
Ini adalah pendekatan yang direkomendasikan untuk beban kerja produksi, terutama ketika dependensi upstream tidak berjalan pada jadwal yang dapat diprediksi. Setelah mengonfigurasi pemicu pada pembaruan, alur memantau tabel sumbernya dan me-refresh secara otomatis saat perubahan di salah satu sumber hulu terdeteksi.
Limitations
- Batas dependensi upstream: Pipeline dapat memantau maksimum 10 tabel hulu dan 30 tampilan hulu. Untuk dependensi lainnya, pisahkan logika di beberapa alur.
- Batas ruang kerja: Maksimal 1.000 alur dengan
TRIGGER ON UPDATEdapat ada per ruang kerja. Hubungi dukungan Databricks jika diperlukan lebih dari 1.000. - Interval minimum: Interval pemicu minimum adalah 1 menit.
Contoh berikut menunjukkan cara mengatur pemicu pada pembaruan saat menentukan alur.
Membuat alur dengan pemicu pada pembaruan
Untuk membuat alur yang di-refresh secara otomatis saat data sumber berubah, sertakan TRIGGER ON UPDATE klausa dalam CREATE pernyataan.
Contoh berikut membuat tabel streaming yang membaca pesanan pelanggan dan me-refresh setiap kali tabel sumber orders diperbarui:
CREATE OR REFRESH STREAMING TABLE catalog.schema.customer_orders
TRIGGER ON UPDATE
AS SELECT
o.customer_id,
o.name,
o.order_id
FROM catalog.schema.orders o;
Pembatasan frekuensi refresh
Jika data upstream sering di-refresh, gunakan AT MOST EVERY untuk membatasi seberapa sering tampilan di-refresh dan membatasi biaya komputasi. Ini berguna ketika tabel sumber sering diperbarui tetapi konsumen hilir tidak memerlukan data real time. Kata kunci INTERVAL harus ada sebelum nilai waktu.
Contoh berikut membatasi tabel streaming untuk di-refresh paling lama setiap 5 menit, bahkan jika data sumber lebih sering berubah:
CREATE OR REFRESH STREAMING TABLE catalog.schema.customer_orders
TRIGGER ON UPDATE AT MOST EVERY INTERVAL 5 MINUTES
AS SELECT
o.customer_id,
o.name,
o.order_id
FROM catalog.schema.orders o;
Refresh terjadwal
Jadwal refresh dapat ditentukan langsung dalam definisi alur untuk menyegarkan tampilan pada interval waktu tetap. Pendekatan ini berguna ketika irama pembaruan data diketahui dan waktu refresh yang dapat diprediksi diinginkan.
Ketika ada jadwal refresh, Anda masih dapat menjalankan refresh manual kapan saja jika Anda ingin memperbarui data.
Databricks mendukung dua sintaks penjadwalan: SCHEDULE EVERY untuk interval sederhana dan SCHEDULE CRON untuk penjadwalan yang tepat. Kata kunci SCHEDULE dan SCHEDULE REFRESH setara secara semantik.
Untuk detail tentang sintaksis dan penggunaan SCHEDULE klausa, lihat CREATE STREAMING TABLE klausa SCHEDULE, atau CREATE MATERIALIZED VIEW klausa SCHEDULE.
Saat jadwal dibuat, pekerjaan baru di Databricks secara otomatis ditetapkan untuk memproses pembaruan.
Untuk melihat jadwal, lakukan salah satu hal berikut ini:
- Jalankan
DESCRIBE EXTENDEDpernyataan dari editor SQL di antarmuka pengguna Azure Databricks. Lihat DESCRIBE TABLE. - Gunakan Catalog Explorer untuk melihat himpunan data. Jadwal tercantum di tab Gambaran Umum, di bawah Refresh status. Lihat Apa itu Catalog Explorer?.
Contoh berikut menunjukkan cara membuat tampilan materialisasi dengan jadwal:
Jadwalkan setiap interval waktu
Contoh ini menjadwalkan refresh setiap jam. Klausa EVERY mendukung interval jam, hari, dan minggu. Untuk interval sub-jam, gunakan SCHEDULE CRON sebagai gantinya.
CREATE OR REPLACE MATERIALIZED VIEW catalog.schema.hourly_metrics
SCHEDULE EVERY 1 HOUR
AS SELECT
date_trunc('hour', event_time) AS hour,
count(*) AS events
FROM catalog.schema.raw_events
GROUP BY 1;
Jadwalkan menggunakan cron
Contoh ini menjadwalkan refresh setiap 15 menit, pada seperempat jam zona waktu UTC:
CREATE OR REPLACE MATERIALIZED VIEW catalog.schema.regular_metrics
SCHEDULE CRON '0 */15 * * * ?' AT TIME ZONE 'UTC'
AS SELECT
date_trunc('minute', event_time) AS minute,
count(*) AS events
FROM catalog.schema.raw_events
WHERE event_time > current_timestamp() - INTERVAL 1 HOUR
GROUP BY 1;
Tugas SQL dalam pekerjaan
Penyegaran pipeline dapat diorkestrasi melalui Pekerjaan Lakeflow dengan membuat tugas SQL yang termasuk perintah REFRESH. Pendekatan ini mengintegrasikan pengkinian pipeline ke dalam orkestrasi yang ada menggunakan tugas.
Ada dua cara untuk membuat pekerjaan guna memperbarui tabel streaming.
-
Dari Editor SQL: Tulis
REFRESHperintah dan klik tombol Jadwalkan untuk membuat pekerjaan langsung dari kueri. -
Dari antarmuka pengguna Pekerjaan: Buat pekerjaan baru, tambahkan jenis tugas SQL, dan lampirkan Kueri SQL atau buku catatan dengan
REFRESHperintah .
Contoh berikut menunjukkan pernyataan SQL dalam tugas SQL yang me-refresh tabel streaming:
REFRESH STREAMING TABLE catalog.schema.sales;
Note
Untuk tampilan materialisasi mandiri dan tabel streaming, mengatur pembaruan melalui pekerjaan tidak membuatnya terus-menerus. Setiap eksekusi pekerjaan melakukan satu penyegaran yang dipicu. Eksekusi berkelanjutan melalui sebuah job hanya berlaku untuk pipeline Lakeflow. Lihat Jalankan pipeline kontinu dengan pekerjaan kontinu.
Pendekatan ini sesuai ketika:
- Alur multi-langkah yang kompleks memiliki dependensi di seluruh sistem.
- Integrasi dengan orkestrasi pekerjaan yang ada diperlukan.
- Pemberitahuan dan pemantauan tingkat pekerjaan diperlukan.
Tugas SQL memanfaatkan gudang SQL yang terkait dengan pekerjaan dan komputasi tanpa server yang melaksanakan penyegaran. Jika menggunakan penjadwalan berbasis definisi tabel streaming memenuhi persyaratan, beralih ke TRIGGER ON UPDATE atau SCHEDULE dapat menyederhanakan alur kerja.
Menambahkan jadwal ke alur yang sudah ada
Untuk mengatur jadwal setelah pembuatan, gunakan pernyataan ALTER STREAMING TABLE atau ALTER MATERIALIZED VIEW. Contohnya:
-- Alters the schedule to refresh the streaming table when its upstream
-- data gets updated.
ALTER STREAMING TABLE sales
ADD TRIGGER ON UPDATE;
Mengubah jadwal atau pemicu yang ada
Jika alur sudah memiliki jadwal atau pemicu yang terkait, gunakan ALTER SCHEDULE atau ALTER TRIGGER ON UPDATE untuk mengubah konfigurasi refresh. Ini berlaku baik ketika mengubah dari satu jadwal ke jadwal lainnya, dari satu pemicu ke pemicu lainnya, atau ketika beralih antara jadwal dan pemicu.
Contoh berikut mengubah jadwal yang ada untuk di-refresh setiap 5 menit. Karena klausa EVERY tidak mendukung interval menit, gunakan ekspresi CRON untuk jadwal dengan interval kurang dari satu jam:
ALTER STREAMING TABLE catalog.schema.my_table
ALTER SCHEDULE CRON '0 */5 * * * ?';
Menghilangkan jadwal atau pemicu
Untuk menghapus jadwal, gunakan ALTER ... DROP:
ALTER STREAMING TABLE catalog.schema.my_table
DROP SCHEDULE;
Pantau status pembaruan
Anda dapat melihat status refresh dengan melihat pipeline di UI Pipeline atau dengan melihat Informasi Refresh yang dikembalikan oleh perintah DESCRIBE EXTENDED untuk himpunan data.
DESCRIBE TABLE EXTENDED <table-name>;
Secara bergantian, Anda dapat melihat himpunan data di Catalog Explorer dan melihat status refresh di sana:
- Klik
Katalog di bilah samping.
- Di pohon Catalog Explorer di sebelah kiri, buka katalog dan pilih skema tempat himpunan data Anda berada.
- Buka item Tabel di bawah skema yang Anda pilih, dan klik tabel streaming atau tampilan materialisasi.
Dari sini, Anda dapat menggunakan tab di bawah nama himpunan data untuk melihat dan mengedit informasi tentang himpunan data, termasuk:
- Memperbarui status dan riwayat
- Skema tabel
- Data sampel (membutuhkan komputasi yang aktif)
- Permissions
- Silsilah data, termasuk tabel dan alur lain yang bergantung pada himpunan data ini
- Wawasan tentang penggunaan
- Monitor yang telah Anda buat untuk himpunan data ini
Menghentikan refresh aktif
Untuk menghentikan refresh aktif di antarmuka pengguna Azure Databricks, di halaman Detail alur klik Hentikan untuk menghentikan pembaruan alur. Anda juga dapat menghentikan refresh dengan Databricks CLI atau OPERASI POST /api/2.0/pipelines/{pipeline_id}/stop di Pipelines REST API.
Menampilkan riwayat eksekusi untuk refresh terjadwal
Jika Anda membuka himpunan data di Catalog Explorer, panel detail di sisi kanan ruang kerja memperlihatkan jadwal Refresh. Mengklik jadwal (misalnya, tautan Setiap 1 jam) akan membawa Anda ke halaman pekerjaan untuk pekerjaan (dikelola sistem) yang menjalankan jadwal. Anda dapat melihat riwayat eksekusi, termasuk grafik 48 jam terakhir eksekusi, termasuk keberhasilan atau kegagalan dan waktu yang diperlukan. Anda dapat mengklik sebuah jalankan spesifik untuk mendapatkan detail selengkapnya.
Anda tidak dapat mengedit pekerjaan terkelola sistem ini. Untuk membuat perubahan pada jadwal, edit definisi alur dengan CREATE OR REFRESH atau dengan ALTER. Lihat Mengubah jadwal atau pemicu yang sudah ada.
Tenggang waktu untuk pembaharuan
Refresh alur dijalankan dengan batas waktu yang membatasi berapa lama mereka dapat berjalan. Untuk pipeline mandiri yang dibuat atau diperbarui pada atau setelah 14 Agustus 2025, nilai batas waktu dicatat saat Anda memperbarui dengan menjalankan CREATE OR REFRESH:
- Jika
STATEMENT_TIMEOUTdiatur, nilai tersebut digunakan. Lihat STATEMENT_TIMEOUT. - Jika tidak, batas waktu dari gudang SQL yang digunakan untuk menjalankan perintah digunakan. Lihat Batas waktu pernyataan.
- Jika gudang tidak memiliki batas waktu yang dikonfigurasi, default 2 hari akan berlaku.
Batas waktu digunakan pada pembuatan awal, namun juga pada pembaruan terjadwal berikutnya.
Untuk tabel streaming yang terakhir diperbarui sebelum 14 Agustus 2025, batas waktu diatur ke 2 hari.
Contoh: Mengatur batas waktu untuk refresh Anda dapat secara eksplisit mengontrol berapa lama refresh diizinkan untuk dijalankan dengan mengatur batas waktu tingkat pernyataan saat membuat atau memperbarui himpunan data:
SET STATEMENT_TIMEOUT = 21600;
CREATE OR REFRESH MATERIALIZED VIEW my_catalog.my_schema.my_mv
SCHEDULE EVERY 12 HOURS
AS SELECT * FROM large_source_table;
Ini menyiapkan tampilan materialisasi yang akan di-refresh setiap 12 jam, dan jika refresh membutuhkan waktu lebih dari 6 jam, prosesnya berakhir dan menunggu refresh terjadwal berikutnya.
Cara refresh terjadwal menangani batas waktu
Batas waktu hanya disinkronkan saat Anda secara eksplisit menjalankan CREATE OR REFRESH.
- Refresh terjadwal tetap menggunakan batas waktu yang dicatat selama
CREATE OR REFRESH. - Mengubah batas waktu gudang saja tidak memengaruhi penyegaran terjadwal yang sudah ada.
Important
Setelah mengubah batas waktu gudang, jalankan CREATE OR REFRESH lagi untuk menerapkan batas waktu baru ke refresh terjadwal di masa mendatang.
Mendapatkan pemberitahuan untuk refresh terjadwal
Important
Pemberitahuan untuk fitur refresh terjadwal DDL ada di Beta. Admin ruang kerja dapat mengatur akses ke fitur ini dari halaman Pratinjau dengan memilih pratinjau 'Sistem yang Mengelola Pekerjaan untuk Tampilan Materialisasi dan Tabel Streaming'. Lihat Kelola Pratinjau Azure Databricks.
Saat membuat jadwal untuk alur, Anda dapat mengeditnya untuk mendapatkan pemberitahuan. Ada beberapa cara untuk menjadwalkan alur, dan mendapatkan pemberitahuan tergantung pada metode mana yang Anda pilih:
Dijadwalkan dengan tugas: Untuk mendapatkan notifikasi dari tugas SQL di Pekerjaan Lakeflow, edit tugas dan tambahkan notifikasi. Lihat Tugas SQL untuk pekerjaan tertentu.
Anda memiliki berbagai opsi agar pemberitahuan diterima, dan cara menerimanya. Lihat Menambahkan pemberitahuan pada pekerjaan
Dijadwalkan dengan
SCHEDULEklausul: Untuk mendapatkan pemberitahuan dari alur yang dijadwalkan olehSCHEDULEklausa dalam definisi SQL, edit di Catalog Explorer:Buka himpunan data di Catalog Explorer.
Pada tab Gambaran Umum , di bawah Jadwal refresh, klik
untuk mengedit jadwal yang ingin Anda terima pemberitahuannya.
Di bawah Opsi lainnya, tambahkan atau ubah pemberitahuan.
Anda memiliki opsi untuk mendapatkan pemberitahuan melalui email pada awal, keberhasilan, atau kegagalan refresh terjadwal. Secara default, pemilik hanya diberi tahu tentang kegagalan.
Email menyertakan tautan yang membawa Anda riwayat eksekusi untuk pekerjaan yang dikelola sistem yang mengatur jadwal Anda. Lihat Menampilkan riwayat eksekusi untuk refresh terjadwal.
Pilih mode performa untuk refresh terjadwal
Komputasi tanpa server yang digunakan oleh alur berjalan dalam mode Performa yang dioptimalkan saat dijalankan melalui UI.
Untuk alur yang dijadwalkan dalam definisi SQL, Anda dapat memilih mode performa komputasi tanpa server menggunakan pengaturan Performa yang dioptimalkan di Catalog Explorer. Ketika pengaturan ini dinonaktifkan (default), alur menggunakan mode performa standar. Mode performa standar dirancang untuk mengurangi biaya untuk beban kerja di mana latensi peluncuran yang sedikit lebih tinggi dapat diterima. Beban kerja tanpa server menggunakan mode performa standar biasanya dimulai dalam waktu empat hingga enam menit setelah dipicu, tergantung pada ketersediaan komputasi dan penjadwalan yang dioptimalkan.
Saat Performa yang dioptimalkan diaktifkan, alur Anda dioptimalkan untuk performa, menghasilkan startup dan eksekusi yang lebih cepat untuk beban kerja yang sensitif terhadap waktu.
Kedua mode menggunakan SKU yang sama, tetapi mode performa standar mengonsumsi lebih sedikit DBA, yang mencerminkan penggunaan komputasi yang lebih rendah.
Important
Memodifikasi mode performa untuk refresh terjadwal ada di Beta. Admin ruang kerja dapat mengatur akses ke fitur ini dari halaman Pratinjau dengan memilih pratinjau 'Sistem yang Mengelola Pekerjaan untuk Tampilan Materialisasi dan Tabel Streaming'. Lihat Kelola Pratinjau Azure Databricks.
Secara default, alur menggunakan mode yang dioptimalkan performa saat berjalan secara interaktif di UI, pengaturan Performa pekerjaan yang dioptimalkan saat dijadwalkan dengan tugas SQL, dan mode standar saat dijadwalkan. Untuk mengatur mode komputasi untuk pipeline yang dijadwalkan oleh klausul SCHEDULE dalam definisi, editlah penjadwalan di Catalog Explorer:
- Buka himpunan data di Catalog Explorer.
- Pada tab Gambaran Umum , di bawah Jadwal refresh, klik
untuk mengedit jadwal yang ingin Anda ubah.
- Periksa Performa yang dioptimalkan untuk menggunakan mode yang dioptimalkan performa pada refresh terjadwal di masa mendatang.