DBCC PDW_SHOWEXECUTIONPLAN (Transact-SQL)

Berlaku untuk:Azure Synapse Analytics

Menampilkan rencana eksekusi SQL Server untuk kueri yang berjalan pada node atau node Control Azure Synapse Analytics Compute atau Control tertentu. Gunakan ini untuk memecahkan masalah performa kueri saat kueri berjalan pada simpul Komputasi dan simpul Kontrol.

Setelah masalah performa kueri dipahami untuk kueri SMP SQL Server yang berjalan pada simpul Komputasi, ada beberapa cara untuk meningkatkan performa. Kemungkinan cara untuk meningkatkan performa kueri pada simpul Komputasi termasuk membuat statistik multi-kolom, membuat indeks non-kluster, atau menggunakan petunjuk kueri.

Konvensi sintaks transact-SQL

Sintaks

Sintaks untuk Azure Synapse Analytics:

DBCC PDW_SHOWEXECUTIONPLAN ( distribution_id , spid )
[;]

Catatan

Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.

Argumen

distribution_id

Pengidentifikasi untuk distribusi yang menjalankan rencana kueri. Ini adalah bilangan bulat dan tidak boleh NULL. Nilai harus antara 1 dan 60. Digunakan saat menargetkan Azure Synapse Analytics.

spid

Pengidentifikasi untuk sesi SQL Server yang menjalankan rencana kueri. Ini adalah bilangan bulat dan tidak boleh NULL.

Izin

Memerlukan izin CONTROL di Azure Synapse Analytics.

Memerlukan VIEW izin SERVER STATE pada Peralatan.

Contoh: Azure Synapse Analytics

J. Sintaks dasar DBCC PDW_SHOWEXECUTIONPLAN

Kueri sampel berikut akan mengembalikan untuk setiap distribusi yang sql_spid berjalan secara aktif.

SELECT [sql_spid]
    , [pdw_node_id]
    , [request_id]
    , [dms_step_index]
    , [type]
    , [start_time]
    , [end_time]
    , [status]
    , [distribution_id]
FROM sys.dm_pdw_dms_workers
WHERE [status] <> 'StepComplete'
    AND [status] <> 'StepError'
ORDER BY request_id
    , [dms_step_index];

Jika Anda penasaran seperti apa 1 yang distribution_id berjalan di sesi 375, Anda akan menjalankan perintah berikut:

DBCC PDW_SHOWEXECUTIONPLAN (1, 375);