4 داینامیک ویو بسیار کاربردی برای Performance Tuning
در این مقاله قصد داریم 4 داینامیک ویو بسیار کاربردی و مفید رو که در جهت رفع مشکلات و مانیتورینگ آیتم های بانک اطلاعاتی استفاده می شود را معرفی کنیم .
1 – Execution Plan use Monitoring
با استفاده از داینامیک ویوی sys.dm_exec_query_stats می توان تعداد دفعات اجرای کوئری ها و مدت زمان اجرای هر کوئری را بررسی کرده و هرکدام از کوئری هایی که بیشترین زمان اجرا را داشته و همچنین بیشترین تعداد دفعات اجرا را داشته را جهت Tune نمایش دهد . در مجموع با استفاده از این داینامیک ویو می توان وضعیت Cache شده کوئری ها را بررسی کنید .
--SQLDBA.IR
SELECT * FROM
sys.dm_exec_query_stats
خروجی این کوئری به شکل زیر می باشد :
2 – Monitor Wait Statistics
جهت بررسی Wait های بوجود آمده در sql server و کسب اطلاعاتی از آنها میتوان از داینامیک ویوی sys.dm_os_wait_stats استفاده کرد به طور مثال کوئری شما منتظر اتمام فرآیند CPU یا IO بوده که اجرای آن بستگی به اتمام فرآیند IO دارد تا در صف اجرا قرار بگیرد . در مجموع Wait ها شامل انواع انتظار های کاربران است که برای ادامه کار و پردازش باید منتظر آنها بمانند .
3 – Statistics of database files
جهت مشاهده آمار های مربوط به IO یک دیتابیس می توان از داینامیک ویوی sys.dm_io_virtual_file_stats استفاده کرد . استفاده همزمان از این داینامیک ویو با دیگر Wait ها می تواند اطلاعات خیلی خوبی به شما بدهد، نتیجه کوئری زیر را می توانید در عکس مشاهده کنید .
4 – Check the Performance Counters for SQL Server
در هنگام نصب SqlServer کانتر های مربوطه نیز به Performance monitor اضافه شده که جهت بررسی و مانیتوریگ بسیاری از موارد می توان از آن استفاده کرد هم بیرون از فضای SSMS در Performance Monitor و هم توسط داینامیک ویوی sys.dm_os_performance_counters می توان استفاده کرد .
در این مقاله سعی شد چند نمونه از داینامیک ویو های پرکاربرد SQL Server را معرفی کنیم و قطعا همه شما میدانید که این 4 نمونه گوشه ای از موارد بسیار زیاد داینامیک ویو های Sql می باشد و بسیاری از شرکت های third party با استفاده از این ویو ها ابزار هایی گران قیمت را طراحی کرده و به فروش می رسانند .
در SQL Server، Dynamic Management Views (DMVs) یا Dynamic Management Functions (DMFs)، نماهایی هستند که اطلاعات در مورد وضعیت و عملکرد دیتابیسها، سرورها و مؤلفههای دیگر SQL Server فراهم میکنند. این نماها به مدیران دیتابیس و توسعهدهندگان کمک میکنند تا عملکرد سرور را نظارت کرده و مشکلات عملیاتی را تحلیل کنند. در زیر، مهمترین Dynamic Management Views در SQL Server آورده شدهاند:
1. sys.dm_exec_sessions:
– اطلاعات در مورد هر جلسه (session) فعال در سرور ارائه میدهد، از جمله اطلاعات در مورد وضعیت و اطلاعات جلسههای مختلف.
2. sys.dm_exec_connections:
– اطلاعات در مورد هر اتصال فعال به سرور، از جمله اطلاعات در مورد پروتوکل اتصال و اطلاعات شبکه.
3. sys.dm_exec_requests:
– اطلاعات در مورد هر درخواست (query) در حال اجرا، از جمله اطلاعات در مورد وضعیت اجرا و زمان باقیمانده.
4. sys.dm_os_performance_counters:
– اطلاعات مربوط به شاخصهای عملکرد (performance counters) سیستم عامل و SQL Server.
5. sys.dm_db_index_physical_stats:
– اطلاعات در مورد وضعیت فیزیکی فهرستها (indexes)، از جمله اطلاعات در مورد اندازه، توزیع، و فشردهسازی.
6. sys.dm_os_wait_stats:
– اطلاعات در مورد زمانهای انتظار مختلف که در آنها نخ متوقف شده است.
7. sys.dm_tran_locks:
– اطلاعات در مورد قفلهای موجود در دیتابیسها.
8. sys.dm_exec_query_stats:
– آمار اجمالی در مورد هر کوئری اجرا شده، از جمله زمان اجرا و تعداد اجراها.
9. sys.dm_os_memory_clerks:
– اطلاعات در مورد استفاده از حافظه توسط مؤلفههای مختلف سرور.
10. sys.dm_io_virtual_file_stats:
– اطلاعات در مورد وضعیت و عملکرد فایلهای دیتابیس از نظر I/O.
11. sys.dm_os_wait_stats:
– اطلاعات در مورد زمانهای انتظار مختلف که نخ در حال اجرا در آنها متوقف شده است.
12. sys.dm_os_sys_info:
– اطلاعات در مورد ویژگیهای سیستم عامل و سختافزار.
استفاده از این نماها به مدیران دیتابیس و توسعهدهندگان اجازه میدهد تا به صورت دقیقتر و بهتر نظارت کرده و مشکلات پرسشها و عملکرد دیتابیس را حل کنند.
دیدگاه ها 2