Anda di halaman 1dari 11

10 Contoh Penggunaan

DMO ( Dynamic
Management Object )
pada SQL Server
MABD - D

Rahadiyan Danar Aji / 5212100124


INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA

Pendahuluan
DMO ( Dynamic Management Object ) merupakan sebuah database view atau function yang
mengembalikan sebuah keadaan informasi yang spesifik untuk database pada waktu tertentu . DMO
memungkinkan seorang DBA ( Database Administrator ) atau developer untuk memantau database
server dalam kontrol yang efisien . DMO me-replace banyak system tabel yang ada pada versi SQL server
lama , namun memberikan DBA untuk lebih banyak metriks untuk diamati .
Pada tugas ini saya akan memberikan 10 contoh penggunaan DMO pada SQL Server versi 2012 ,
maka dari itu sebelumnya saya membuat sebuah table test yang diberi nama DMVTest untuk
mencoba-coba fungsi-fungsi DMO . Berikut adalah Query yang saya buat untuk membuat table .

Contoh Penggunaan DMO


SQL Server Operating System Related Dynamic Management Views
sys.dm_os_performance_counters
DMO ini adalah berfungsi Untuk melakukan view untuk informasi mengenai statistik performance yang
dimiliki SQL Server . Informasi ini merupakan performance counter yang di display melalui Windows
Performance Monitor .
Untuk melakukan display performance , kita bisa melakukan nya dari SQL server tanpa harus
menjalankan Windows Performance Monitor . Berikut adalah Query yang dilakukan :

Result :

Query ini akan menghasilkan Buffer Cache Hit Ratio untuk keadaan server pada saat ini . Buffer Cache
Hit Ratio adalah persentase halaman yang diminta oleh SQL Server yang ditemukan dalam memori. Jika
semuanya baik-baik pada server Anda, Anda biasanya akan melihat nilai ini di lebih dari 90%. Jika nilai ini
jauh lebih rendah dari itu, itu berarti bahwa server Anda sedang melakukan disk untuk mengambil
halaman data , dan ini merupakan tanda bahwa server Anda membutuhkan lebih banyak memori .
http://www.techrepublic.com/article/five-useful-dynamic-management-objects-in-sql-server-2005/#

DMV sys.dm_os_wait_stats Explanation Wait Type


Ini adalah merupakan sebuah fungsi DMV ( Dynamic Management View ) yang membantu untuk
memberikan keadaan Wait stats ( seluruh informasi yang perlu kita tahu mengena Wait Stats ) .
Tipe Spesifikasi dari Wait TImes selama eksekusi query dapat mengindikasikan sebuah keadaan
bottlenecks atau stall points dalam query . Semakin tinggi wait times , atau wait counts server dapat
menunjukkan keadaan bottlenecks atau hot spots , dalam interaksi permintaan dalam sebuah server .
Berikut adalah contoh penggunaan query untuk DMV sys.dm_os_wait_stats :

Result :

http://blog.sqlauthority.com/2011/02/03/sql-server-dmv-sys-dm_os_wait_stats-explanation-waittype-day-3-of-28/

sys.dm_os_windows_info (Transact-SQL)
DMO ini berfungsi untuk menghasilkan informasi mengenai Windows operating system version
information. Berikut adalah Query yang dilakukan :

Result :

https://msdn.microsoft.com/en-us/library/hh204565.aspx

Index Related Dynamic Management Views and Functions


sys.dm_db_index_physical_stats
DMO ini berfungsi untuk menampilkan sebuah view untuk informasi mengenai data informasi tentang
indeks data tables and view .
Fungsi menerima lima parameter yaitu : ID Database , ID dari table atau view yang bersangkutan , ID dari
spesifik Index pada table atau view , sejumlah number partisi , dan mode , yang telah di spesifisikan
sebagai 'DETAILED' . . Parameter khusus untuk fungsi ini akan memungkinkan Anda untuk melihat detail
untuk semua indeks di atas Table DMVTest yang telah dibuat sebelumnya . Berikut adalah query yang
dapat kita coba :

Result 1 :

Dengan menjalankan query diatas pada table yang telah kita buat , kita akan melihat bahwa tidak ada
pages dalam tabel dan juga tidak ada catatan dalam tabel.

Dengan menambahkan catatan ke DMVTest dan rerunning query, Anda dapat melihat bahwa halaman
telah ditambahkan ke table .
Result 2 ( Muncul table DMVTest ):

http://www.techrepublic.com/article/five-useful-dynamic-management-objects-in-sql-server-2005/#

Execution Related Dynamic Management Views and Functions


sys.dm_exec_requests , sys.dm_exec_sessions , sys.dm_exec_sql_text
Dalam Execution Related Dynamic Management Views and Functions terdapat 3 sub dmo yaitu
sys.dm_exec_requests , sys.dm_exec_sessions , dan sys.dm_exec_sql_text.
sys.dm_exec_requests: View ini menunjukkan informasi mengenai setiap permintaan yang terjadi di SQL
Server instance. Informasi yang diberikan oleh view ini sangat berguna ketika kita sedang menyelidiki dan
memblokir server .

