From: Mischa Sandberg <mischa.sandberg@telus.net>
To: Bruce Momjian <pgman@candle.pha.pa.us>
Cc: pgsql-general@postgresql.org
Subject: Re: [PERFORM] "Hash index" vs. "b-tree index" (PostgreSQL
Date: Tue, 10 May 2005 19:02:02 -0700
Message-ID: <1115776922.4281679a8e67f@webmail.telus.net> (raw)
In-Reply-To: <200505110151.j4B1pnt16211@candle.pha.pa.us>
References: <200505110151.j4B1pnt16211@candle.pha.pa.us>
Quoting Bruce Momjian <pgman@candle.pha.pa.us>:
>
> Is there a TODO anywhere in this discussion? If so, please let me
> know.
>
Umm... I don't think so. I'm not clear on what TODO means yet. 'Up for
consideration'? If a "TODO" means committing to do, I would prefer to
follow up on a remote-schema (federated server) project first.
...
> > If there were room for improvement, (and I didn't see it in the
> source)
> > it would be the logic to:
> >
> > - swap inner and outer inputs (batches) when the original inner
> turned
> > out to be too large for memory, and the corresponding outer did
> not. If
> > you implement that anyway (complicates the loops) then it's no
> trouble
> > to just hash the smaller of the two, every time; saves some CPU.
> >
> > - recursively partition batches where both inner and outer input
> batch
> > ends up being too large for memory, too; or where the required
> number of
> > batch output buffers alone is too large for working RAM. This is
> only
> > for REALLY big inputs.
> >
> > Note that you don't need a bad hash function to get skewed batch
> sizes;
> > you only need a skew distribution of the values being hashed.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: mischa.sandberg@telus.net, pgman@candle.pha.pa.us, pgsql-general@postgresql.org
Subject: Re: [PERFORM] "Hash index" vs. "b-tree index" (PostgreSQL
In-Reply-To: <1115776922.4281679a8e67f@webmail.telus.net>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox