Copying or distributing in print or electronic forms without written permission of
Idea Group Inc. is prohibited.
called star transformation rewrites a star-join so as the dimension restrictions are
expressed as direct restrictions on the fact table column. For example, following
query containing a star-join:
SELECT dim2.dim2_attr, dim .dim _attr, dim .dim _attr, fact.fact
FROM fact, dim2, dim , dim
WHERE fact.dim2_key = dim2.dim2_key /* joins */
AND fact.dim _key = dim .dim _key
AND fact.dim _key = dim .dim _key
AND dim2.dim2_attr IN (??™c??™,??™d??™) /* dimension restrictions */
AND dim .dim _attr IN (??™e??™,??™f??™)
AND dim .dim _attr IN (??™l??™,??™m??™)
is rewritten in the following form:
SELECT ??¦ FROM fact
WHERE fact.dim2_key IN (SELECT dim2.dim2_key FROM dim2 WHERE dim2.dim2_attr IN
(???c??™,??™d??™))
AND fact.dim _key IN (SELECT dim .dim _key FROM dim WHERE dim .dim _attr IN
(???e??™,??™f??™))
AND fact.dim _key IN (SELECT dim .dim _key FROM dim WHERE AND dim .dim _attr
(???l??™,??™m??™))
In this way, the evaluation of the individual dimension restrictions takes place in the
beginning, as if these were separate queries. From this evaluation only the dimension
keys of the qualifying tuples are extracted; and for large dimensions, the results are
saved into temporary tables. In the mean time, a separate bitmap index has been
created on each fact table attribute that is a foreign key referencing a dimension
table key.
Pages:
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290