sys.dm_exec_sessions: Ini mengembalikan satu baris per sesi yang dikonfirmasi pada SQL Server. View ini
berguna bila kita ingin mengetahui semua pengguna yang terhubung ke server database ( Connected to
database Server ).
sys.dm_exec_sql_text: Ini adalah fungsi manajemen yang dinamis yang mengembalikan pernyataan SQL
Server berdasarkan SQL Handle .

Dari query diatas akan dihasilkan table session, blocking session, program, host, dan the SQL Server
statement yang dieksekusi untuk semua permintaan pengguna saat ini pada database.

http://www.techrepublic.com/article/five-useful-dynamic-management-objects-in-sql-server-2005/#

Execution Related Dynamic Management Views and Functions (Transact-SQL)


sys.dm_exec_connections (Transact-SQL)
DMO ini akan berfungsi untuk menampilkan informasi mengenai connection established untuk instanace
dari SQL Server dan detail dari setiap koneksi . Berikut adalah contoh query untuk menampilkan info
connection pada koneksi server kita sendiri ( own connection ) .

https://msdn.microsoft.com/en-us/library/ms181509.aspx

Common Language Runtime Related Dynamic Management Views (Transact-SQL)


sys.dm_clr_properties (Transact-SQL)
DMO ini akan berfungsi untuk menampilkan property yang berhubungan dengan integrasi CLR (
Common Language Runtime ) SQL Server . Termasuk versi dan state hosted CLR . Host CLR diawali
dengan mengeksekusi CREATE ASSEMBLY, ALTER ASSEMBLY, or DROP ASSEMBLY statements, or by
executing any CLR routine, type, or trigger . View dari sys.dm_clr_properties tidak menentukan apakah
eksekusi code CLR pengguna telah diaktifkan pada server
sys.dm_clr_properties view akan berisi mengenai nama dan value sebuah column. Setiap baris di view
mencakup detail tentang properti yang ada pada hosted CLR . Dengan menggunakan view ini akan
dihasilkan CLR install directory, the CLR version, and the current state of the hosted CLR . View ini dapat
membantu Anda menentukan apakah kode integrasi CLR tidak bekerja karena masalah dengan instalasi
CLR di komputer server. Berikut adalah query yang bisa di coba :

Result :

https://msdn.microsoft.com/en-us/library/ms174983.aspx

Execution Related Dynamic Management Views and Functions


sys.dm_exec_background_job_queue_stats (Transact-SQL)
DMO ini akan berfungsi untuk menghasilkan sebuah row yang mencakupi sebuah statistik agregat untuk
setiap query processor job yang di submit untuk asynchronous (background) execution.

Determining the percentage of failed background jobs


Query berikut adalah untuk menghasilkan sebuah presentase failed background jobs untuk semua query
yang di eksekusi

Determining the percentage of failed enqueue attempts


Query berikut adalah untuk menghasilkan sebuah presentase failed enqueue attempts untuk semua
query yang di eksekusi

https://msdn.microsoft.com/en-us/library/ms176059.aspx

sys.dm_exec_procedure_stats (Transact-SQL)
DMO ini akan berfungsi untuk menampilkan sebuah statistik performa aggregate untuk cached stored
procedures . View ini memberikan baris untuk setiap cached stored procedure plan , dan lifetime baris
selama ia di simpan dalam store procedure cached . Ketika prosedur yang tersimpan dihapus dari cache,

baris yang sesuai dihilangkan dari view ini . Pada saat itu, performance Statistik Kinerja SQL trace
dinaikkan mirip dengan sys.dm_exec_query_stats.
Berikut adalah query yang bisa di coba :

Result :

https://msdn.microsoft.com/en-us/library/cc280701.aspx

sys.dm_exec_query_stats (Transact-SQL)
DMO ini berfungsi untuk menampilkan sebuah statistik performa agregat mengenai cached query plans
di SQL Server . View ini mencakup 1 row dengan query statement pada cached plan , dan lifetime row
yang terikan pada plan itu sendiri . Ketika plan dihapus dari cache maka baris tersebut akan dikeluarkan
dari view ini .

Returning row count aggregates for a query


Query berikut adalah untuk menampilkan row count aggregate information (total rows, minimum rows,
maximum rows and last rows) untuk queries.

https://msdn.microsoft.com/en-us/library/ms189741.aspx

SQL Server Operating System Related Dynamic Management Views (Transact-SQL)


sys.dm_os_workers (Transact-SQL)
DMO ini adalah berfungsi untuk menampilkan setiap worker yang ada pada system. Berikut adalah
query yang dapat dicoba untuk melihat berapa lama workter telah berjalan pada keadaan SUSPENDED
atau RUNNABLE .

Result :

https://msdn.microsoft.com/en-us/library/ms178626.aspx

Anda mungkin juga menyukai