بررسی مفهوم Cover Index
آموزش پیشرفته SQL Server (جلسه چهارم) - بررسی مفهوم Cover Index
پیشنهاد می شود قبل از مطالعه ی بررسی مفهوم Cover Index ، قسمت های قبلی را مطالعه فرمایید.
Cover Index به چه معناست؟
به طور کلی برای گنجاندن فیلدهای داخل کلید در داخل ایندکس انجام می شود و دارای خصوصیات زیر است:
- باعث حذف Lookup و در نتیجه بالا رفتن کارایی می شود.
- حجم ایندکس را افزایش می دهد
- کارایی ایندکس ها را بالا می برد.
تاثیر استفاده از Cover Index:
اضافه کردن فیلدهای غیر کلید به ایندکس
بررسی مفهوم Cover Index
CREATE NONCLUSTERED INDEX [ix_Customer_Email] ON [dbo].[Customers]
(
[Last_Name] ASC,
[First_Name] ASC
)
INCLUDE ( [Email_Address]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF,ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
توجه: Cover Index اگر به صورت درست استفاده نشود باعث سربار بالایی روی اجرای Query های جدول و در نتیجه کاهش کارایی می شود.
در ادامه با شکلهای آمده به این موضوع بهتر می پردازیم.
فرض کنید جدولی را به صورت بالا تعریف می کنیم و query زیر را روی آن اجرا می نماییم:
همانطور که در شکل زیر مشخص است مقدار هزینه IO پایین بوده و از NonClustered Index استفاده شده است
حال اجازه بدهید تا query زیر را اجرا نماییم:
با مشاهده Execution Plan مربوط به پرس و جوی بالا طبق شکل زیر می بینیم که باز هم هزینه IO پایین بوده و باز هم همچنان از NonClustered Index استفاده نموده است و این به خاطر اضافه کردن فیلد Email_Address به ایدکس می باشد.
در ادامه بحث بررسی مفهوم Cover Index خواهید دید ...!
1-آشنایی کامل با Cover Index.
2- آموزش تحلیل Execution Plan در رابطه با Cover Index.
دسترسی به موارد آموزشی بالا در بسته خریداری شده
- شماره جلسه: 4
- نام فایل ویدئو: 03
- فرمت فایل: mp4.
نقطه شروع بحث بالا (بررسی مفهوم Cover Index ) در ویدئو: 04:45
برای خرید و دانلود کامل آموزش پیشرفته SQL Server کلیک کنید.
- نوشته شده توسط محمدی
- بازدید: 7976