لینک پرداخت و دانلود در "پایین مطلب"
فرمت فایل: word (قابل ویرایش و آماده پرینت)
تعداد صفحات:30
ما از query optimizing برای حل مسائل زیادی استفاده می کنیم. زمانی که یک query مطرح می شود، سیستم مدیریت بانک اطلاعاتی (DBMS ) می تواند از روش های مختلفی برای پردازش آن query و رسیدن به جواب استفاده کند. همه آن روش ها در نهایت یک نتیجه را تولید می کنند ولی از نظر هزینه های انجام شده مانند کل زمان مورد نیاز برای اجرا متفاوت اند. چه روشی حداقل زمان را برای اجرا نیاز دارد؟
در یک DBMS ، بهینه سازی query بسیار ضروری می باشد. هزینه انجام دو selection مختلف می تواند بسیار متفاوت باشد. برای مثال به شمای بانک اطلاعاتی زیر که ممکن است در طی این بخش از آن استفاده شود توجه نمایید :
emp (name,age,sal,dno)
dept (dno,dname,floor,budget,mgr,ano )
acnt ( ano,type,balance,bno )
bank ( bno,bname,address )
به Query ساده زیر توجه کنید :
Select name, floor
From emp, dept
Where emp.dno=dept.dno and sal>100k
ویژگیهای زیر را برای محتوا، ساختار و محیط هنگام اجرا در نظر بگیرید :
شرح پارامتر
مقدار پارامتر
تعداد صفحات emp
20000
تعداد tuple های emp
- 000
تعداد tuple های emp که sal>100K
10
تعداد صفحات dept
10
تعداد tuple های dept
100
نشانه های emp
کلاستر B + درخت روی emp.sal
( عمق سه سطحی )
نشانه های dept
کلاستر hashing روی dept.dno
) میانگین طول باکت 1.2 صفحه )
تعداد صفحات بافر
3
هزینه دسترسی به یک صفحه دیسک
ms 20
به سه روش متفاوت زیر توجه کنید :
P1 :
از طریق B + - tree تمام tuple های emp را که شرط emp.sal را ارضا می کنند پیدا می کنیم. برای هر کدام، از hashing index برای یافتن tuple های مناسب dept استفاده می کنیم. ( حلقه های تو در تو، استفاده از index روی هر دو رابطه)
مقاله Query optimizing