View a markdown version of this page

Melompat antrian kueri WLM - Amazon Redshift

Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog yang diterbitkan pada 30 Juni 2025.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Melompat antrian kueri WLM

Dengan Amazon Redshift, Anda dapat mengelola konkurensi beban kerja dan alokasi sumber daya dengan mengaktifkan lompatan antrian kueri WLM (Manajemen Beban Kerja). Fitur ini memungkinkan kueri untuk sementara “melompat” dari antrian yang ditetapkan ke antrian prioritas yang lebih tinggi ketika sumber daya tersedia, meningkatkan kinerja kueri secara keseluruhan dan pemanfaatan sistem. Bagian berikut memberikan panduan terperinci tentang mengonfigurasi dan memanfaatkan lompatan antrian kueri WLM di Amazon Redshift.

Kueri dapat dilompati karena batas waktu WLM atau tindakan hop aturan pemantauan kueri (QMR). Anda hanya dapat melompat kueri dalam konfigurasi WLM manual.

Saat kueri dilompat, WLM mencoba merutekan kueri ke antrian pencocokan berikutnya berdasarkan aturan penetapan antrian WLM. Jika kueri tidak cocok dengan definisi antrian lainnya, kueri dibatalkan. Itu tidak ditetapkan ke antrian default.

Tindakan batas waktu WLM

Tabel berikut merangkum perilaku berbagai jenis kueri dengan batas waktu WLM.

Jenis kueri Tindakan
MASUKKAN, PERBARUI, dan HAPUS Batalkan
User-defined fungsi (UDF) Batalkan
MEMBONGKAR Batalkan
MENYALIN Lanjutkan eksekusi
Operasi pemeliharaan Lanjutkan eksekusi
Read-only kueri dalam suatu returning negara Lanjutkan eksekusi
Read-only kueri dalam suatu running negara Tetapkan kembali atau mulai ulang
BUAT TABEL SEBAGAI (CTAS), PILIH KE Tetapkan kembali atau mulai ulang

Melompat antrian batas waktu WLM

WLM melompat jenis kueri berikut saat waktunya habis:

  • Read-only kueri, seperti pernyataan SELECT, yang berada dalam status WLM. running Untuk menemukan status WLM dari kueri, lihat kolom STATE pada tabel STV_WLM_QUERY_STATE sistem.

  • BUAT TABLE AS (CTAS) pernyataan. Lompat antrian WLM mendukung pernyataan CTAS yang ditentukan pengguna dan yang dihasilkan sistem.

  • PILIH PERNYATAAN INTO.

Kueri yang tidak tunduk pada batas waktu WLM terus berjalan di antrian asli hingga selesai. Jenis kueri berikut tidak tunduk pada batas waktu WLM:

  • Pernyataan COPY

  • Operasi pemeliharaan, seperti ALTER, ANALYSIS dan VACUUM

  • Read-only kueri, seperti pernyataan SELECT, yang telah mencapai status WLM. returning Untuk menemukan status WLM dari kueri, lihat kolom STATE pada tabel STV_WLM_QUERY_STATE sistem.

Kueri yang tidak memenuhi syarat untuk lompat dengan batas waktu WLM dibatalkan saat waktunya habis. Jenis kueri berikut tidak memenuhi syarat untuk dilompat dengan batas waktu WLM:

  • Pernyataan INSERT, UPDATE, dan DELETE

  • Pernyataan UNLOAD

  • User-defined fungsi (UDF)

Waktu tunggu WLM ditugaskan kembali dan memulai ulang kueri

Ketika kueri dilompati dan tidak ada antrian yang cocok ditemukan, kueri dibatalkan.

Ketika kueri dilompati dan antrian yang cocok ditemukan, WLM mencoba menetapkan kembali kueri ke antrian baru. Jika kueri tidak dapat ditugaskan kembali, kueri akan dimulai ulang dalam antrian baru, seperti yang dijelaskan berikut.

Kueri ditugaskan kembali hanya jika semua hal berikut benar:

  • Antrian yang cocok ditemukan.

  • Antrian baru memiliki cukup slot gratis untuk menjalankan kueri. Kueri mungkin memerlukan beberapa slot jika wlm_query_slot_count parameter disetel ke nilai yang lebih besar dari 1.

  • Antrian baru memiliki setidaknya sebanyak memori yang tersedia seperti yang digunakan kueri saat ini.

Jika kueri ditugaskan kembali, kueri terus dieksekusi dalam antrian baru. Hasil menengah dipertahankan, sehingga ada efek minimal pada total waktu eksekusi.

Jika kueri tidak dapat ditugaskan kembali, kueri dibatalkan dan dimulai ulang dalam antrian baru. Hasil menengah dihapus. Kueri menunggu dalam antrian, lalu mulai berjalan ketika cukup slot tersedia.

Tindakan hop QMR

Tabel berikut merangkum perilaku berbagai jenis kueri dengan tindakan hop QMR.

Jenis kueri Tindakan
MENYALIN Lanjutkan eksekusi
Operasi pemeliharaan Lanjutkan eksekusi
User-defined fungsi (UDF) Lanjutkan eksekusi
MEMBONGKAR Tetapkan kembali atau lanjutkan eksekusi
MASUKKAN, PERBARUI, dan HAPUS Tetapkan kembali atau lanjutkan eksekusi
Read-only kueri dalam suatu returning negara Tetapkan kembali atau lanjutkan eksekusi
Read-only kueri dalam suatu running negara Tetapkan kembali atau mulai ulang
BUAT TABEL SEBAGAI (CTAS), PILIH KE Tetapkan kembali atau mulai ulang

Untuk mengetahui apakah kueri yang dilompati oleh QMR ditugaskan kembali, dimulai ulang, atau dibatalkan, kueri tabel log sistem. STL_WLM_RULE_ACTION

Tindakan hop QMR ditugaskan ulang dan kueri dimulai ulang

Ketika kueri dilompati dan tidak ada antrian yang cocok ditemukan, kueri dibatalkan.

Ketika kueri dilompati dan antrian yang cocok ditemukan, WLM mencoba menetapkan kembali kueri ke antrian baru. Jika kueri tidak dapat ditugaskan kembali, kueri tersebut akan dimulai ulang di antrian baru atau melanjutkan eksekusi dalam antrian asli, seperti yang dijelaskan berikut.

Kueri ditugaskan kembali hanya jika semua hal berikut benar:

  • Antrian yang cocok ditemukan.

  • Antrian baru memiliki cukup slot gratis untuk menjalankan kueri. Kueri mungkin memerlukan beberapa slot jika wlm_query_slot_count parameter disetel ke nilai yang lebih besar dari 1.

  • Antrian baru memiliki setidaknya sebanyak memori yang tersedia seperti yang digunakan kueri saat ini.

Jika kueri ditugaskan kembali, kueri terus dieksekusi dalam antrian baru. Hasil menengah dipertahankan, sehingga ada efek minimal pada total waktu eksekusi.

Jika kueri tidak dapat ditugaskan kembali, kueri akan dimulai ulang atau melanjutkan eksekusi dalam antrian asli. Jika kueri dimulai ulang, kueri dibatalkan dan dimulai kembali dalam antrian baru. Hasil menengah dihapus. Kueri menunggu dalam antrian, kemudian memulai eksekusi ketika cukup slot tersedia.