بهینه ساز پرسوجو چیست؟
بهینهساز پرسوجو از اهمیت زیادی برای پایگاه داده ارتباطی برخوردار است، مخصوصا برای اجرای دستورات پیچیده SQL . یک بهینه ساز پرسوجو بهترین استراتژی بر اجرای هر پرسوجو را تعیین میکند.
بهینهساز پرس و جو به عنوان مثال انتخاب میکند آیا از شاخص برای یک پرسوجو مشخص استفاده کند یا نه، وکدام تکنیک الحاق هنگامی که جداول با هم الحاق میشوند استفاده شود.
این تصمیم تاثیری بسیار زیادی بر روی کارآیی SQL دارد، و بهینهسازی پرسوجو یک تکنولوژی کلیدی بر هر کاربردی است، از سیستمهای قابل استفاده (Operatianal system) تا انبارههای دادهای (Data warehause) و سیستمهای تحلیل (analysis systems) تا سیستمهای مدیریت محتویات (canternt – management) .
بهینهساز پرسوجو برای برنامههای کاربردی و کاربران نهایی کاملا ناپیدا است . از آنجا که برنامههای کاربردی ممکن است هر SQL پیچیدهای راتولید کنند، بهینه سازها پرس و جو باید فوقالعاده سطح بالا و قدرتمند باشد.
برای مطمئن شدن به ایجاد یک کارآیی خوب. برای مثال بهینه سازهای دستورات SQL را تغییر شکل میدهد، به دلیل این که این دستورات میتوانند به معادلهایی تبدیل شوند اما با کارآیی بالاتر.
بهینهسازهای جستجو معمولا بر مبنای هزینه میباشند. در یک استراتژی بهینه سازی بر مبنای هزینه، طرحهای اجرایی چندگانهای برای یک پرس و جو شخص تولید میشود، و آنگاه یک هزینه تخمینی برای هر طرح محاسبه میشود. بهینه ساز پرسوجو طرحی که دارای کمترین هزینة تخمینی است را انتخاب میکند.
بهینهسازی پرس وجو
• بهبود کارآیی پرس وجو به صورت خودکار
• بهبود به معنی تضمین بهینه بودن نیست
مراحل فرآیند بهینه سازی
• انتخاب یک نمایش داخلی (internal representation)
• اعمال تغییرات لازم جهت بهبود کارآیی
• انتخاب رویههای دسترسی سطح پایین به دادهها
• تولید طرحهای اجرایی پرس وجو و تخصیص هزینه به آنها
• انتخاب یک طرح اجرایی با کمترین هزینه
درختهای پرسوجو
نمایش درخت عبارت جبر رابطهای با شرایط:
1. پیمایش میانوندی درخت عبارت اصلی را تولید کند.
2. عملگرهای دوتایی موجود – 0 U,X میباشند.
3. عملگرهای یکتایی موجود میباشند.
4. همه برگها دردرخت رابطهای پایه ای میباشند.
مثال 1:
مثال 2 :
تبدیلات (Tranformations)
طراحی دستکاریهای جبری و معنایی جهت دوری از انجام اعمال هزینه بری باشد.
دستکاریهای جبری
عبارت رابطهای E3,E2,E1 را در نظر بگیرید.
قوانین تبدیل زیر برای حاصلضرب نمایش داده شدهاند اما میتوان آنها را جهت انواع دیگری از عملیات الحاق به کار برد:
1ـ قانون جابهجایی
2ـ قانون شرکتپذیری
3ـ آبشار تصاویر (Cascade of projection)
4- آبشار انتخابها (Cascade of selections)
5ـ تبدیل عملگر انتخاب و عملگر تصویر (project)
اگر شرط F تنها با صفات ضرب درگیر باشد آنگاه
6ـ تبدیل عملگرهای انتخاب به عملگر ضرب متقابل (Cross product)
اگر شرط F تنها با صفات E1 درگیر باشد آنگاه
اگر F برابر باشد با حاصل البته به شرط این که F1 به E1 وابسته باشد و F2 به E2 واسته باشد آنگاه
7ـ تبدیل عملگر انتخاب به عملگر اجتماع (Union)
8ـ تبدیل عملگر انتخاب به عملگر تفاضل (Difference)
فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد
تعداد صفحات این مقاله 110 صفحه
پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید
دانلودمقاله Profiler برای مدیریت Sql Server