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.
|