پردازش پرسوجو (2)
توضیحات
در جلسه بیست و دوم درس پایگاه داده پیشرفته دکتر کیوانپور که از مهمترین دروس تخصصی آزمون دکترای مهندسی کامپیوتر در گرایش نرمافزار است، ادامه فصل ششم این درس با عنوان «پردازش پرسوجو» تدریس میشود. در این جلسه، استاد بعد از مرور مراحل مفهوم پردازش پرسوجو در پایگاههای داده و مراحل آن به ادامه بحث جلسه قبل یعنی الگوریتم ارزیابی عبارات جبر رابطهای (رویههای سطح پایین) بر میگردد. عملیات انتخاب (Selection Operation) و پس از آن عملیات Join مورد بحث و بررسی دقیق قرار میگیرد. چندین الگوریتم مختلف برای پیاده سازی Join معرفی میگردد: الف) Nested-loop join ب) Block nested-loop join ج) Indexed nested-loop join د) Merge-join ه) Hash-join. سپس الگوریتم Nested-loop join و به دنبال آن الگوریتم Block nested-loop join با جزئیات تدریس میشود. آنگاه در مورد چگونگی ترکیب الگوریتم ها برای عملیات مجزا به منظور ارزیابی یک عبارت کامل بحث میشود و Materialization و Pipelined evaluation و producer driven به تفصیل مورد بحث قرار داده میشوند. سپس در مورد چگونگی پیدا کردن یک پلن ارزیابی با کمترین هزینه تخمینی صحبت به میان میآید. در ادامه بهینه سازی مبتنی بر هزینه (Cost-Based Optimization) و پس از آن بهینه سازی ابتکاری (Heuristic Optimization) تشریح میگردد. در انتها یک تست کنکور دکترا در این رابطه مطرح و حل تشریحی آن ارائه میگردد.