Re: array can be slow when joining?

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Volodymyr Kostyrko <c(dot)kworr(at)gmail(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: array can be slow when joining?
Date: 2010-08-30 03:53:41
Message-ID: AANLkTimiZoojA6U2xAy3-GWPzOYf5QqtQ5Tx-8UPwGQS@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Hello

if you read a some longer field - longer than 2Kb, then PostgreSQL has
to read this value from a table_toast file. see
http://developer.postgresql.org/pgdocs/postgres/storage-toast.html -
and reading have to be slower than you don't read this field.

Regards

Pavel Stehule

2010/8/29 Volodymyr Kostyrko <c(dot)kworr(at)gmail(dot)com>:
> I don't clearly understand why this happens, but when I try join some tables
> using arrays I end up with:
>
> =# explain select count(*) from urls JOIN rules ON urls.tag && rules.tag;
>                                      QUERY PLAN
> ---------------------------------------------------------------------------------------
>  Aggregate  (cost=1356.27..1356.28 rows=1 width=0)
>   ->  Nested Loop  (cost=20.33..1354.96 rows=523 width=0)
>         ->  Seq Scan on rules  (cost=0.00..1.01 rows=1 width=37)
>         ->  Bitmap Heap Scan on urls  (cost=20.33..1347.42 rows=523
> width=29)
>               Recheck Cond: (urls.tag && rules.tag)
>               ->  Bitmap Index Scan on url_tag_g  (cost=0.00..20.20 rows=523
> width=0)
>                     Index Cond: (urls.tag && rules.tag)
>
> Here tag is text[] with list of tags. Whole select takes 142 ms. It drops
> down to 42 ms when I add some conditions that strip result table to zero
> length.
>
> What am I missing? Is there any other ways to overlap those ones? Or should
> I find "any other way"?
>
> --
> Sphinx of black quartz judge my vow.
>
> --
> Sent via pgsql-performance mailing list (pgsql-performance(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-performance
>

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Greg Smith 2010-08-30 04:40:04 Re: Performance on new 64bit server compared to my 32bit desktop
Previous Message Jose Ildefonso Camargo Tolosa 2010-08-29 15:07:20 Re: Performance on new 64bit server compared to my 32bit desktop