From: Carlo Stonebanks <stonec.register@sympatico.ca>
To: pgsql-performance@postgresql.org
Subject: Re: Performace Optimization for Dummies
Date: Tue, 3 Oct 2006 05:36:23 -0400
Message-ID: <eftaus$goe$1@news.hub.org> (raw)
References: <efgu4v$276m$1@news.hub.org>
<451D0F67.4040309@logix-tt.com>
<efsju4$1fvi$1@news.hub.org>
<45221C1F.3010908@logix-tt.com>
> Maybe "group by", "order by", "distinct on" and hand-written functions
> and aggregates (like first() or best()) may help.
We use these - we have lexical analysis functions which assign a rating to
each row in a set, and the likelyhood that the data is a match, and then we
sort our results.
I thought this would be the cause of the slowdowns - and it is, but a very
small part of it. I have identified the problem code, and the problems are
within some very simple joins. I have posted the code under a related topic
header. I obviously have a few things to learn about optimising SQL joins.
Carlo
>
> You could combine all relevant columns into an user-defined compund
> type, then group by entity, and have a self-defined aggregate generate
> the accumulated tuple for each entity.
>
> Markus
> --
> Markus Schaber | Logical Tracking&Tracing International AG
> Dipl. Inf. | Software Development GIS
>
> Fight against software patents in Europe! www.ffii.org
> www.nosoftwarepatents.org
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: explain analyze is your friend
>
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: stonec.register@sympatico.ca
Subject: Re: Performace Optimization for Dummies
In-Reply-To: <eftaus$goe$1@news.hub.org>
* 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