SQL Server, objek Statistik SQL
Berlaku untuk: SQL Server
Objek Statistik SQLServer:SQL di SQL Server menyediakan penghitung untuk memantau kompilasi dan jenis permintaan yang dikirim ke instans SQL Server. Memantau jumlah kompilasi dan kompilasi ulang kueri dan jumlah batch yang diterima oleh instans SQL Server memberi Anda indikasi seberapa cepat SQL Server memproses kueri pengguna dan seberapa efektif pengoptimal kueri memproses kueri.
Kompilasi adalah bagian penting dari waktu penyelesaian kueri. Untuk menghemat biaya kompilasi, Mesin Database menyimpan rencana kueri yang dikompilasi dalam cache kueri. Tujuan dari cache adalah untuk mengurangi kompilasi dengan menyimpan kueri yang dikompilasi untuk digunakan kembali nanti, oleh karena itu mengakhiri persyaratan untuk mengkompilasi ulang kueri saat nanti dijalankan. Namun, setiap kueri unik harus dikompilasi setidaknya satu kali. Kompilasi ulang kueri dapat disebabkan oleh faktor-faktor berikut:
Perubahan skema, termasuk perubahan skema dasar seperti menambahkan kolom atau indeks ke tabel, atau perubahan skema statistik seperti menyisipkan atau menghapus sejumlah besar baris dari tabel.
Perubahan lingkungan (pernyataan SET). Perubahan pengaturan sesi seperti ANSI_PADDING atau ANSI_NULLS dapat menyebabkan kueri dikompilasi ulang.
Untuk informasi selengkapnya tentang parameterisasi sederhana dan paksa, lihat MENGUBAH DATABASE (Transact-SQL).
Ini adalah penghitung Statistik SQL Server SQL.
Penghitung Statistik SQL Server SQL | Deskripsi |
---|---|
Upaya Param Otomatis/detik | Jumlah upaya parameterisasi otomatis per detik. Total harus merupakan jumlah parameterisasi otomatis yang gagal, aman, dan tidak aman. Parameterisasi otomatis terjadi ketika instans SQL Server mencoba membuat parameter permintaan Transact-SQL dengan mengganti beberapa literal dengan parameter sehingga penggunaan kembali rencana eksekusi cache yang dihasilkan di beberapa permintaan yang terlihat serupa dimungkinkan. Parameterisasi otomatis juga dikenal sebagai parameterisasi sederhana dalam versi SQL Server yang lebih baru. Penghitung ini tidak termasuk parameterisasi paksa. |
Permintaan Batch/detik | Jumlah batch perintah Transact-SQL yang diterima per detik. Statistik ini dipengaruhi oleh semua batasan (seperti I/O, jumlah pengguna, ukuran cache, kompleksitas permintaan, dan sebagainya). Permintaan batch tinggi berarti throughput yang baik. |
Param Otomatis/detik Gagal | Jumlah upaya parameterisasi otomatis yang gagal per detik. Ini harus kecil. Parameterisasi otomatis juga dikenal sebagai parameterisasi sederhana di versi SQL Server yang lebih baru. |
Parameterisasi Paksa/detik | Jumlah parameterisasi paksa yang berhasil per detik. |
Eksekusi Rencana Terpandu/detik | Jumlah eksekusi paket per detik di mana rencana kueri telah dihasilkan dengan menggunakan panduan paket. |
Eksekusi Rencana Yang Salah Arah/detik | Jumlah eksekusi rencana per detik di mana panduan rencana tidak dapat dihormati selama pembuatan rencana. Panduan rencana diacuhkan dan kompilasi normal digunakan untuk menghasilkan rencana yang dijalankan. |
Param Otomatis Aman/detik | Jumlah upaya parameterisasi otomatis yang aman per detik. Aman mengacu pada penentuan bahwa rencana eksekusi yang di-cache dapat dibagikan antara pernyataan Transact-SQL yang terlihat serupa yang berbeda. SQL Server membuat banyak upaya parameterisasi otomatis beberapa di antaranya ternyata aman dan yang lain gagal. Parameterisasi otomatis juga dikenal sebagai parameterisasi sederhana di versi SQL Server yang lebih baru. Ini tidak termasuk parameterisasi paksa. |
Tingkat Perhatian SQL | Jumlah perhatian per detik. Perhatian adalah permintaan oleh klien untuk mengakhiri permintaan yang sedang berjalan. |
Kompilasi SQL/dtk | Jumlah kompilasi SQL per detik. Menunjukkan berapa kali jalur kode kompilasi dimasukkan. Termasuk kompilasi yang disebabkan oleh kompilasi ulang tingkat pernyataan di SQL Server. Setelah aktivitas pengguna SQL Server stabil, nilai ini mencapai status stabil. |
Kompilasi Ulang SQL/detik | Jumlah kompilasi ulang pernyataan per detik. Menghitung berapa kali rekompilasi pernyataan dipicu. Umumnya, Anda ingin kompilasi ulang rendah. |
Param Otomatis Tidak Aman/detik | Jumlah upaya parameterisasi otomatis yang tidak aman per detik. Misalnya, kueri memiliki beberapa karakteristik yang mencegah rencana yang di-cache dibagikan. Ini ditetapkan sebagai tidak aman. Ini tidak menghitung jumlah parameterisasi paksa. |
Contoh
Anda mulai menjelajahi penghitung kinerja kueri dalam objek ini menggunakan kueri T-SQL ini pada tampilan manajemen dinamis sys.dm_os_performance_counters :
SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%SQL Statistics%';