Bagikan melalui


Menjalankan pembaruan pada alur DLT

Artikel ini menjelaskan pembaruan alur dan memberikan detail tentang cara memicu pembaruan.

Apa itu pembaruan alur kerja?

Setelah Anda membuat alur dan siap untuk menjalankannya, Anda memulai pembaruan . Pembaruan alur kerja menyediakan hal-hal berikut:

  • Memulai kluster dengan konfigurasi yang benar.
  • Menemukan semua tabel dan tampilan yang ditentukan dan memeriksa kesalahan analisis apa pun seperti nama kolom yang tidak valid, dependensi yang hilang, dan kesalahan sintaksis.
  • Membuat atau memperbarui tabel dan tampilan dengan data terbaru yang tersedia.

Dengan menggunakan untuk memvalidasi pembaruan, Anda bisa memeriksa masalah dalam kode sumber pipeline tanpa harus menunggu tabel dibuat atau diperbarui. Fitur ini berguna saat mengembangkan atau menguji alur karena memungkinkan Anda dengan cepat menemukan dan memperbaiki kesalahan dalam alur Anda, seperti nama tabel atau kolom yang salah.

Bagaimana pembaruan alur dipicu?

Gunakan salah satu opsi berikut untuk memulai pembaruan alur:

Perbarui pemicu Rincian
Panduan Anda dapat memicu pembaruan pipa data secara manual dari antarmuka pengguna pipa data, daftar pipa data, atau catatan (notebook) yang dilampirkan ke pipa data. Lihat Memicu secara manual pembaruan alur kerja dan Mengembangkan dan men-debug pipeline DLT di notebook.
Dijadwalkan Anda dapat menjadwalkan pembaruan untuk alur menggunakan tugas. Lihat alur kerja DLT untuk pekerjaan.
Programatik Anda dapat memicu pembaruan secara terprogram menggunakan alat, API, dan CLIs pihak ketiga. Lihat Menjalankan alur DLT dalam alur kerja dan Pipeline API.

Memicu pembaruan pipelin secara manual

Gunakan salah satu opsi berikut untuk memicu pembaruan alur secara manual:

  • Klik tombol Ikon Mulai DLT pada halaman detail alur.
  • Dari daftar alur, klik Ikon Panah Kanan di kolom Tindakan.

Nota

Perilaku default untuk pembaruan alur yang dipicu secara manual adalah me-refresh semua himpunan data yang ditentukan dalam alur.

Semantik pembaruan jalur

Tabel berikut ini menjelaskan perilaku untuk tampilan materialisasi dan tabel streaming untuk refresh default dan refresh penuh:

Jenis pembaruan Semantik tampilan materialisasi Semantik tabel streaming
Refresh (default) Memperbarui hasil untuk mencerminkan hasil saat ini untuk kueri yang menentukan. Memproses rekaman baru melalui logika yang ditentukan dalam tabel dan alur streaming.
Refresh penuh Memperbarui hasil untuk mencerminkan hasil saat ini untuk kueri yang mendefinisikan. Menghapus data dari tabel streaming, menghapus informasi status (titik pemeriksaan) dari alur, dan memproses ulang semua rekaman dari sumber data.

Secara default, semua tampilan materialisasi dan tabel streaming dalam refresh alur dengan setiap pembaruan. Anda dapat secara opsional menghilangkan tabel dari pembaruan menggunakan fitur berikut:

Kedua fitur ini mendukung semantik refresh default atau refresh penuh. Anda dapat secara opsional menggunakan dialog Pilih tabel untuk refresh untuk mengecualikan tabel tambahan saat menjalankan refresh untuk tabel yang gagal.

Haruskah saya menggunakan refresh penuh?

Databricks merekomendasikan untuk menjalankan refresh penuh hanya jika diperlukan. Refresh penuh selalu memproses ulang semua rekaman dari sumber data yang ditentukan melalui logika yang menentukan himpunan data. Waktu dan sumber daya untuk menyelesaikan refresh penuh berkorelasi dengan ukuran data sumber.

Tampilan materialisasi mengembalikan hasil yang sama apakah digunakan refresh default atau penuh. Menggunakan penyegaran penuh dengan tabel streaming akan mengatur ulang semua pemrosesan status dan informasi titik pemeriksaan, dan dapat mengakibatkan catatan yang hilang jika data input tidak lagi tersedia.

Databricks hanya merekomendasikan refresh penuh ketika sumber data input berisi data yang diperlukan untuk membuat ulang status tabel atau tampilan yang diinginkan. Pertimbangkan skenario berikut di mana data sumber input tidak lagi tersedia dan hasil menjalankan refresh penuh:

Sumber data Alasan data input tidak ada Hasil pembaruan penuh
Kafka Ambang retensi pendek Rekaman yang tidak lagi ada di sumber Kafka dihapus dari tabel target.
Berkas dalam penyimpanan objek Kebijakan siklus hidup File data tidak lagi ada di direktori sumber dihilangkan dari tabel target.
Rekaman dalam tabel Dihapus demi kepatuhan Hanya rekaman yang ada dalam tabel sumber yang diproses.

Untuk mencegah refresh penuh dijalankan pada tabel atau tampilan, atur properti tabel pipelines.reset.allowed ke false. Lihat properti DLT tabel . Anda juga dapat menggunakan alur tambahan untuk menambahkan data ke tabel streaming yang ada tanpa memerlukan refresh penuh.

Memulai pembaruan alur untuk tabel yang dipilih

