Re: Clarification on Expression indexes - Mailing list pgsql-general

From Tom Lane
Subject Re: Clarification on Expression indexes
Date
Msg-id 1403342.1592346059@sss.pgh.pa.us
Whole thread Raw
In response to Clarification on Expression indexes  (Koen De Groote <kdg.dev@gmail.com>)
List pgsql-general
Koen De Groote <kdg.dev@gmail.com> writes:
>> Index expressions are relatively expensive to maintain, because the derived
>> expression(s) must be computed for each row upon insertion and whenever it
>> is updated

> I'd like to get an idea on "relatively expensive".

It's basically whatever the cost of evaluating that expression is,
plus the normal costs of index insertion.  If the expression is
something built-in like sin(x), probably the evaluation cost is
negligible ... but with a user-defined function in SQL or some PL,
maybe not so much.

In any case, the real question is "how many expression evaluations am I
going to save over the life of the row, versus how many I pay up-front?"
You didn't address how many queries would benefit from having the index,
so the question is unanswerable with just these facts.

            regards, tom lane



pgsql-general by date:

Previous
From: Koen De Groote
Date:
Subject: Clarification on Expression indexes
Next
From: Toomas Kristin
Date:
Subject: Conflict with recovery on PG version 11.6