Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
STL_SCAN
Menganalisis langkah-langkah pemindaian tabel untuk kueri. Nomor langkah untuk baris dalam tabel ini selalu 0 karena pemindaian adalah langkah pertama dalam segmen.
STL_SCAN dapat dilihat 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.
catatan
STL_SCAN hanya berisi kueri yang dijalankan pada kluster utama yang disediakan. Itu tidak berisi kueri yang dijalankan pada cluster penskalaan konkurensi atau pada ruang nama tanpa server. Untuk mengakses menjelaskan rencana kueri yang dijalankan di kedua kluster utama, kluster penskalaan konkurensi, dan ruang nama tanpa server, sebaiknya gunakan tampilan pemantauan SYS. SYS_QUERY_DETAIL Data dalam tampilan pemantauan SYS diformat agar lebih mudah digunakan dan dipahami.
Kolom tabel
Nama kolom | Jenis data | Deskripsi |
---|---|---|
userid | integer | ID pengguna yang membuat entri. |
kueri | integer | ID kueri. Kolom kueri dapat digunakan untuk bergabung dengan tabel dan tampilan sistem lainnya. |
mengiris | integer | Nomor yang mengidentifikasi irisan tempat kueri berjalan. |
segmen | integer | Nomor yang mengidentifikasi segmen kueri. |
langkah | integer | Langkah kueri yang berjalan. |
waktu mulai | timestamp | Waktu di UTC kueri dimulai. Total waktu termasuk antrian dan eksekusi. dengan 6 digit presisi untuk detik pecahan. Sebagai contoh: 2009-06-12 11:29:19.131358 . |
akhir waktu | timestamp | Waktu di UTC kueri selesai. Total waktu termasuk antrian dan eksekusi. dengan 6 digit presisi untuk detik pecahan. Sebagai contoh: 2009-06-12 11:29:19.131358 . |
tasknum | integer | Jumlah proses tugas kueri yang ditugaskan untuk menjalankan langkah. |
baris | bigint | Jumlah baris yang diproses. |
byte | bigint | Ukuran, dalam byte, dari semua baris output untuk langkah tersebut. |
mengambil | bigint | Informasi ini hanya untuk penggunaan internal. |
jenis | integer | ID dari jenis pemindaian. Untuk daftar nilai yang valid, lihat tabel berikut. |
tbl | integer | ID Tabel. |
is_rrscan | karakter (1) | Jika true (t), menunjukkan bahwa pemindaian terbatas rentang digunakan pada langkah tersebut. |
is_delayed_scan | karakter (1) | Informasi ini hanya untuk penggunaan internal. |
baris_pre_filter | bigint | Untuk pemindaian tabel permanen, jumlah baris yang dipancarkan sebelum memfilter baris yang ditandai untuk dihapus (baris hantu) dan sebelum menerapkan filter kueri yang ditentukan pengguna. |
baris_pre_user_filter | bigint | Untuk pemindaian tabel permanen, jumlah baris yang diproses setelah memfilter baris ditandai untuk dihapus (baris hantu) tetapi sebelum menerapkan filter kueri yang ditentukan pengguna. |
perm_table_name | karakter (136) | Untuk pemindaian tabel permanen, nama tabel dipindai. |
is_rlf_scan | karakter (1) | Jika true (t), menunjukkan bahwa pemfilteran tingkat baris digunakan pada langkah. |
is_rlf_scan_reason | integer | Informasi ini hanya untuk penggunaan internal. |
num_em_blocks | integer | Informasi ini hanya untuk penggunaan internal. |
checksum | bigint | Informasi ini hanya untuk penggunaan internal. |
runtime_filtering | karakter (1) | Jika true (t), menunjukkan bahwa filter runtime diterapkan. |
scan_region | integer | Informasi ini hanya untuk penggunaan internal. |
num_sortkey_as_predicate | integer | Informasi ini hanya untuk penggunaan internal. |
row_fetcher_state | integer | Informasi ini hanya untuk penggunaan internal. |
consumed_scan_ranges | bigint | Informasi ini hanya untuk penggunaan internal. |
work_stealing_reason | bigint | Informasi ini hanya untuk penggunaan internal. |
is_vectorized_scan | karakter (1) | Informasi ini hanya untuk penggunaan internal. |
is_vectorized_scan_reason | integer | Informasi ini hanya untuk penggunaan internal. |
row_fetcher_reason | bigint | Informasi ini hanya untuk penggunaan internal. |
topology_signature | bigint | Informasi ini hanya untuk penggunaan internal. |
gunakan_tpm_partition | karakter (1) | Informasi ini hanya untuk penggunaan internal. |
is_rrscan_expr | karakter (1) | Informasi ini hanya untuk penggunaan internal. |
scanned_mega_value | karakter (1) | Informasi ini hanya untuk penggunaan internal. Informasi ini menunjukkan apakah langkah pemindaian yang diberikan telah memindai nilai yang besar. Nilai besar akan disimpan dalam beberapa blok. Ukuran blok adalah 1 MB secara default, nilai besar lebih besar dari 1 MB dalam pengaturan default. |
Jenis pemindaian
Jenis ID | Deskripsi |
---|---|
1 | Data dari jaringan. |
2 | Tabel pengguna permanen dalam memori bersama terkompresi. |
3 | Tabel baris sementara. |
21 | Muat file dari Amazon S3. |
22 | Muat tabel dari Amazon DynamoDB. |
23 | Muat data dari koneksi SSH jarak jauh. |
24 | Muat data dari cluster jarak jauh (wilayah yang diurutkan). Ini digunakan untuk mengubah ukuran. |
25 | Muat data dari cluster jarak jauh (wilayah yang tidak disortir). Ini digunakan untuk mengubah ukuran. |
28 | Baca data dari tampilan deret waktu dengan UNION ALL pada beberapa tabel. |
29 | Baca data dari tabel eksternal Amazon S3. |
30 | Baca informasi partisi tabel eksternal Amazon S3. |
33 | Baca data dari tabel Postgres jarak jauh. |
36 | Baca data dari tabel MySQL jarak jauh. |
37 | Baca data dari aliran Kinesis jarak jauh. |
Catatan penggunaan
Idealnya rows
harus relatif dekat denganrows_pre_filter
. Perbedaan besar antara rows
dan rows_pre_filter
merupakan indikasi bahwa mesin eksekusi memindai baris yang kemudian dibuang, yang tidak efisien. Perbedaan antara rows_pre_filter
dan rows_pre_user_filter
adalah jumlah baris hantu dalam pemindaian. Jalankan VACUUM untuk menghapus baris yang ditandai untuk dihapus. Perbedaan antara rows
dan rows_pre_user_filter
adalah jumlah baris yang disaring oleh kueri. Jika banyak baris dibuang oleh filter pengguna, tinjau kolom pengurutan pilihan Anda atau, jika ini karena wilayah besar yang tidak disortir, jalankan ruang hampa.
Kueri Sampel
Contoh berikut menunjukkan bahwa rows_pre_filter
lebih besar dari rows_pre_user_filter
karena tabel telah menghapus baris yang belum disedot (baris hantu).
SELECT query, slice, segment,step,rows, rows_pre_filter, rows_pre_user_filter from stl_scan where query = pg_last_query_id(); query | slice | segment | step | rows | rows_pre_filter | rows_pre_user_filter -------+--------+---------+------+-------+-----------------+---------------------- 42915 | 0 | 0 | 0 | 43159 | 86318 | 43159 42915 | 0 | 1 | 0 | 1 | 0 | 0 42915 | 1 | 0 | 0 | 43091 | 86182 | 43091 42915 | 1 | 1 | 0 | 1 | 0 | 0 42915 | 2 | 0 | 0 | 42778 | 85556 | 42778 42915 | 2 | 1 | 0 | 1 | 0 | 0 42915 | 3 | 0 | 0 | 43428 | 86856 | 43428 42915 | 3 | 1 | 0 | 1 | 0 | 0 42915 | 10000 | 2 | 0 | 4 | 0 | 0 (9 rows)