Re: Nested loops are killing throughput

From: CG <cgg007(at)yahoo(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Nested loops are killing throughput
Date: 2006-09-19 18:59:13
Message-ID: 20060919185913.21542.qmail@web37908.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

>If packet_status is large, that seems like a perfectly reasonable plan
>to me. If not ... what data type is packet_uuid? Is its equality op
>marked mergeable or hashable?

It is of type uniqueidentifier ...

CREATE OPERATOR =(
PROCEDURE = uniqueidentifier_eq,
LEFTARG = uniqueidentifier,
RIGHTARG = uniqueidentifier,
COMMUTATOR = =,
RESTRICT = eqsel,
JOIN = eqjoinsel,
HASHES,
MERGES,
SORT1 = <,
SORT2 = <,
LTCMP = <,
GTCMP = >);

It looks like it is marked both mergable and hashable.

So what size (I have no idea what units to use to think about table size... kilobytes? pages? rows?) is "large" ... It seems like we recently stepped over that imaginary line between medium and large.

We could re-tune PostgreSQL... What settings would make sense to tweak? Sort Memory?

We could partition the tables... I understand the theory behind table partitioning and partial indexes, but I've never come across a howto or even a best practices list.

We could remove data from the table... I don't like this as much, but if that's the only way, that's the only way.

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Henry Ortega 2006-09-19 19:00:52 Make Trigger run after completion of ENTIRE transaction
Previous Message Tom Lane 2006-09-19 18:17:52 Re: Nested loops are killing throughput