Menggunakan kumpulan penjadwal untuk beberapa beban kerja streaming
Untuk mengaktifkan beberapa kueri streaming untuk menjalankan pekerjaan secara bersamaan pada kluster bersama, Anda dapat mengonfigurasi kueri untuk dijalankan di kumpulan penjadwal terpisah.
Bagaimana cara kerja kumpulan penjadwal?
Secara default, semua kueri dimulai di notebook yang dijalankan di kumpulan penjadwalan adil yang sama. Pekerjaan yang dihasilkan oleh pemicu dari semua kueri streaming dalam buku catatan berjalan satu demi satu dalam urutan masuk pertama, pertama keluar (FIFO). Hal ini dapat menyebabkan penundaan yang tidak perlu dalam kueri, karena kueri-kueri ini tidak membagikan sumber daya kluster secara efisien.
Kumpulan penjadwal memungkinkan Anda mendeklarasikan kueri Streaming Terstruktur mana yang berbagi sumber daya komputasi.
Contoh berikut menetapkan query1
ke kumpulan khusus, sementara query2
dan query3
berbagi kumpulan penjadwal.
# Run streaming query1 in scheduler pool1
spark.sparkContext.setLocalProperty("spark.scheduler.pool", "pool1")
df.writeStream.queryName("query1").format("delta").start(path1)
# Run streaming query2 in scheduler pool2
spark.sparkContext.setLocalProperty("spark.scheduler.pool", "pool2")
df.writeStream.queryName("query2").format("delta").start(path2)
# Run streaming query3 in scheduler pool2
spark.sparkContext.setLocalProperty("spark.scheduler.pool", "pool2")
df.writeStream.queryName("query3").format("delta").start(path3)
Catatan
Konfigurasi properti lokal harus berada di sel buku catatan yang sama tempat Anda memulai kueri streaming.
Lihat dokumentasi penjadwal adil Apache untuk detail lebih lanjut.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk