SQL Server :Mengenal Lebih Dekat DMO

Minggu, 15 Maret 2015

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
  1. Modular : Terstruktur, seperti bercerita
  2. Flexible : Mudah untuk digabung dengan DMO lain, View Kompatibilitas, View Katalog, dan fungsi sistem
  3. 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)
   

Indexing DMOs


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

 
Copyright © 2016. Syukur Ikhsani.
Design by Herdiansyah Hamzah. & Distributed by Free Blogger Templates
Creative Commons License