Re: Multicolumn index for single-column queries?

From: Ron <ronljohnsonjr(at)gmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Multicolumn index for single-column queries?
Date: 2019-04-18 13:24:17
Message-ID: 59f265b2-192a-33cd-7b18-d93c068e83e3@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 4/18/19 2:14 AM, Andreas Kretschmer wrote:
>
>
> Am 18.04.19 um 08:52 schrieb rihad:
>> Hi. Say there are 2 indexes:
>>
>>     "foo_index" btree (foo_id)
>>
>>     "multi_index" btree (foo_id, approved, expires_at)
>>
>>
>> foo_id is an integer. Some queries involve all three columns in their
>> WHERE clauses, some involve only foo_id.
>> Would it be ok from general performance standpoint to remove foo_index
>> and rely only on multi_index? I know that
>> PG would have to do less work updating just one index compared to
>> updating them both, but wouldn't searches
>> on foo_id alone become slower?
>
> it depends .
>
> it depends on the queries you are using, on your workload. a
> multi-column-index will be large than an index over just one column,
> therefore you will have more disk-io when you read from such an index.

But two indexes are larger than one index, and updating two indexes requires
more disk IO than updating one index.

(Prefix compression would obviate the need for this question.  Then your
multi-column index would be *much* smaller.)

--
Angular momentum makes the world go 'round.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Gavin Flower 2019-04-18 13:45:43 Re: Multicolumn index for single-column queries?
Previous Message Laurenz Albe 2019-04-18 08:40:16 Re: Multicolumn index for single-column queries?