Re: Slow query on a one-tuple table

Поиск
Список
Период
Сортировка
От Luís Roberto Weck
Тема Re: Slow query on a one-tuple table
Дата
Msg-id f1468794-1681-3f1e-2f9c-b491cb87ed5d@siscobra.com.br
обсуждение исходный текст
Ответ на Re: Slow query on a one-tuple table  (Michael Lewis <mlewis@entrata.com>)
Ответы Re: Slow query on a one-tuple table  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-performance
Em 19/09/2019 19:32, Michael Lewis escreveu:
I have about 6 bigint fields in this table that are very frequently
updated, but none of these are indexed. I thought that by not having an
index on them, would make all updates HOT, therefore not bloating the
primary key index. Seems I was wrong?

HOT update is only possible if there is room in the page. How wide is your single tuple?

Have you tuned autovacuum or are you running defaults? Not sure of your perception of "very frequently" updated values, but if you have bloat issue, vacuum early and often. Not sure how the math works out on a table with single tuple in terms of calculating when it is time to vacuum, but it certainly needs to be tuned differently than a table with millions of rows which is what I would be more used to.

I'm not sure how to measure how wide the tuple is, can you point me in the right direction?

As fas as autovacuum options, this is what I'm using:

autovacuum_enabled=true,
fillfactor=50,
autovacuum_vacuum_threshold=25,
autovacuum_vacuum_scale_factor=0,
autovacuum_analyze_threshold=10,
autovacuum_analyze_scale_factor=0.05,
autovacuum_vacuum_cost_delay=10,
autovacuum_vacuum_cost_limit=1000,
toast.autovacuum_enabled=true

By "very frequently" I mean I can update it up to 800000 times a day. Usually this number is closer to 100000.

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

Предыдущее
От: Michael Lewis
Дата:
Сообщение: Re: Slow query on a one-tuple table
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Slow query on a one-tuple table