Green-IT und Datenbanken - ODBMS
Green-IT und Datenbanken - ODBMS
Green-IT und Datenbanken - ODBMS
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
6 Energieoptimierungen<br />
Name Geschlecht Familienstand<br />
Max Mustermann männlich ledig<br />
Birgit Muster weiblich verheiratet<br />
Ludwig Musterer männlich geschieden<br />
Arne Musterherr männlich ledig<br />
Tabelle 6.5: Beispieldaten für hohe Selektivität (Spalte „Geschlecht“ <strong>und</strong><br />
„Familienstand“).<br />
Name männlich weiblich verheiratet ledig geschieden<br />
Birgit Muster 0 1 1 0 0<br />
Ludwig Musterer 1 0 0 0 1<br />
Max Mustermann 1 0 0 1 0<br />
Arne Musterherr 1 0 0 1 0<br />
Tabelle 6.6: Bitmap für Tabelle hohe Selektivität.<br />
ausgeführt werden. Wird ein Bitmap-Index eingesetzt, tauscht man höheren Speicherplatzbedarf<br />
gegen effizientere Berechnungen. Der Bitmap-Index wird, wie auch<br />
der konventionelle Index, in der Klassendefinition implementiert. Der folgende Code<br />
zeigt eine Bitmap-Definition.<br />
Index Bitmap On GESCHLECHT [ Type = bitmap ];<br />
6.2.3 Index Auswahl<br />
Mit Indizes kann die Menge von Daten, die bei einer Abfrage von der Festplatte gelesen<br />
werden müssen, reduziert werden. Wir suchen in den 22 TPC-H Abfragen nach<br />
Bedingungen, die es uns ermöglichen, nicht benötigte Datensätze durch einen Index<br />
herauszufiltern. Wir können hierbei nur auf den konventionellen Index zurückgreifen,<br />
da der Bitmap-Index Rahmenbedingungen erfordert, die durch das TPC-H Schema<br />
nicht erfüllt sind. Zum einen ist der Bitmap-Index ist nur sinnvoll einsetzbar, wenn<br />
die Selektivität der zu indizierenden Spalte sehr hoch ist zum anderen beinhaltet der<br />
TPC-H Benchmark nur wenige Abfragen, die auf Spalten mit hoher Selektivität operieren.<br />
Alle diese Spalten gehören zur Tabelle lineitem die einen zusammengesetzten<br />
Primärschlüssel (vgl.6.1) haben. Laut Herstellerangabe ist es nicht möglich, auf Tabellen<br />
mit zusammengesetzten Primärschlüssel einen Bitmap-Index anzulegen.<br />
Wir analysieren bei den Abfragen die WHERE-Bedingungen, da dies der Teil einer<br />
Abfrage ist, bei dem ein Index eine effizientere Bearbeitung ermöglicht. Diese Vorgehen<br />
wird von Algorithmen genutzt, die der Suche nach optimalen Indizes dienen<br />
[Küh09]. Zur Verdeutlichung dient Abfrage 12:<br />
select<br />
l_shipmode,<br />
88