From: | Gregory Stark <stark(at)enterprisedb(dot)com> |
---|---|
To: | "Bramandia Ramadhana" <bramandia(at)gmail(dot)com> |
Cc: | "Heikki Linnakangas" <heikki(dot)linnakangas(at)enterprisedb(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Block nested loop join |
Date: | 2008-10-10 09:27:01 |
Message-ID: | 871vyo4x7e.fsf@oxford.xeocode.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
"Bramandia Ramadhana" <bramandia(at)gmail(dot)com> writes:
> Thanks for the clarifications.
>
> Just for curiosity, is there any reason of not having block nested-loop join
> implementation? Is it rarely useful?
Oh, actually it occurs to me that we do implement something analogous to a
degenerate block nested loop where we materialize one side of the nested loop.
It looks "backward" since the materialized side is the "inner" side of the
loop but it's basically equivalent to a block nested loop with the entire
outer side in a single block.
So the use case of a real block nested loop would be doing a cartesian join of
two large tables where neither fits in RAM. That does seem like it might be
kind of narrow given how large the output would be.
But we won't know unless someone does the experiment.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
Ask me about EnterpriseDB's Slony Replication support!
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2008-10-10 09:51:53 | latestCompletedXid |
Previous Message | Grzegorz Jaskiewicz | 2008-10-10 09:17:02 | Re: head's linking problem |