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
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
SVCS_JELASKAN
Menampilkan rencana EXPLAIN untuk kueri yang telah dikirimkan untuk dieksekusi.
catatan
Tampilan sistem dengan awalan SVCS memberikan rincian tentang kueri pada cluster penskalaan utama dan konkurensi. Tampilan mirip dengan tabel dengan awalan STL kecuali bahwa tabel STL menyediakan informasi hanya untuk kueri yang dijalankan pada cluster utama.
SVCS_EXPLAIN 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.
Kolom tabel
| Nama kolom | Jenis data | Deskripsi |
|---|---|---|
| Userid | integer | ID pengguna yang membuat entri. |
| kueri | integer | ID kueri. Kolom query dapat digunakan untuk bergabung dengan tabel dan tampilan sistem lainnya. |
| nodeid | integer | Pengidentifikasi simpul rencana, di mana node memetakan ke satu atau lebih langkah dalam pelaksanaan kueri. |
| parental | integer | Rencanakan pengenal simpul untuk node induk. Node induk memiliki sejumlah node anak. Misalnya, gabungan gabungan adalah induk dari pemindaian pada tabel yang digabungkan. |
| plannode | karakter (400) | Teks simpul dari output EXPLAIN. Node rencana yang mengacu pada eksekusi pada node komputasi diawali dengan XN dalam output EXPLAIN. |
| info | karakter (400) | Informasi kualifikasi dan filter untuk simpul rencana. Misalnya, kondisi bergabung dan batasan klausa WHERE disertakan dalam kolom ini. |
Kueri Sampel
Pertimbangkan output EXPLAIN berikut untuk kueri gabungan agregat:
explain select avg(datediff(day, listtime, saletime)) as avgwait from sales, listing where sales.listid = listing.listid; QUERY PLAN ------------------------------------------------------------------------------ XN Aggregate (cost=6350.30..6350.31 rows=1 width=16) -> XN Hash Join DS_DIST_NONE (cost=47.08..6340.89 rows=3766 width=16) Hash Cond: ("outer".listid = "inner".listid) -> XN Seq Scan on listing (cost=0.00..1924.97 rows=192497 width=12) -> XN Hash (cost=37.66..37.66 rows=3766 width=12) -> XN Seq Scan on sales (cost=0.00..37.66 rows=3766 width=12) (6 rows)
Jika Anda menjalankan kueri ini dan ID kuerinya adalah 10, Anda dapat menggunakan tabel SVCS_EXPLAIN untuk melihat jenis informasi yang sama dengan yang dikembalikan perintah EXPLAIN:
select query,nodeid,parentid,substring(plannode from 1 for 30), substring(info from 1 for 20) from svcs_explain where query=10 order by 1,2; query| nodeid |parentid| substring | substring -----+--------+--------+--------------------------------+------------------- 10 | 1 | 0 |XN Aggregate (cost=6717.61..6 | 10 | 2 | 1 | -> XN Merge Join DS_DIST_NO| Merge Cond:("outer" 10 | 3 | 2 | -> XN Seq Scan on lis | 10 | 4 | 2 | -> XN Seq Scan on sal | (4 rows)
Pertimbangkan kueri berikut:
select event.eventid, sum(pricepaid) from event, sales where event.eventid=sales.eventid group by event.eventid order by 2 desc; eventid | sum --------+---------- 289 | 51846.00 7895 | 51049.00 1602 | 50301.00 851 | 49956.00 7315 | 49823.00 ...
Jika ID kueri ini adalah 15, kueri tabel sistem berikut mengembalikan node rencana yang dilakukan. Dalam hal ini, urutan node dibalik untuk menunjukkan urutan eksekusi yang sebenarnya:
select query,nodeid,parentid,substring(plannode from 1 for 56) from svcs_explain where query=15 order by 1, 2 desc; query|nodeid|parentid| substring -----+------+--------+-------------------------------------------------------- 15 | 8 | 7 | -> XN Seq Scan on eve 15 | 7 | 5 | -> XN Hash(cost=87.98..87.9 15 | 6 | 5 | -> XN Seq Scan on sales(cos 15 | 5 | 4 | -> XN Hash Join DS_DIST_OUTER(cos 15 | 4 | 3 | -> XN HashAggregate(cost=862286577.07.. 15 | 3 | 2 | -> XN Sort(cost=1000862287175.47..10008622871 15 | 2 | 1 | -> XN Network(cost=1000862287175.47..1000862287197. 15 | 1 | 0 |XN Merge(cost=1000862287175.47..1000862287197.46 rows=87 (8 rows)
Kueri berikut mengambil ID kueri untuk setiap paket kueri yang berisi fungsi jendela:
select query, trim(plannode) from svcs_explain where plannode like '%Window%'; query| btrim -----+------------------------------------------------------------------------ 26 | -> XN Window(cost=1000985348268.57..1000985351256.98 rows=170 width=33) 27 | -> XN Window(cost=1000985348268.57..1000985351256.98 rows=170 width=33) (2 rows)