Tulisan kali ini akan membahas tentang DMO. Apa sih itu DMO
? Yuk kita bahas lebih lanjut
DMO disini adalah singkatan dari Dynamic Management Object yang merupakan kumpulan dari Object SQL Server yang mana ditempatkan pada bagian dari sistem skema.
Sebelumnya, perlu kita ketahui bersama bahwa DMO ini berasal dari sebuah tabel
sistem yang berkembang menjadi View Kompatibilitas Sistem, lalu menjadi View
Katalog Sistem dan bermuara menjadi DMO hingga saat ini
Berbicara DMO, maka kita akan menemukan beberapa fakta baru.
Yang pertama, DMO berbicara dengan bahasa yang baru, kedua Data disimpan sejak
restart layanan terakhir, ketiga memiliki fasilitas pemberian hak akses untuk
melihat, dan keempat adalah DMO disimpan di Plain Sight.
Berikut merupakan Ciri-ciri DMO
- Modular : Terstruktur, seperti bercerita
- Flexible : Mudah untuk digabung dengan DMO lain, View Kompatibilitas, View Katalog, dan fungsi sistem
- Understandable : Penamaan menggunakan jargon dan akronim (disingkat)
DMO memiliki beberapa klasifikasi, yaitu
- DMO (General Clasification)
- Sys.dm_ prefix
- Dynamic Management Views
- No input accepted
- Sys.dm_ prefix
- Dynamic management functions
- Input accepted and often required
- Sys.dm_ prefix
Kategori dan jenis DMO beserta Syntax
Untuk memudahkan dalam mengerti dan menghafal DMO, maka kita
bisa menggunakan cara seperti menghafal rumus Kimia, yaitu dengan menggunakan
Periodic Table of SQL Server DMO
Berikut merupakan kategori beserta contoh dan penjelasan
mengenai DMO
1. Usage DMO
a.
Activity :
i.
SQL Text,
Mengembalikan teks SQL batch yang diidentifikasi oleh sql-handle
terntentu. Fungsi tabel ini adalah untuk menggantikan fungsi sistem fn_get_sql
Sys.dm_exec_sql_text (Transact-SQL)
Contoh
ii.
Connections,
Mengembalikan informasi tentang koneksi yang diidirikan pada instance SQL
Server dan rincian masing-masing sambungan
Sys.dm_exec_connections (Transact-SQL)
Contoh
iii.
Sessions,
Pengembalian satu baris per sesi di SQL Server. Ini merupakan pandangan
server-scope yang menunjukkan informasi tentang semua koneksi pengguna aktif
dan tugas internal
Sys.dm_exec_sessions (Transact-SQL)
Contoh :
iv.
Request
Pengembalian informasi tentnag setiap permintaan yang mengeksekusi di dalam
SQL Server
Sys.dm_exec_requests (Transact-SQL)
Contoh :
b.
Locking :
i.
TRX Locks
Pengembalian informasi tentang Lock manager resource yang sedang aktif.
Setiap bari mewakili permintaan aktif kepada lock manager untuk kuci yang telah
diberi atau sedang ditunggu
Sys.dm_tran_locks (Transact-SQL)
Contoh
c.
Cursor :
i.
Cursor
Mengembalikan informasi tentang kursor yang terbuka di berbagai database
Sys.dm_exec_cursors (Transact-SQL)
Contoh :
d.
Transaction :
i.
Active Trx,
Pengembalian informasi tentang transaksi untuk instance dari SQL Server.
sys.dm_tran_active_transactions (Transact-SQL)
ii.
Database Trx,
Mengembalikan informasi tentnag transaksi pada tingkat database
sys.dm_tran_database_transactions (Transact-SQL)
iii.
Current Trx,
Pengembalian satu baris yang menampilkan informasi keadaan transaksi di
sesi saat ini
sys.dm_tran_current_transaction (Transact-SQL)
Contoh :
iv.
Session Trx
Pengembalian informasi yang berhubungan untuk transaksi dan session yang
saling terkait
sys.dm_tran_session_transactions (Transact-SQL)
e.
Snapshot Isolation :
i.
Version Store,
Mengembalikan tabel virtual yang menampilkan semua catatan versi di store
sys.dm_tran_version_store (Transact-SQL)
Contoh
ii.
Top Version Gens,
Mengembalikan tabel virtual untuk obyek yang menghasilkan sebagian besar
versi dalam version store.
sys.dm_tran_top_version_generators (Transact-SQL)
Contoh :
iii.
Active Spreadsheet DB Trx,
Dalam instance SQL Server, pandangan manajemen yang dinamis ini
mengembalikan tabel virtual untuk semua transaksi aktif yang menghasilkan atau
berpotensi mengakses row versions
sys.dm_tran_active_snapshot_database_transactions (Transact-SQL)
Contoh:
iv.
Trx Snapshot,
Mengembalikan tabel virtual untuk nomor urut transaksi yang aktif ketika
setiap transaksi snapshot dimulai
sys.dm_tran_transactions_snapshot (Transact-SQL)
Contoh output
v.
Current Snapshot
Mengembalikan tabel virtual yang menampilkan semua transaksi aktif pada
saat transaksi snapshot sekarang dimulai
sys.dm_tran_current_snapshot (Transact-SQL)
Contoh
Query and Plan DMOs
a.
Plan Stats :
i.
Query Plan,
Sys.dm_exec_query_plans (Transact-SQL)
ii.
Cached Plans,
Sys.dm_exec_cached_plans (Transact-SQL)
iii.
Text Query Plan,
Sys.dm_exec_text_query_plans (Transact-SQL)
iv.
Cached Plan Dependent Objects,
v.
Plan Attributes,
Sys.dm_exec_plan_attributes (Transact-SQL)
vi.
Trigger Stats,
Sys.dm_exec_trigger_stats (Transact-SQL)
vii.
Procedure Stats
Sys.dm_exec_procedure_stats (Transact-SQL)
b.
Query Stats :
i.
Query Stats,
Sys.dm_exec_query_stats (Transact-SQL)
ii.
Query Optimizer Info,
Sys.dm_exec_query_optimizer_info (Transact-SQL)
iii.
Query Transformation Stats,
Sys.dm_exec_query_transformation_stats (Transact-SQL)
iv.
Query Memory Grants
Sys.dm_exec_query_memory_grants (Transact-SQL)
a.
Indexing Usage :
i.
Index Usage Stats
Sys.dm_db_index_usage_stats (Transact-SQL)
b.
Index Operational :
i.
Index Operational Stats
Sys.dm_db_index_operational_stats (Transact-SQL)
c.
Index Physical :
i.
Index Physical Stats
Sys.dm_db_index_physical_stats (Transact-SQL)
d.
Missing Index :
i.
Missing Index Details,
Sys.dm_db_missing_index_details (Transact-SQL)
ii.
Missing Index Groups,
Sys.dm_db_missing_index_groups (Transact-SQL)
iii.
Missing Index Columns,
Sys.dm_db_missing_index_columns (Transact-SQL)
iv.
Missing Index Group Stats
Sys.dm_db_missing_index_stats (Transact-SQL)
Securable DMO
a.
Change Data Cart :
i.
CDC Errors,
ii.
CDC Log Scan Sessions,
Sys.dm_cdc_log_scan_sessions (Transact-SQL)
iii.
Commit Table
Sys.dm_tran_commit_table (Transact-SQL)
b.
Auditing :
i.
Server Audit Status,
Sys.dm_server_audit_status (Transact-SQL)
ii.
Audit Actions,
Sys.dm_audit_actions (Transact-SQL)
iii.
Audit Class Type Map
Sys.dm_audit_class_type_map (Transact-SQL)
c.
Encryption :
i.
DB Encryption Keys,
ii.
Crypt Provider Keys,
iii.
Crypt Provider Sessions,
iv.
Crypt Provider Properties,
v.
Crypt Provider Algorithms
High Availability DMO
a.
Clustering :
i.
Cluster Nodes,
sys.dm_os_cluster_nodes (Transact-SQL)
ii.
Cluster Shared Drives
sys.dm_io_cluster_shared_drives (Transact-SQL)
b.
Mirroring :
i.
Mirroring Auto Page Repair,
sys.dm_db_mirroring_auto_page_repair (Transact-SQL)
ii.
Mirroring Connections,
sys.dm_db_mirroring_connections(Transact-SQL)
iii.
Mirroring Past Actions
sys.dm_db_mirroring_past_actions (Transact-SQL)
c.
Replications :
i.
Replication Tran Info,
ii.
Replication Tran Hash,
iii.
Replication Articles,
iv.
Replication Schema
Structure Core DMO
a.
Server info :
i.
System Info,
Sys.dm_os_sys_info (Transact-SQL)
ii.
Script
Level,
iii.
Persisted SKU Features,
Sys.dm_db_persisted_sku_features
iv.
Backup Tapes
sys.dm_io_backup_tapes (Transact-SQL)
b.
Referential Identity :
i.
Referencing Entities,
sys.dm_sql_referencing_entities
ii.
Referenced Entities
sys.dm_sql_referenced_entities
c.
TempDB :
i.
Partition Stats,
sys.dm_db_partition_stats (Transact-SQL)
ii.
Session Space Usage,
sys.dm_db_session_space_usage (Transact-SQL)
iii.
File Space Usage,
sys.dm_db_file_space_usage (Transact-SQL)
iv.
Task Space Usage
sys.dm_db_task_space_usage (Transact-SQL)
SQLOS DMO
i.
OS Stacks,
sys.dm_os_stacks (Transact-SQL)
ii.
OS Worker Local Storage,
iii.
OS workers,
sys.dm_os_workers (Transact-SQL)
iv.
OS Tasks,
sys.dm_os_tasks (Transact-SQL)
v.
Sublatches
vi.
Latch Stats,
sys.dm_os_latch_stats (Transact-SQL)
vii.
Spinlock Stats
sys.dm_os_spinlock_stats (Transact-SQL)
viii.
OS Nodes
sys.dm_os_nodes (Transact-SQL)
ix.
OS Buffer Descriptor
sys.dm_os_buffer_descriptors (Transact-SQL)
x.
OS Memory Allocations
sys.dm_os_memory_allocations (Transact-SQL)
xi.
OS Memory Brokers
sys.dm_os_memory_brokers (Transact-SQL)
xii.
OS Memory Node Access Stats,
sys.dm_os_memory_node_access_stats (Transact-SQL)
xiii.
OS Memory Nodes
sys.dm_os_memory_nodes (Transact-SQL)
xiv.
OS Sys Memory
sys.dm_os_sys_memory (Transact-SQL)
xv.
OS Memory Pools
sys.dm_os_memory_pools (Transact-SQL)
xvi.
OS Memory Objects
sys.dm_os_memory_objects (Transact-SQL)
xvii.
Loaded Modules
sys.dm_os_loaded_modules (Transact-SQL)
xviii.
OS Hosts
sys.dm_os_hosts (Transact-SQL)
xix.
Child Instances
sys.dm_os_child_instances (Transact-SQL)
xx.
OS Virtual Address Dump
sys.dm_os_virtual_address_dump (Transact-SQL)
xxi.
OS Process Memory
sys.dm_os_process_memory (Transact-SQL)
xxii.
Memory Cache Clock Hands
sys.dm_os_memory_cache_clock_hands (Transact-SQL)
xxiii.
Memory Cache Entries
sys.dm_os_memory_cache_entries (Transact-SQL)
xxiv.
Memory Cache Hash Tables
sys.dm_os_memory_cache_hash_tables (Transact-SQL)
xxv.
OS Memory Clerks
sys.dm_os_memory_clerks (Transact-SQL)
xxvi.
Query Resource Semaphores
Sys.dm_exec_query_resource_semaphores (Transact-SQL)
xxvii.
OS Memory Cache Counters
sys.dm_os_memory_cache_counters (Transact-SQL)
Performance Core DMO
a.
Resource Governor :
i.
Resource Governor Configuration,
sys.dm_resource_governor_configuration (Transact-SQL)
ii.
Resource Governor Workload Groups,
sys.dm_resource_governor_workload_groups (Transact-SQL)
iii.
Resource Governor Resource Pools
sys.dm_resource_governor_resource_pools (Transact-SQL)
b.
GENL Performance :
i.
OS Performance Counters,
sys.dm_os_performance_counters (Transact-SQL)
ii.
OS Ring Buffers
Sys.dm_os_ring_buffers (Transact-SQL)
c.
IO Disk :
i.
IO Pending IO Requests,
sys.dm_io_pending_io_requests (Transact-SQL)
ii.
IO Virtual File Stats
sys.dm_io_virtual_file_stats (Transact-SQL)
d.
Waits :
i.
OS Wait Stats,
sys.dm_os_wait_stats (Transact-SQL)
ii.
OS Waiting Tasks
sys.dm_os_waiting_tasks (Transact-SQL)
e.
Extended Event :
i.
OS Dispatchers,
sys.dm_os_dispatcher (Transact-SQL)
ii.
OS Dispatcher Pools,
sys.dm_os_dispatcher_pools (Transact-SQL)
iii.
XE Sessions,
sys.dm_xe_sessions (Transact-SQL)
iv.
XE Session Targets,
sys.dm_xe_sessions_targets (Transact-SQL)
v.
XE Session Events,
sys.dm_xe_sessions_events (Transact-SQL)
vi.
XE Session Event Actions,
sys.dm_xe_sessions_event_action (Transact-SQL)
vii.
XE Map Values,
viii.
XE Packages,
ix.
XE Objects,
x.
XE Object Columns,
xi.
XE Session Object Columns
f.
Stats :
i.
Background Job Queue,
ii.
Background Job Queue Stats
Full Text Indexing DMOs
i.
Active Catalogs
ii.
FD Hosts
iii.
Index Keywords
iv.
Index Keywords by Document
v.
Index Population
vi.
Memory Buffers
vii.
Memory Pools
viii.
Outstanding Batches
ix.
Parser
x.
Population Ranges
Peripheral DMO
a.
CLR :
i.
CLR App Domains,
ii.
CLR Loaded Assembles,
iii.
CLR Properties,
iv.
CLR Tasks
b.
Filestream :
i.
Filestream File IO Handles,
Menunjukkan file transaksi terbuka yang sedang dikerjakan
sys.dm_filestream_file_io_handles (Transact-SQL)
ii.
Filestream File IO Requests
Menampilkan file input dan output yang sedang diminta
sys.dm_filestream_file_io_requests (Transact-SQL)
c.
Service Broker :
i.
Broker Activated Tasks,
ii.
Broker Connections,
iii.
Broker Forwaded Messages,
iv.
Broker Queue Monitors,
v.
QN Subscription
d.
XML :
i.
XML Handles
Sys.dm_exec_xml_handles (Transact-SQL)
Tidak ada komentar:
Posting Komentar