From 9e9a844f551249d4594894f683a5f0a1d9b73431 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 17 Dec 2005 16:43:11 +0000 Subject: [PATCH] Add: * Allow star join optimizations While our bitmap scan allows multiple indexes to be joined to get to heap rows, a star joins allows multiple dimension _tables_ to be joined to index into a larger main fact table. The join is usually performed by either creating a cartesian product of all the dimmension tables and doing a single join on that product or using subselects to create bitmaps of each dimmension table match and merge the bitmaps to perform the join on the fact table. --- doc/TODO | 11 ++++++++++- doc/src/FAQ/TODO.html | 11 ++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/doc/TODO b/doc/TODO index 96f230078e..1b9b4f83de 100644 --- a/doc/TODO +++ b/doc/TODO @@ -2,7 +2,7 @@ PostgreSQL TODO List ==================== Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us) -Last updated: Sat Dec 17 09:18:30 EST 2005 +Last updated: Sat Dec 17 11:43:02 EST 2005 The most recent version of this document can be viewed at http://www.postgresql.org/docs/faqs.TODO.html. @@ -1028,6 +1028,15 @@ Optimizer / Executor * Log statements where the optimizer row estimates were dramatically different from the number of rows actually found? +* Allow star join optimizations + + While our bitmap scan allows multiple indexes to be joined to get + to heap rows, a star joins allows multiple dimension _tables_ to + be joined to index into a larger main fact table. The join is + usually performed by either creating a cartesian product of all + the dimmension tables and doing a single join on that product or + using subselects to create bitmaps of each dimmension table match + and merge the bitmaps to perform the join on the fact table. Miscellaneous Performance diff --git a/doc/src/FAQ/TODO.html b/doc/src/FAQ/TODO.html index 3768d5e9d5..ef8a024fb1 100644 --- a/doc/src/FAQ/TODO.html +++ b/doc/src/FAQ/TODO.html @@ -8,7 +8,7 @@

PostgreSQL TODO List

Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
-Last updated: Sat Dec 17 09:18:30 EST 2005 +Last updated: Sat Dec 17 11:43:02 EST 2005

The most recent version of this document can be viewed at
http://www.postgresql.org/docs/faqs.TODO.html. @@ -933,6 +933,15 @@ first.

  • Log statements where the optimizer row estimates were dramatically different from the number of rows actually found? +
  • Allow star join optimizations +

    While our bitmap scan allows multiple indexes to be joined to get + to heap rows, a star joins allows multiple dimension _tables_ to + be joined to index into a larger main fact table. The join is + usually performed by either creating a cartesian product of all + the dimmension tables and doing a single join on that product or + using subselects to create bitmaps of each dimmension table match + and merge the bitmaps to perform the join on the fact table. +

  • Miscellaneous Performance

    -- 2.40.0