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 />
114<br />
Relative Kosten = 107132418<br />
Abfrageplan<br />
Call module B, which populates temp-file A.<br />
Call module F, which populates temp-file C.<br />
Read temp-file C, looping on count(PS_SUPPKEY), %SQLUPPER(P_BRAND),<br />
%SQLUPPER(P_TYPE), P_SIZE, and a counter.<br />
For each row:<br />
Output the row.<br />
module B<br />
Read index map SQLUser.PART.PSIZEIDX, looping on P_SIZE (with a given set of values) and<br />
ID.<br />
For each row:<br />
Read master map SQLUser.PART.PARTPRIMARYIDX, using the given idkey value.<br />
Read master map SQLUser.PARTSUPP.PARTSUPPPRIMARYIDX, using the given PS_PARTKEY,<br />
and looping on PS_SUPPKEY.<br />
For each row:<br />
Check distinct values for %SQLUPPER(P_BRAND), P_SIZE, and %SQLUPPER(P_TYPE)<br />
using temp-file A,<br />
subscripted by a hashing of these values.<br />
For each distinct row:<br />
Add a row to temp-file A, subscripted by the hashing,<br />
with node data of P_SIZE, %SQLUPPER(P_TYPE), %SQLUPPER(P_BRAND), and<br />
PS_SUPPKEY.<br />
Check distinct values for %SQLUPPER(P_BRAND), P_SIZE, %SQLUPPER(P_TYPE), and<br />
PS_SUPPKEY using a temp-file.<br />
For each distinct row:<br />
Update the accumulated count(PS_SUPPKEY) in temp-file A,<br />
subscripted by the hashing.<br />
module F<br />
Read temp-file A, looping on the hashing subscript.<br />
For each row:<br />
Add a row to temp-file C, subscripted by count(PS_SUPPKEY), %SQLUPPER(P_BRAND),<br />
%SQLUPPER(P_TYPE), P_SIZE, and a counter,<br />
with node data of [expression] and [expression].<br />
subquery<br />
Read master map SQLUser.SUPPLIER.SUPPLIERPRIMARYIDX, using the given idkey value<br />
Abbildung 6.15: Abfrageplan TPC-H Abfrage 16 mit zusätzlichem Index.