درباره نویسنده

تورج عزیزی

تورج عزیزی

مشاوره، تحقیقات و انجام پروژه در زمینه SQL Server Performance Tuning

6 Comments

  1. Hamid J. Fard

    Hamid J. Fard

    مقاله جالب بود فقط یک مقدار پیچیده کرده اید برای کسانی که از این موضوع بی اطلاع هستند. به صورت ساده اگر Selectivity بالا باشد تعداد داده های یونیک بسیار و Optimizer ایندکس را به صورت Seek میخواند ولی اگر Selectiviy پایین باشد یعنی یک مقدار به تعداد زیادی کپی شده و Optimizer مجبور به Scan ایندکس می شود.

    به یاد داشته باشید که QO یک زمان محدودی را برای انتخاب پلن دارد Good Enough Plan به اولین پلن نسبتا خوب گفته می شود ولی به پلن ساده و کم هزینه Trival Plan گفته می شود.
    بسیار عالی!
    پاسخ دادن
  2. مسعود طاهری

    مسعود طاهری

     خیلی عالی بود.

    هدف Query Selectivity انتخاب یک ایندکس مناسب است و فرمول بدست آوردن آن
    تعداد کل رکوردهای یک فیلد / تعداد کل رکوردهای غیر تکراری یک فیلد (از چپ بخوانید)
    Selectivity بالا = افزایش کارایی + استخراج تعداد رکوردهای کمتر
    یک Selectivity ایده ال  = Unique Index و یا Primary Key می باشد
    در پایان یک کتاب خیلی عالی برای Statistics در این لینک وجود دارد حتما اون را مطالعه کنید
    پاسخ دادن
  3. تورج عزیزی

    تورج عزیزی

     جناب طاهری چرا مقاله من ناقص نشون داده شده؟

    پاسخ دادن
    1. فرید طاهری

      فرید طاهری

       سلام اوکی شد. در سیستم مقالات یکسری باگ کوچک وجود دارد که امیداورم این هفته رفع شوند. از شما بابت این مشکل عذرخواهی می کنم

      با تشکر

      پاسخ دادن
  4. محمد مزیدی

    محمد مزیدی

    خیلی عالی بود

    یه روز صبح می خواستم برم مسافرت پیش یکی از دوستام. صبح که می خواستم با ماشین حرکت  کنم بهش زنگ زدم گفتم من دارم حرکت می کنم اون از من پرسید حدوداً چه ساعتی از بعد از ظهر می رسی ؟
    چون من بعد از ظهر کاری دارم باید برم جایی کارمو انجام بدم ؟ اگر من زمان رسیدنمو با زمان کار دوستم یکسان می گفتم و اون موقع نمی رسیدم هم دوستم به کارش نمی رسید و هم من بد قول می شدم . اگر من زمان رسیدنمو دیرتر می گفتم ولی زودتر می رسیدم باعث اتلاف وقت خودم می شد . پس من از اون خواستم وضعیت ترافیک جاده رو نگاه کنه و به من بگه تا من بر اساس اون وضعیت بتونم بهش بگم .
    در دنیا Sql server هم همین حالت وجود دارد. برای اجرای پرس و جویی تعداد رکورد های بازگشتی تخمین زده می شود (از روی آمارها) . و نقشه اجرایی بهینه در کمترین زمان ممکن ساخته می شود . و از روی این نقشه پرس و جو اجرا می شود . اگر sql server تخمین اشتباهی بزند پلن انتخابی غیر بهینه می باشد و پرس وجو کند تر اجرا می شود .
    نکته :
    1- اگر جدولی دارید که تعداد رکوردهای آن بسیار زیاد است . آمارهای آن را به صورت دستی به روز کنید .
    پاسخ دادن
  5. مهران رحمتی

    مهران رحمتی

     سلام. بابت زحمات شما ممنون

    پاسخ دادن

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمامی حقوق مادی و معنوی این وب سایت متعلق به نیک آموز می باشد.
این سایت توسط تیم آموزش برنامه نویسی نیک آموز مدیریت می شود.

تقویم آموزشی دوره‌های حضوری و غیرحضوری جدید | تابستان 1399
close-image