Re: Temp tables performance question
От | Hannu Krosing |
---|---|
Тема | Re: Temp tables performance question |
Дата | |
Msg-id | 396E30DC.3241D9CD@tm.ee обсуждение исходный текст |
Ответ на | Temp tables performance question (Hannu Krosing <hannu@tm.ee>) |
Список | pgsql-hackers |
Tom Lane wrote: > > Hannu Krosing <hannu@tm.ee> writes: > > I have a question about performance issues related to temporary tables. > > IIRC temporary tables were implemented as ordinary tables with some > > pre/post-processing to give them unique names so that they would not > > clash with similar-named tables from other sessions. > > Right, there's basically no performance difference at all from ordinary > tables. > > It'd be possible to have them go through the "local buffer manager" > for their entire lives, rather than only for the transaction in which > they are created, as happens for ordinary tables. This would avoid > at least some shared-buffer-manipulation overhead. I'm not sure it'd > buy a whole lot, but it probably wouldn't take much work to make it > happen, either. I was hoping that at least fsync()'s could be avoided on temp tables even without -F. Other kinds of improvemants should be possible too, due to the essentially non-transactional nature of temp tables. > I think it would be folly to try to make them use a different smgr or > avoid WAL; that'd require propagating differences between ordinary and > temp tables into way too many places. Does using a different storage manager really need propagating differences in other places than the storage manager code ? In an ideal world it should not be so ;) ----------- Hannu
В списке pgsql-hackers по дате отправления: