Apa dampak praktis dari peringatan sys.dm_exec_query_stats dalam dokumentasi?


10

The dokumentasi untuk sys.dm_exec_query_statsnegara-negara berikut:

Permintaan awal sys.dm_exec_query_stats mungkin menghasilkan hasil yang tidak akurat jika ada beban kerja yang saat ini dieksekusi di server. Hasil yang lebih akurat dapat ditentukan dengan menjalankan kembali kueri.

Saya terkadang menanyakan DMV itu selama beban kerja aktif dan lebih suka hasil yang akurat. Saya tidak tahu bagaimana menerapkan peringatan di atas dalam praktek. Haruskah saya selalu menanyakan DMV dua kali dan menggunakan set hasil kedua karena itu akan lebih akurat? Rasanya agak dibuat-buat. Apakah saya perlu mengetahui cara DMV tidak akurat sehingga saya dapat memasukkan faktor itu ke dalam analisis saya? Jika demikian, ketidakakuratan apa yang dapat muncul: baris yang hilang, nilai yang ketinggalan zaman, baris yang tidak konsisten, atau yang lainnya?

Apa praktik terbaik saat menggunakan sys.dm_exec_query_statsselama beban kerja aktif?

Jawaban:


6

Saya telah memperbarui dokumentasi agar lebih mudah dalam pengkalimatannya. Tujuannya adalah untuk memberi tahu pengguna bahwa menjalankan kueri terhadap DMV akan menghasilkan output hanya untuk item yang telah selesai dan bukan untuk item dalam penerbangan. Dengan demikian, jalankan beban kerja secara keseluruhan untuk memastikan semua terekam.

Kata-kata baru akan menjadi yang berikut dan menerapkan berbagai DMV yang kata-kata sebelumnya dimasukkan ke dalamnya.

Hasil dari sys.dm_exec_query_stats dapat bervariasi dengan setiap eksekusi karena data hanya mencerminkan kueri yang sudah selesai, dan bukan yang masih dalam penerbangan.


4

Saya tidak tahu bagaimana menerapkan peringatan di atas dalam praktek.

Itu karena tidak jelas. Ada ruang di akhir halaman dokumentasi untuk meninggalkan umpan balik. Itu cukup banyak satu-satunya cara seseorang akan dapat melihat ke dalam sejarah halaman dokumentasi itu dan melihat mengapa peringatan itu ditambahkan, jika masih perlu, atau perlu diperbarui.

Saya melihat implementasi pada SQL Server 2017 CU 15 dan sepertinya tidak ada alasan khusus untuk mengharapkan inkonsistensi (atau "ketidaktepatan"), selain dari total hanya diperbarui pada akhir setiap eksekusi pernyataan .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.