ورود

View Full Version : ساخت ایندکس مناسب



aliasghar
پنج شنبه 19 شهریور 1383, 20:17 عصر
یک تاپیک به نام "جستجوی سریع" هست که روشهای ساخت بهترین ایندکس های NC را شرح داده

میشه این موضوع را کاملتر کنید و باز هم اگر روشی برای پیدا کردن ایندکسهای لازم
برای بالا بردن Performance سیستم هست بیان کنید

در ضمن در TSQL ابزار show Execution plan هست که مناسب بودن ایندکسها را برای اجرای یک query نمایش میده ولی تجزیه و تحلیل این گزارشها را هیچ جا (حداقل در کتابهای فارسی) توضیح نداده. اگه میشه روش استفاده از این ابزار را هم به من یاد بدین


باز هم ممنون

AminSobati
جمعه 20 شهریور 1383, 00:46 صبح
دوست عزیزم،
نمایش Exec Plan در حقیقت لابراتواری هست که الگوریتم کار Query Optimizer رو نشون میده. شما میتونین ایندکسهای مختلف روی جدول رو آزمایش کنین و نحوه تاثیرش در اینکه Query Optimizer چگونه بهترین راه اجرای Query رو انتخاب میکنه بررسی کنید. با این کار درک بسیار خوبی از ایندکس پیدا میکنید.
اما یک استفاده بی نظیر که از این ابزار میشه کرد اینه که گاها شما دو یا چند روش برای نوشتن یک Query به نظرتون میرسه اما دقیقا نمیتونین تخمین بزنید که کدوم از Performance بهتری برخورداره(مثلا یکی با Join و یکی با Subquery که همشون قراره یک نتیجه برگردونند). در این شرایط، اون Queryها رو در Query Analzyer بنویسید و همگی رو با هم اجرا کنین. در نمایش Exec Plan، عبارت Query Cost که بالای هر Plan بر حسب درصد نمایش داده میشه، یک معیار برای انتخاب Query بهتر هستش (طبیعتا: کمترین=بهترین).
برای اینکه بدونین هر Icon که در Plan میبینید چه معنی داره، عبارت:
Graphically Displaying the Execution Plan Using SQL Query Analyzer
رو در قسمت Search در Books Online وارد کنین. در نتیجه جستجو، اولین آیتم باید لیست همه این Iconها باشه.
در Enteprise Manager از Index Tuning Wizard میتونین استفاده کنین تا ایندکسهای مورد نیاز رو بهتون پیشنهاد کنه.
در مورد ایندکسها، Topic که اسم بردین اطلاعات خوبی داره:
http://www.barnamenevis.org/forum/viewtopic.php?t=11870
اگر ابهامی هست، بفرمایید تا بیشتر توضیح داده بشه.
موفق باشید،
امین ثباتی MCSD