Master Thesis - ICS
Master Thesis - ICS
Master Thesis - ICS
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Computer Science Department<br />
Antonis Misargopoulos<br />
task A, computation for task B, and communication between the processors on which they<br />
reside are coordinated. Such an approach is taken in [82] which describes a compositional<br />
model for predicting lag-time in interactive virtual reality simulations.<br />
3.3 Scheduling via Dynamic Programming<br />
Extensive research has been carried out on the design, implementation and performance<br />
of parallel database systems. Teradata [94], Budda [95], HC186-16 [96], GAMMA [97],<br />
and XPRS [98] are examples of systems that were actually implemented, and many<br />
papers were written on their performance. The performance evaluation of these systems<br />
though is mainly limited to simple queries that involve no more than one or two join<br />
operations. Recent developments in the direction of nonstandard applications, the use of<br />
complex data models, and the availability of high-level interfaces tend to generate<br />
complex queries that may contain larger numbers of joins between relations.<br />
Consequently, the development of execution strategies for the parallel evaluation of<br />
multi-join queries has drawn the attention of the scientific community.<br />
A number of strategies has been proposed [99, 100, 101, 102, 103] and their<br />
performance was evaluated via simulation. However, no comparative experimental<br />
performance evaluation is available. In [93] there is a comparative performance<br />
evaluation of four execution strategies by implementing all of them on the same parallel<br />
database system, PRISMA/DB. Experiments have been done up to 80 processors. The<br />
basic strategy is to first determine an execution schedule with minimum total cost and<br />
then parallelize this schedule with one of the four execution strategies. These strategies,<br />
coming from the literature, are named: Sequential Parallel, Synchronous Execution,<br />
Segmented Right-Deep, and Full Parallel. Based on the experiments clear guidelines are<br />
given when to use which strategy.<br />
One central component of a query optimizer is its search strategy or enumeration<br />
algorithm. The enumeration algorithm of the optimizer determines which plans to<br />
enumerate, and the classic enumeration algorithm is based on Dynamic Programming.<br />
This algorithm was proposed in IBM’s System R project [145], and it is used in most<br />
query optimizers today. System R [145] is the pioneer in the area of optimization of<br />
26