Skip to content

Commit 9e9a844

Browse files
committed
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.
1 parent 927f576 commit 9e9a844

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

doc/TODO

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
PostgreSQL TODO List
33
====================
44
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
5-
Last updated: Sat Dec 17 09:18:30 EST 2005
5+
Last updated: Sat Dec 17 11:43:02 EST 2005
66

77
The most recent version of this document can be viewed at
88
http://www.postgresql.org/docs/faqs.TODO.html.
@@ -1028,6 +1028,15 @@ Optimizer / Executor
10281028

10291029
* Log statements where the optimizer row estimates were dramatically
10301030
different from the number of rows actually found?
1031+
* Allow star join optimizations
1032+
1033+
While our bitmap scan allows multiple indexes to be joined to get
1034+
to heap rows, a star joins allows multiple dimension _tables_ to
1035+
be joined to index into a larger main fact table. The join is
1036+
usually performed by either creating a cartesian product of all
1037+
the dimmension tables and doing a single join on that product or
1038+
using subselects to create bitmaps of each dimmension table match
1039+
and merge the bitmaps to perform the join on the fact table.
10311040

10321041

10331042
Miscellaneous Performance

doc/src/FAQ/TODO.html

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<body bgcolor="#FFFFFF" text="#000000" link="#FF0000" vlink="#A00000" alink="#0000FF">
99
<h1><a name="section_1">PostgreSQL TODO List</a></h1>
1010
<p>Current maintainer: Bruce Momjian (<a href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>)<br/>
11-
Last updated: Sat Dec 17 09:18:30 EST 2005
11+
Last updated: Sat Dec 17 11:43:02 EST 2005
1212
</p>
1313
<p>The most recent version of this document can be viewed at<br/>
1414
<a href="http://www.postgresql.org/docs/faqs.TODO.html">http://www.postgresql.org/docs/faqs.TODO.html</a>.
@@ -933,6 +933,15 @@ <h1><a name="section_20">Optimizer / Executor</a></h1>
933933
</p>
934934
</li><li>Log statements where the optimizer row estimates were dramatically
935935
different from the number of rows actually found?
936+
</li><li>Allow star join optimizations
937+
<p> While our bitmap scan allows multiple indexes to be joined to get
938+
to heap rows, a star joins allows multiple dimension _tables_ to
939+
be joined to index into a larger main fact table. The join is
940+
usually performed by either creating a cartesian product of all
941+
the dimmension tables and doing a single join on that product or
942+
using subselects to create bitmaps of each dimmension table match
943+
and merge the bitmaps to perform the join on the fact table.
944+
</p>
936945
</li></ul>
937946
<h1><a name="section_21">Miscellaneous Performance</a></h1>
938947

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy