Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan tabel STV_INFLIGHT untuk menentukan kueri apa yang sedang berjalan di cluster. Jika Anda memecahkan masalah, akan sangat membantu untuk memeriksa status kueri yang berjalan lama.
STV_INFLIGHT tidak menampilkan kueri leader-node saja. Untuk informasi selengkapnya, lihat Simpul pemimpin — hanya fungsi. STV_INFLIGHT terlihat oleh semua pengguna. Pengguna super dapat melihat semua baris; pengguna biasa hanya dapat melihat data mereka sendiri. Untuk informasi selengkapnya, lihat Visibilitas data dalam tabel dan tampilan sistem.
Beberapa atau semua data dalam tabel ini juga dapat ditemukan di tampilan SYS_QUERY_HISTORY pemantauan SYS. Data dalam tampilan pemantauan SYS diformat agar lebih mudah digunakan dan dipahami. Kami menyarankan Anda menggunakan tampilan pemantauan SYS untuk pertanyaan Anda.
Pemecahan masalah dengan STV_INFLIGHT
Jika Anda menggunakan STV_INFLIGHT untuk memecahkan masalah kinerja kueri, atau kumpulan kueri, perhatikan hal berikut:
Transaksi terbuka yang berjalan lama umumnya meningkatkan beban. Transaksi terbuka ini dapat menghasilkan waktu berjalan yang lebih lama untuk kueri lainnya.
Pekerjaan COPY dan ETL yang berjalan lama dapat memengaruhi kueri lain yang berjalan di cluster, jika mereka mengambil banyak sumber daya komputasi. Dalam kebanyakan kasus, memindahkan pekerjaan yang berjalan lama ini ke waktu penggunaan rendah meningkatkan kinerja untuk pelaporan atau beban kerja analitik.
Ada tampilan yang memberikan informasi terkait dengan STV_INFLIGHT. Ini termasukSTL_QUERYTEXT, yang menangkap teks kueri untuk perintah SQL, dan, yang menggabungkan STV_INFLIGHT ke SVV_QUERY_DALAM PENERBANGAN STL_QUERYTEXT. Anda juga dapat menggunakan STV_TERBARU STV_INFLIGHT untuk pemecahan masalah. Misalnya, STV_RECENTS dapat menunjukkan apakah kueri tertentu berada dalam status Running atau Done. Menggabungkan informasi ini dengan hasil dari STV_INFLIGHT dapat memberi Anda informasi lebih lanjut tentang properti kueri dan dampak sumber daya komputasi.
Anda juga dapat memantau kueri yang sedang berjalan menggunakan konsol Amazon Redshift.
Kolom tabel
Nama kolom | Jenis data | Deskripsi |
---|---|---|
userid | integer | ID pengguna yang membuat entri. |
mengiris | integer | Iris tempat kueri berjalan. |
kueri | integer | ID kueri. Dapat digunakan untuk bergabung dengan berbagai tabel dan tampilan sistem lainnya. |
label | karakter (320) | Entah nama file yang digunakan untuk menjalankan kueri atau label yang ditentukan dengan perintah SET QUERY_GROUP. Jika kueri tidak berbasis file atau parameter QUERY_GROUP tidak disetel, bidang ini kosong. |
xid | bigint | ID Transaksi. |
pid | integer | ID Proses. Semua kueri dalam sesi dijalankan dalam proses yang sama, sehingga nilai ini tetap konstan jika Anda menjalankan serangkaian kueri dalam sesi yang sama. Anda dapat menggunakan kolom ini untuk bergabung ke STL_ERROR tabel. |
waktu mulai | timestamp | Waktu kueri dimulai. |
text | karakter (100) | Teks kueri, terpotong menjadi 100 karakter jika pernyataan melebihi batas itu. |
tergantung | integer | Apakah kueri ditangguhkan atau tidak. 0 = false; 1 = true. |
insert_pristine | integer | Apakah kueri tulis are/were able to run while the current query is/was berjalan. 1 = tidak ada kueri tulis yang diizinkan. 0 = kueri tulis diizinkan. Kolom ini dimaksudkan untuk digunakan dalam debugging. |
concurrency_scaling_status | integer | Menunjukkan apakah kueri berjalan di cluster utama atau pada cluster penskalaan konkurensi, Nilai yang mungkin adalah sebagai berikut: 0 - Berjalan di cluster utama 1 - Berjalan pada cluster penskalaan konkurensi |
Kueri Sampel
Untuk melihat semua kueri aktif yang sedang berjalan di database, ketik kueri berikut:
select * from stv_inflight;
Output sampel di bawah ini menunjukkan dua kueri yang sedang berjalan, termasuk kueri STV_INFLIGHT itu sendiri dan kueri yang dijalankan dari skrip yang disebut: avgwait.sql
select slice, query, trim(label) querylabel, pid,
starttime, substring(text,1,20) querytext
from stv_inflight;
slice|query|querylabel | pid | starttime | querytext
-----+-----+-----------+-----+--------------------------+--------------------
1011 | 21 | | 646 |2012-01-26 13:23:15.645503|select slice, query,
1011 | 20 |avgwait.sql| 499 |2012-01-26 13:23:14.159912|select avg(datediff(
(2 rows)
Kueri berikut memilih beberapa kolom, termasuk concurrency_scaling_status. Kolom ini menunjukkan apakah kueri sedang dikirim ke cluster penskalaan konkurensi. Jika nilainya 1
untuk beberapa hasil, ini merupakan indikasi bahwa sumber daya komputasi penskalaan konkurensi sedang digunakan. Untuk informasi selengkapnya, lihat Penskalaan konkurensi.
select userid,
query,
pid,
starttime,
text,
suspended,
concurrency_scaling_status
from STV_INFLIGHT;
Output sampel menunjukkan satu kueri yang dikirim ke cluster penskalaan konkurensi.
query | pid | starttime | text | suspended | concurrency_scaling_status
--------+---------+----------------------------|------------------------|---------------|-------------------------------
1234567 | 123456 | 2012-01-26 13:23:15.645503 | select userid, query... 0 1
2345678 | 234567 | 2012-01-26 13:23:14.159912 | select avg(datediff(... 0 0
(2 rows)
Untuk tips selengkapnya tentang pemecahan masalah kinerja kueri, lihat. Pemecahan masalah kueri