بهینه سازی عملکرد RAM
آموزش پیشرفته SQL Server (جلسه نهم) - بهینه سازی عملکرد RAM
بهینه سازی عملکرد RAM، قسمتی از آموزش پیشرفته SQL Server است، پیشنهاد می شود قبل از مطالعه ی بهینه سازی عملکرد RAM، قسمت های قبلی را مرور فرمایید.
بهینه سازی عملکرد RAM
در ابتدا قصد داریم نحوه ی مانیتور کردن RAM را آموزش دهیم و قبل از هر چیزی باید با چند اصطلاح آشنا شوید.
- نحوه ی استفاده از RAM توسط سیستم عامل
- Page File چیست؟
- بررسی مفهوم Buffer در SQL Server
در ادامه به توضیح هر کدام از موارد بالا خواهیم پرداخت.
1- نحوه ی استفاده از RAM توسط سیستم عامل
زمانی که کاربر، تقاضای اجرای یک برنامه را دارد، سیستم عامل ابتدا در حافظه RAM بدنبال آن می گردد و اگر آنرا پیدا نکرد، ابتدا اطلاعات برنامه را از دیسک به RAM منتقل کرده و سپس آنرا اجرا می نماید.
2- Page File چیست؟
Page File همان حافظه مجازی یا Virtual Memory است.
در صورتیکه فضای RAM کافی نباشد، سیستم عامل از Page File برای اجرای برنامه ها استفاده خواهد کرد.
اما محل نگهداری داده های Page File بر روی دیسک است.
محل ایجاد Page File ها بصورت پیشفرض همان محلی است که فایل های سیستم عامل قرار دارد. (درایوی که سیستم عامل روی آن نصب شده است) و پیشنهاد می شود فضای Page File را 1.5 برابر ظرفیت Ram در نظر بگیرید.
برای تغیر تنظیمات Page File یا همان حافظه مجازی در Winsows 7 به مطلب روبرو مراجعه فرمایید: حافظه مجازی چیست؟
3- بررسی مفهوم Buffer در SQL Server
Buffer فضایی از حافظه RAM است که در اختیار SQL Server قرار می گیرد.
توسط Buffer Manager فضای Buffer مدیریت می شود.
اندازه Buffer مدام در حال کم و زیاد شدن است.
فضای Buffer به بخش های مختلفی تقسیم می شود.
لیست Counterها یا شمارنده های مهم حافظه RAM
در اینجا قصد داریم با استفاده از برنامه Performance Monitor حافظه RAM را مانیتور کنیم. بنابراین قبل از هر چیز باید با Counterها یا شمارنده هایی که برای این منظور می توان استفاده نمود، آشنا شد.
Counterهای لیست شده در زیر، همه برای مشخص کردن عملکرد و کارایی حافظه RAM استفاده می شوند:
- Memory : Available Bytes
- Memory : Pages/sec
- Memory : Pages Faults/sec
- Paging File : % Usage
- SQL Server : Buffer Manager : Buffer Cache Hit Ratio
- SQL Server : Buffer Manager : Page Life Expectancy
- SQL Server : Buffer Manager : Check Points Pages/sec
- SQL Server : Buffer Manager : Lazy Write/sec
- SQL Server : Memory Manager : Memory Grants Pending
در ادامه به توضیح مختصر هر کدام از موارد بالا خواهیم پرداخت.
1- Memory : Available Bytes
Memory، نام Object این Counter است.
این Counter مقدار حافظه فیزیکی موجود که می توان بالافاصله به یک فرآیند تخصیص داد را مشخص می کند.
توجه: اگر مقدار این Counter بزرگتر از 100 باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
2- Memory : Pages/sec
Memory، نام Object این Counter است.
این Counter تعداد دفعاتی که داده درخواستی در RAM موجود نبوده و باید برای دسترسی به آن به دیسک مراجعه کرد را مشخص می کند.
توجه: اگر مقدار میانگین این Counter کمتر از 50 باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
3- Memory : Pages Faults/sec
Memory، نام Object این Counter است.
اگر برنامه ای نیاز به داده ای داشته باشد که در حافظه RAM نیست و باید از Virtual Memory واکشی شود یک Page Fault رخ داده است.
توجه: بدست آوردن مقدار مناسب برای این Counter، نیازمند بررسی سایر Counterها دارد.
4- Paging File : % Usage
Paging File، نام Object این Counter است.
این Counter، درصد استفاده سرور از Page File را مشخص می کند.
توجه: اگر مقدار این Counter کمتر از 70 باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
5- SQL Server : Buffer Manager : Buffer Cache Hit Ratio
SQL Server : Buffer Manager، نام Object این Counter است.
این Counter، درصد Pageهایی که در Buffer Pool موجود است و نیاز به خواندن آنها از دیسک نمی باشد را مشخص می کند.
توجه: اگر مقدار میانگین این Counter بزرگتر از 90 باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
6- SQL Server : Buffer Manager : Page Life Expectancy
SQL Server : Buffer Manager، نام Object این Counter است.
این Counter، طول عمر Page در Buffer Pool را مشخص می کند.
توجه: اگر مقدار میانگین این Counter بزرگتر از 300 ثانیه باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
7- SQL Server : Buffer Manager : Check Points Pages/sec
SQL Server : Buffer Manager، نام Object این Counter است.
این Counter، تعداد Pageهایی که طی عملیات Checkpoint در دیسک نوشته می شد را مشخص می کند. هر عملیاتی بر روی داده های حافظه RAM که منجر به تغیر آنها شود باعث قرار گرفتن علامت Checkpoint بر روی آنها می شود.
توجه: اگر مقدار میانگین این Counter کمتر از 30 باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
8- SQL Server : Buffer Manager : Lazy Write/sec
SQL Server : Buffer Manager، نام Object این Counter است.
این Counter، تعداد Pageهایی که طی عملیات Lazy Write در دیسک نوشته می شود را مشخص می کند. عملیات Lazy Write مانند Checkpoint است با این تفاوت که زمانی که داده های تغیر یافته Page به دیسک منتقل شد، فوراً از حافظه RAM نیز حذف خواهند شد.
توجه: اگر مقدار میانگین این Counter کمتر از 20 باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
9- SQL Server : Memory Manager : Memory Grants Pending
SQL Server : Memory Manager، نام Object این Counter است.
این Counter، تعداد پروسس هایی که منتظر استفاده از حافظه هستند را مشخص می کند.
توجه: اگر مقدار میانگین این Counter صفر باشد می توان گفت که حافظه RAM بصورت نرمال در حال کار است.
در ادامه آموزش برنامه Performance Monitor خواهید دید ...!
با خرید جلسه 8 از بسته آموزشی "افزایش کارآیی پایگاه داده" موارد زیر را خواهید دید:
- توضیح کامل در مورد تمام Counter های مربوط به حافظه RAM
- و ...
دسترسی به موارد آموزشی بالا در بسته خریداری شده
- شماره جلسه: 9
- نام فایل ویدئو: 03
- فرمت فایل: mp4.
نقطه شروع بحث بالا (برنامه Performance Monitor) در ویدئو: 00:00
برای خرید و دانلود کامل آموزش پیشرفته SQL Server کلیک کنید.
- نوشته شده توسط امیر پهلوان صادق
- بازدید: 9198