From: | marcin mank <marcin(dot)mank(at)gmail(dot)com> |
---|---|
To: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | per table random-page-cost? |
Date: | 2009-10-19 21:08:40 |
Message-ID: | b1b9fac60910191408x4e6a639v15d14cfff415b5ec@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Currently random_page_cost is a GUC. I propose that this could be set per-table.
I think this is a good idea for widely-wanted planner hints. This way
You can say "I do NOT want this table to be index-scanned, because I
know it is not cached" by setting it`s random_page_cost to a large
value (an obviously You can do the other way around, when setting the
random_page_cost to 1 You say "I don`t care how You fetch the pages,
they are all in cache")
The value for the per-table setting could be inferred from
pg_stat(io)?.*tables . We could have a tool to suggest appropriate
values.
We could call it something like cached_percentage (and have the cost
of a random tuple fetch be inferred from the global random_page_cost,
seq_tuple_cost and the per-table cached_percentage). Then we could set
the global random_page_cost to a sane value like 200. Now one can
wonder why the planner works while having such blantantly unrealistic
values for random_page_cost :)
What do You think?
Greetings
Marcin Mank
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2009-10-19 21:14:40 | Re: per table random-page-cost? |
Previous Message | Eric B. Ridge | 2009-10-19 21:01:07 | Re: Controlling changes in plpgsql variable resolution |