Re: Query using SeqScan instead of IndexScan

Поиск
Список
Период
Сортировка
Искать
От
Brendan Duddridge
Тема
Re: Query using SeqScan instead of IndexScan
Дата
Msg-id
95C1A48B-A76F-4F9B-B5EE-0BFAF8873067@clickspace.com
Ответ на
Список
Дерево обсуждения
Query using SeqScan instead of IndexScan Brendan Duddridge <brendan@clickspace.com>
Re: Query using SeqScan instead of IndexScan Josh Berkus <josh@agliodbs.com>
Re: Query using SeqScan instead of IndexScan "Jim C. Nasby" <jnasby@pervasive.com>
Re: Query using SeqScan instead of IndexScan Brendan Duddridge <brendan@clickspace.com>
Re: Query using SeqScan instead of IndexScan "chris smith" <dmagick@gmail.com>
Re: Query using SeqScan instead of IndexScan "Jim C. Nasby" <jnasby@pervasive.com>
Re: Query using SeqScan instead of IndexScan "chris smith" <dmagick@gmail.com>
Re: Query using SeqScan instead of IndexScan "chris smith" <dmagick@gmail.com>
Re: Query using SeqScan instead of IndexScan Alvaro Herrera <alvherre@commandprompt.com>
Re: Query using SeqScan instead of IndexScan Mark Kirkwood <markir@paradise.net.nz>
Re: Query using SeqScan instead of IndexScan Tom Lane <tgl@sss.pgh.pa.us>
Re: Query using SeqScan instead of IndexScan Brendan Duddridge <brendan@clickspace.com>
Re: Query using SeqScan instead of IndexScan Jim Nasby <jnasby@pervasive.com>
Re: Query using SeqScan instead of IndexScan Brendan Duddridge <brendan@clickspace.com>
Re: Query using SeqScan instead of IndexScan Brendan Duddridge <brendan@clickspace.com>
Hi Jim,

from SELECT * FROM pg_stats WHERE tablename='table' AND  
attname='category_id'

I find correlation on category_product for category_id is 0.643703

Would setting the index on category_id to be clustered help with this?

Thanks,

____________________________________________________________________
Brendan Duddridge | CTO | 403-277-5591 x24 |  brendan@clickspace.com

ClickSpace Interactive Inc.
Suite L100, 239 - 10th Ave. SE
Calgary, AB  T2G 0V9

http://www.clickspace.com

On Apr 1, 2006, at 8:32 AM, Jim C. Nasby wrote:

> On Sat, Apr 01, 2006 at 11:23:37AM +1000, chris smith wrote:
>> On 4/1/06, Brendan Duddridge  wrote:
>>> Hi Jim,
>>>
>>> I'm not quite sure what you mean by the correlation of category_id?
>>
>> It means how many distinct values does it have (at least that's my
>> understanding of it ;) ).
>
> Your understanding is wrong. :) What you're discussing is n_distinct.
>
> http://www.postgresql.org/docs/8.1/interactive/view-pg-stats.html
>
> correlation: "Statistical correlation between physical row ordering  
> and
> logical ordering of the column values. This ranges from -1 to +1. When
> the value is near -1 or +1, an index scan on the column will be
> estimated to be cheaper than when it is near zero, due to reduction of
> random access to the disk. (This column is NULL if the column data  
> type
> does not have a < operator.)"
>
> In other words, the following will have a correlation of 1:
>
> 1
> 2
> 3
> ...
> 998
> 999
> 1000
>
> And this is -1...
>
> 1000
> 999
> ...
> 2
> 1
>
> While this would have a very low correlation:
>
> 1
> 1000
> 2
> 999
> ...
>
> The lower the correlation, the more expensive an index scan is,  
> because
> it's more random. As I mentioned, I believe that the current index  
> scan
> cost estimator is flawed though, because it will bias heavily against
> correlations that aren't close to 1 or -1.
>
> So, what does
>
> SELECT * FROM pg_stats WHERE tablename='table' AND  
> attname='category_id';
>
> show?
> -- 
> Jim C. Nasby, Sr. Engineering Consultant      jnasby@pervasive.com
> Pervasive Software      http://pervasive.com    work: 512-231-6117
> vcard: http://jim.nasby.net/pervasive.vcf       cell: 512-569-9461
>
> ---------------------------(end of  
> broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
>                http://archives.postgresql.org
>

В списке pgsql-performance по дате отправления
От: Jim C. Nasby
Дата:
От: Merlin Moncure
Дата:
FAQ