pdf (870 Kb) - Fachgebiet Datenbanken und Informationssysteme
pdf (870 Kb) - Fachgebiet Datenbanken und Informationssysteme
pdf (870 Kb) - Fachgebiet Datenbanken und Informationssysteme
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
3.7. PHYSISCHE OPTIMIERUNGSMÖGLICHKEITEN 35<br />
Alg. Operator Physischer Operator Komplexität<br />
✶p (R1, R2) = ✶ NestedLoop<br />
p (R1, R2) O(n 2 )<br />
= ✶ NestedLoop<br />
p (R2, R1) O(n 2 )<br />
= ✶ MergeJoin<br />
p ([SortA]R1, [SortB](R2)) O(n), [O(n · log(n))]<br />
= ✶ IndexJoin<br />
p ([HashA|T reeA](R1), O(n), [O(n · log(n))]<br />
[HashB|T reeB](R2))<br />
= ✶ HashJoin<br />
p (R1, R2) O(k · n)<br />
σp(R) = σ Rel<br />
p (R) O(n)<br />
= σ Index<br />
p (R) O(n)<br />
πl(R) = [NestedDup](π Rel<br />
l (R)) O(n · log(n))<br />
= [SortDup][SortA](π Rel<br />
l (R)) O(n · log(n))<br />
= [IndexDup][HashA|T reeA](π Rel<br />
l (R)) O(n)<br />
Tabelle 3.2: Algebraische Operatoren <strong>und</strong> die dazugehörigen physischen Implementierungen<br />
3.7 Optimierungsmöglichkeiten mit physischen<br />
Operationen<br />
(a) Eine Möglichkeit, das Speichern von Zwischenrelationen zu vermeiden, stellt<br />
das sogenannte Pipelining dar. Die Idee dabei ist, das Ergebnis einer Operation,<br />
wenn möglich, nicht zwischenzuspeichern, sondern ein berechnetes<br />
Tupel direkt an die nächste Operation zu übergeben.<br />
Wird zum Beispiel auf eine Relation zunächst eine Selektion <strong>und</strong> dann eine<br />
Projektion angewandt, so bedeutet das Pipelining, daß ein Tupel der Relation,<br />
welches die Selektionsbedingung erfüllt, nicht in ein Zwischenergebnis<br />
geschrieben wird, sondern daß es direkt an die Projektion weitergereicht,<br />
auf die benötigten Attribute projiziert <strong>und</strong> erst dann gespeichert wird.<br />
Die Schreibweise hierfür ist 〈π ◦ σ〉. Hierzu sei bemerkt, daß, falls bei einem