Anda dapat secara opsional memproses ulang data hanya untuk tabel yang dipilih di alur Anda. Misalnya, selama pengembangan, Anda hanya mengubah satu tabel dan ingin mengurangi waktu pengujian, atau pembaruan alur gagal dan Anda hanya ingin me-refresh tabel gagal.

Nota

Anda dapat menggunakan refresh selektif hanya dengan alur yang dipicu.

Untuk memulai pembaruan yang menyegarkan tabel yang dipilih saja, pada halaman detail Alur :

  1. Klik Pilih tabel untuk refresh. Dialog Pilih tabel untuk refresh muncul.

    Jika Anda tidak melihat tombol Pilih tabel untuk refresh, pastikan bahwa halaman detail Alur menampilkan pembaruan terbaru dan bahwa pembaruan sudah selesai. Jika DAG tidak ditampilkan untuk pembaruan terbaru, misalnya, karena pembaruan gagal, Pilih tabel untuk tombol refresh tidak ditampilkan.

  2. Untuk memilih tabel yang akan di-refresh, klik setiap tabel. Tabel terpilih disorot dan diberi label. Untuk menghapus tabel dari pembaruan, klik tabel lagi.

  3. Klik Segarkan seleksi.

    Nota

    Tombol pilihan Refresh menampilkan jumlah tabel terpilih dalam tanda kurung.

Untuk memproses ulang data yang sudah diserap untuk tabel yang dipilih, klik Caret Biru Ke Bawah di samping tombol Pilihan Refresh dan klik Pilihan Refresh Penuh.

Memulai pembaruan alur untuk tabel yang gagal

Jika pembaruan alur gagal karena kesalahan dalam satu atau beberapa tabel dalam grafik alur, Anda dapat memulai pembaruan hanya tabel yang gagal dan dependensi hilir apa pun.

Nota

Tabel yang dikecualikan tidak diperbarui, meskipun bergantung pada tabel yang mengalami kegagalan.

Untuk memperbarui tabel yang gagal, pada halaman detail Alur, klik Refresh tabel yang gagal.

Untuk memperbarui tabel gagal yang dipilih saja:

  1. Klik tombol Bawah di samping tombol Refresh tabel yang gagal dan klik Pilih tabel untuk refresh. Dialog Pilih tabel untuk refresh muncul.

  2. Untuk memilih tabel yang akan di-refresh, klik setiap tabel. Tabel terpilih disorot dan diberi label. Untuk menghapus tabel dari pembaruan, klik tabel lagi.

  3. Klik pilihan Refresh .

    Nota

    Tombol pilihan Refresh menampilkan jumlah tabel terpilih dalam tanda kurung.

Untuk memproses ulang data yang sudah diserap untuk tabel yang dipilih, klik Caret Biru ke Bawah di samping tombol Pilih Refresh dan klik Pilihan Refresh Penuh.

Periksa alur untuk kesalahan tanpa menunggu tabel diperbarui

Penting

Fitur pembaruan DLT Validate ada di Public Preview .

Untuk memeriksa apakah kode sumber alur valid tanpa menjalankan pembaruan penuh, gunakan Validasi. Pembaruan Validate menyelesaikan definisi dari himpunan data dan alur yang ditentukan dalam pipeline tetapi tidak mematerialkan atau menerbitkan himpunan data. Kesalahan yang ditemukan selama validasi, seperti nama tabel atau kolom yang salah, dilaporkan di UI.

Untuk menjalankan pembaruan Validate, klik Blue Down Caret pada halaman detail alur di samping Mulai dan klik Validasi.

Setelah pembaruan Validate selesai, log peristiwa menunjukkan peristiwa yang hanya terkait dengan pembaruan Validate, dan tidak ada metrik yang ditampilkan di DAG. Jika kesalahan ditemukan, detail tersedia di log peristiwa.

Anda hanya dapat melihat hasil untuk pembaruan Validate terbaru. Jika pembaruan Validate adalah pembaruan yang terakhir dijalankan, Anda dapat melihat hasilnya dengan memilihnya di riwayat pembaruan . Jika pembaruan lain dijalankan setelah pembaruan Validate, hasilnya tidak lagi tersedia di UI.

mode Pengembangan dan produksi

Anda dapat mengoptimalkan eksekusi alur dengan beralih antara mode pengembangan dan produksi. Gunakan tombol DLT Environment Toggle Icon di antarmuka pengguna Pipelines untuk beralih di antara kedua mode ini. Secara bawaan, pipeline berjalan dalam mode pengembangan.

Saat Anda menjalankan alur dalam mode pengembangan, sistem DLT melakukan hal berikut:

  • Menggunakan kembali kluster untuk menghindari beban restart. Secara default, kluster berjalan selama dua jam saat mode pengembangan diaktifkan. Anda dapat mengubahnya dengan pengaturan pipelines.clusterShutdown.delay di Konfigurasi komputasi untuk pipeline DLT.
  • Menonaktifkan percobaan ulang alur sehingga Anda dapat segera mendeteksi dan memperbaiki kesalahan.

Dalam mode produksi, sistem DLT melakukan hal berikut:

  • Memulai ulang kluster untuk kesalahan tertentu yang dapat dipulihkan, termasuk kebocoran memori dan kredensial kedaluarsa.
  • Coba lagi eksekusi jika terjadi kesalahan tertentu, seperti kegagalan untuk memulai kluster.

Nota

Beralih antara mode pengembangan dan produksi hanya mengontrol perilaku eksekusi kluster dan alur. Lokasi penyimpanan dan skema target dalam katalog untuk tabel penerbitan harus dikonfigurasi sebagai bagian dari pengaturan alur dan tidak terpengaruh saat beralih antar mode.