Tez No İndirme Tez Künye Durumu
199358
A C++ implementation and evaluation of alternative plan generation for multiple query optimization / Çoklu sorgu optimizasyonu için C++ dilinde alternatif plan üretme metotlarının gerçekleştirilmesi ve karşılaştırılması
Yazar:DİLİXİATİ ABUDULA
Danışman: DOÇ. DR. AHMET COŞAR
Yer Bilgisi: Orta Doğu Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Konu:Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin:
Onaylandı
Yüksek Lisans
İngilizce
2006
53 s.
Bu tezde çoklu sorgu optimizasyonu(ÇSO) için alternatif plan üretme yöntemleriaraştırılmış ve C++ programlama dilinde kodlanarak gerçekleştirilmiştir. ÇokluSorgu Optimizasyonu bir ilişkisel veritabanı üzerinde çalıştırılacak bir sorgukümesinin toplam çalıştırılma süresini en aza indirmeyi amaçlar. Konvansiyonel teksorgu eniyilemesinde sadece bir adet ilişkisel veritabanı sorgusunun işletmemaliyetinin en aza indirilmesi amaçlanır. Tek bir sorgu eniyilemesi için ilişkiselveritabanında tablolara erişmek için kullabilecek alternatif yöntemler(sıradan,endeksli, vs.) ve aynı zamanda birden fazla tablo üzerinde sorgulama yapılıyorsabirleştirme (join) operasyonu için kullanılabilecek alternatif birleştirme yöntemleri(içiçe-döngü, sırala-birleştir, ve karıştır-birleştirme) incelenmeli ve en kısa zamandasonucu verecek yöntemler seçilmelidir. Seçilecek birleştirme yöntemi elde bulunanendekslere, ana bellek miktarına, sorgu sonucunun SORTED BY ile sıralı olmasıistenmesi durumuna, üstünde işlem yapılacak tabloların büyüklüğüne, ve birçokbaşka faktöre bağlı olarak değişecektir. Çoklu sorgu eniyilemesi için basit biryöntem, her sorgu için tek başına en iyi yöntemi belirlemek ve bir plan üretmek,sonra da bir ÇSO algoritması ile bu planlar arasındaki ortak görevlerin belirlenerekbütün sorguların cevaplarını üretecek bir ortak planın üretilmesidir. .Ancak buyönemde elde edilebilecek yararlar sınırlı olacaktır, çünkü her bir sorgu için tekbaşına en ucuz maliyetli olan plan aslında diğer planlarla olabilecek paylaşımlarıyeterince kullanmıyor olabilir, bu da olası en düşük maliyetli ortak planınbulunmasını engeleyecektir. Bu yöntemlerin arasında karşılaştırma yapmak vehangisinin daha iyi sonuçlar ürettiğini görebilmek için deneyler yapılmıştır.Keywords: İlişkisel Veritabanı, Sorgu Eniyilemesi, Çoklu Sorgu Eniyilemesi,Alternatif Plan Üretimi.
In this thesis, alternative plan generation methods for multiple queryoptimization(MQO) are introduced and an implementation in the C++programming.language has been developed. Multiple query optimization, aims tominimize the total cost of executing a set of relational database queries. Intraditional single query optimization only the cost of execution of a single relationaldatabase query is minimized. In single query optimization a search is performed toinvestigate possible alternative methods of accessing relational database tables andalternative methods of performing join operations in the case of multi-relationqueries where records from two or more relational tables have to be broughttogether using one of the join algortihms (e.g. nested loops, sort merge, hashjoin,etc). The choice of join method depends on the availability of indexes, amountof available main memory, the existence of ORDER BY clause for sorted output,the sizes of involved relations, many other factors. A simple way of performingmultiple query optimization is to take the query execution plans generated for eachof the queries as input to a MQO algorithm, and then try to identify common tasksin those plans using the MQO algorithm. However, this approach will reduce theachievable benefits since a more expensive execution plan (thus discarded by asingle query optimizer) could have more common operations with other queryexecution plans, resulting in a lower total cost for MQO. .For this purpose we willintroduce several methods for generating such potentially beneficial alternativequery execution plans and experimentaly evaluate and compare their performances..Keywords: Relational Database, Query Optimization, Multiple Query Optimization,Alternative Plan Generation.