Re: Synthetic keys and index fillfactor

Поиск
Список
Период
Сортировка
От Ron
Тема Re: Synthetic keys and index fillfactor
Дата
Msg-id 4efb3483-dc9d-66ec-1190-25b58d5886cb@gmail.com
обсуждение исходный текст
Ответ на Re: Synthetic keys and index fillfactor  ("David G. Johnston" <david.g.johnston@gmail.com>)
Список pgsql-admin
On 1/12/23 16:54, David G. Johnston wrote:
On Thu, Jan 12, 2023 at 3:45 PM Ron <ronljohnsonjr@gmail.com> wrote:

(This mostly pertains to recreating a PK on an existing table.)

Is there any reason to have the PK index on an ever-increasing field (for
example SERIAL, sequence or timestamp fed by clock_timestamp() at time zone
'UTC') be anything but fillfactor=100?

New records will always be added to the "lower right hand corner" of the
tree, so having 20% empty space in the rest of the tree would just waste
space (mainly buffers, but disk space could even start to add up on Very Big
Tables).


Yes, at least that is what I gather from the advice on the CREATE INDEX page.



"even a few updates or inserts will cause a sudden flood of page splits" shouldn't matter for ever-increasing PK values, since you're always filling that bottom right corner anyway.

This might be a killer if the applications update many indexed fields:
https://www.postgresql.org/docs/15/btree-implementation.html#BTREE-DELETION
"Changing the value of only one column covered by one index during an UPDATE always necessitates a new set of index tuples — one for each and every index on the table."

--
Born in Arizona, moved to Babylonia.

В списке pgsql-admin по дате отправления:

Предыдущее
От: Gavan Schneider
Дата:
Сообщение: Re: Synthetic keys and index fillfactor
Следующее
От: "David G. Johnston"
Дата:
Сообщение: Re: Synthetic keys and index fillfactor