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.
Halaman ini membahas cara menggunakan autoscaling yang disempurnakan untuk mengoptimalkan alur Anda di Azure Databricks.
Penskalaan otomatis yang ditingkatkan diaktifkan secara default untuk semua pipeline baru. Jalur tanpa server juga menggunakan penyesuaian skala otomatis vertikal. Lihat Apa itu autoscaling vertikal?.
Untuk alur tanpa server, penskalaan otomatis yang ditingkatkan selalu aktif dan tidak dapat dinonaktifkan. Lihat Mengonfigurasi alur tanpa server.
Apa itu autoscaling yang ditingkatkan?
Penskalaan otomatis Databricks yang ditingkatkan mengoptimalkan pemanfaatan kluster dengan mengalokasikan sumber daya kluster secara otomatis berdasarkan volume beban kerja, dengan dampak minimal terhadap latensi pemrosesan data alur kerja Anda.
Peningkatan skala otomatis pada fungsionalitas autoscaling kluster Azure Databricks dengan fitur berikut:
- Peningkatan penskalaan otomatis mengimplementasikan pengoptimalan beban kerja streaming dan menambahkan peningkatan untuk meningkatkan performa beban kerja batch. Peningkatan skala otomatis mengoptimalkan biaya dengan menambahkan atau menghapus mesin saat beban kerja berubah.
- Peningkatan penskalaan otomatis secara proaktif mematikan simpul yang kurang digunakan sekaligus menjamin tidak ada tugas yang gagal selama pematian. Fitur autoscaling kluster yang ada mengurangi jumlah simpul hanya jika simpul tidak aktif.
Autoscaling yang ditingkatkan adalah mode autoscaling default saat Anda membuat alur baru di antarmuka pengguna alur. Anda dapat mengaktifkan penskalaan otomatis yang ditingkatkan untuk alur yang ada dengan mengedit pengaturan alur di UI. Anda juga dapat mengaktifkan autoscaling canggih saat membuat atau mengedit pipelines dengan pipelines REST API.
Metrik mana yang digunakan autoscaling yang ditingkatkan untuk membuat keputusan peningkatan atau penurunan skala?
Peningkatan skala otomatis menggunakan dua metrik untuk memutuskan peningkatan atau penurunan skala:
- Pemanfaatan slot Tugas: Ini adalah rasio rata-rata jumlah slot tugas sibuk ke total slot tugas yang tersedia di kluster.
- Ukuran antrean Tugas: Ini adalah jumlah tugas yang menunggu untuk dijalankan di slot tugas.
Mengaktifkan penskalaan otomatis yang ditingkatkan untuk alur
Autoscaling yang ditingkatkan adalah mode autoscaling default saat Anda membuat alur baru di antarmuka pengguna alur. Anda dapat mengaktifkan penskalaan otomatis yang ditingkatkan untuk alur yang ada dengan mengedit pengaturan alur di UI. Anda juga dapat mengaktifkan autoscaling yang disempurnakan saat mengedit alur dengan Editor Alur Lakeflow.
Untuk menggunakan penskalaan otomatis yang ditingkatkan, lakukan salah satu hal berikut ini:
- Atur mode Kluster ke Penskalakan otomatis yang ditingkatkan saat mengedit pengaturan alur di Editor Alur Lakeflow.
- Tambahkan pengaturan
autoscaleke konfigurasi kluster alur dan atur bidangmodekeENHANCED. Lihat Mengonfigurasi komputasi klasik untuk alur.
Gunakan panduan berikut saat mengonfigurasi penskalaan otomatis yang ditingkatkan untuk alur produksi:
- Biarkan pengaturan
Min workersdi default. - Atur pengaturan
Max workerske nilai berdasarkan anggaran dan prioritas alur kerja.
Contoh berikut mengonfigurasi kluster penskalaan otomatis yang ditingkatkan dengan minimal 5 pekerja dan maksimum 10 pekerja.
max_workers harus lebih besar dari atau sama dengan min_workers.
Nota
{
"clusters": [
{
"autoscale": {
"min_workers": 5,
"max_workers": 10,
"mode": "ENHANCED"
}
}
]
}
Jika alur dikonfigurasi untuk eksekusi berkelanjutan, alur akan dimulai ulang secara otomatis setelah konfigurasi penskalaan otomatis berubah. Setelah menghidupkan ulang, akan ada peningkatan latensi untuk waktu yang singkat. Setelah periode singkat peningkatan latensi ini, ukuran kluster harus diperbarui berdasarkan konfigurasi autoscale Anda, dan latensi alur harus kembali ke karakteristik latensi sebelumnya.
Batas biaya untuk alur yang menggunakan penskalaan otomatis yang lebih baik
Nota
Anda tidak dapat mengonfigurasi pekerja untuk alur tanpa server.
Mengatur parameter pekerja Max dalam alur panel Compute mengatur batas atas untuk penskalaan otomatis. Mengurangi jumlah pekerja yang tersedia dapat meningkatkan latensi untuk beberapa beban kerja tetapi mencegah biaya sumber daya pemrosesan melonjak selama operasi yang membutuhkan pemrosesan intensif.
Databricks merekomendasikan mengatur pengaturan Max pekerja untuk menyeimbangkan trade-off biaya-latensi sesuai kebutuhan khusus Anda.
Pemantauan alur klasik dengan autoscaling yang ditingkatkan diaktifkan
Anda dapat menggunakan log peristiwa di antarmuka pengguna alur untuk memantau metrik penskalaan otomatis yang ditingkatkan untuk alur klasik. Peristiwa autoscaling yang disempurnakan memiliki jenis peristiwa autoscale. Berikut ini adalah contoh peristiwa:
| Event | Message |
|---|---|
| Permintaan mengubah ukuran kluster dimulai | Scaling [up or down] to <y> executors from current cluster size of <x> |
| Permintaan mengubah ukuran kluster berhasil | Achieved cluster size <x> for cluster <cluster-id> with status SUCCEEDED |
| Permintaan pengurangan ukuran kluster berhasil sebagian | Achieved cluster size <x> for cluster <cluster-id> with status PARTIALLY_SUCCEEDED |
| Permintaan pengurangan ukuran kluster gagal | Achieved cluster size <x> for cluster <cluster-id> with status FAILED |
Anda juga dapat melihat peristiwa penskalakan otomatis yang disempurnakan dengan langsung mengkueri log peristiwa :
- Untuk mengkueri log peristiwa untuk metrik backlog, lihat Memantau backlog data untuk mengoptimalkan durasi streaming.
- Untuk memantau permintaan dan respons pengubahan ukuran kluster selama operasi penskalaan otomatis yang ditingkatkan, lihat Memantau peristiwa penskalaan otomatis untuk mengoptimalkan komputasi klasik.
Apa yang dimaksud dengan autoscaling vertikal?
Pipelines tanpa server melengkapi penskalaan otomatis horizontal yang disediakan oleh fitur penskalaan otomatis yang ditingkatkan dari Databricks dengan secara otomatis mengalokasikan tipe instans yang paling efisien biaya untuk memastikan alur Anda berjalan tanpa gagal karena kesalahan kurangnya memori. Skala otomatis vertikal meningkat ketika jenis instans yang lebih besar diperlukan untuk menjalankan pembaruan alur dan juga menurunkan skala ketika menentukan bahwa pembaruan dapat dijalankan dengan jenis instans yang lebih kecil. Autoscaling vertikal menentukan apakah simpul driver, simpul pekerja, atau kedua simpul driver dan pekerja harus ditingkatkan atau diturunkan skalanya.
Penskalaan otomatis vertikal digunakan untuk semua alur tanpa server, termasuk alur yang digunakan oleh tampilan materialisasi Databricks SQL dan tabel streaming.
Autoscaling vertikal bekerja dengan mendeteksi pembaruan pipeline yang gagal akibat kesalahan kehabisan memori. Penskalaan otomatis vertikal mengalokasikan tipe instans yang lebih besar ketika kegagalan ini terdeteksi berdasarkan data kehabisan memori yang dikumpulkan dari kegagalan pembaruan. Untuk pembaruan yang menggunakan perilaku coba lagi dan mulai ulang otomatis, pembaruan baru yang menggunakan sumber daya komputasi baru dimulai secara otomatis. Untuk pembaruan ad-hoc yang menggunakan perilaku cepat mulai dan berfokus pada debugging, sumber daya komputasi baru akan digunakan saat Anda memulai pembaruan baru secara manual.
Jika penskalaan otomatis vertikal mendeteksi bahwa memori instans yang dialokasikan secara konsisten kurang digunakan, sistem akan menurunkan jenis instans yang akan digunakan pada pembaruan alur berikutnya.