آموزش پیشرفته SQL Server (جلسه سوم) - بررسی مفهوم SCAN

بررسی مفهوم SCAN ، قسمتی از آموزش پیشرفته SQL Server است، پیشنهاد می شود قبل از مطالعه ی بررسی مفهوم SCAN ، قسمت های قبلی را مطالعه فرمایید.


SCAN به چه معناست؟

به جستجوی جدول برای یافتن داده ی خاص گفته می شود که بر اساس اینکه این جدول از نوع Heap باشد یا بر روی آن Index تعریف شده باشد نوع آن متفاوت است.


انواع SCAN:

  1. Table Scan:مفهوم SCAN
    • در این نوع SCAN کل رکوردهای جدول مورد بررسی قرار می گیرند. Table Scan معمولا به چند دلیل رخ می دهد ولی دلایل اصلی آن عبارتند از این که جدول یا از نوع Heap بوده و فاقد هر نوع Index است و یا Index های مفیدی روی جدول تعریف نشده باشد و Optimizer مجبور به جستجوی همه ردیفهای جدول برای اجرای Query شود. دلیل دیگر Query است که به ازای اجرای آن همه ردیفهای جدول بازیابی می شود و در اینصورت چه Index موجود باشد و چه نباشد Optimizer بهترین کار را SCAN همه ردیفهای جدول برآورد می کند.
  2. Clustered Index Scan:مفهوم SCAN
    • موقعی که SQL SERVER از طریق Clustered Index موفق به اجرای query شود باید تمامی داده های لایه leaf را جستجو نماید که به این حالت Clustered Index Scan گفته می شود.
  3. Clustered Index Seek:
    • زمانی رخ می دهد که SQL SERVER در اجرای یک Query با استفاده از یک Clustered Index یک یا تعدادی رکورد پشت سر هم را بازیابی نماید. این روش یکی از سریعترین روشهای بازیابی اطلاعات از پایگاه داده محسوب می شود.
  4. NonClustered Index Seek:
    • این نوع SCAN زمانی رخ می دهد که SQL SERVER از طریق یک NonClustered Index به یک یا مجموعه ای از رکوردهای پشت سر هم دسترسی پیدا می کند. در این زمان اگر تمامی اطلاعات لازم همراه با کلید Index در فایل آن موجود باشد (covering index) کارایی این جستجو با Clustered Index Seek تقریبا یکسان و گاهی بهتر نیز خواهد بود، در غیر اینصورت هزینه Lookup نیز به آن اضافه خواهد شد که معمولا برابر با یک Clustered Index Seek می باشد.
  5. Lookup:مفهوم SCAN
    • زمانیکه از NonClustered Index Seek استفاده می شود، در صورتیکه اطلاعات لازم برای اجرای Query همراه Index نباشد (covering index) باعث وقوع Lookup می شود. حال بر اساس اینکه جدول از چه نوعی باشد نوع Lookup نیز متفاوت خواهد بود. اگر نوع جدول از نوع Clustered Index باشد یک Key Lookup رخ خواهد داد و در صورتی که نوع جدول Heap باشد یک RID Lookup انجام می شود. برای آشنایی با این دو نوع پیشنهاد می شود فیلم آموزشی مربوط به جلسه سوم افزایش کارآیی و سرعت بانک اطلاعاتی را خریداری نمایید.

در ادامه بحث بررسی مفهوم SCAN خواهید دید...!

1-آشنایی کامل با انواع SCAN.

2- آموزش نحوه وقوع انواع SCAN همراه با مثال کاربردی.

3- آموزش تحلیل Execution Plan در رابطه با انواع SCAN.


دسترسی به موارد آموزشی بالا در بسته خریداری شده

  • شماره جلسه: 3
  • نام فایل ویدئو: 04
  • فرمت فایل: mp4.

نقطه شروع بحث بالا (بررسی مفهوم SCAN ) در ویدئو: 08:50


برای خرید و دانلود کاملآموزش پیشرفته SQL Server کلیک کنید.

READ MORE