Обсуждение: managing database with thousands of tables

Поиск
Список
Период
Сортировка

managing database with thousands of tables

От
Eugeny N Dzhurinsky
Дата:
Hello!

I facing some strange problems with PostgreSQL 8.0 performance.
I have application which handles a lot of tasks, each task is keps in separate
table. Those tables are dropped and created again periodically (precisely -
when new task results came back from remote server). Also each table can have
hundreds of thousands records inside (but mostly they do have just few
thousands).

Sometimes I facing performance loss when working with database, and aafter I
performed vacuuming on entire database, i saw some tables and indexes in pg_*
schemas were optimized and hundreds of thousands records were deleted. Could
that be the reason of performance loss, and if so - how can I fix that?

I have pg_autovacuum up and running all the time

pg_autovacuum -d 3 -D -L /dev/null

but it seems pg_autovacuum does not do vacuuming on system tables.

--
Eugene Dzhurinsky

Re: managing database with thousands of tables

От
Tom Lane
Дата:
Eugeny N Dzhurinsky <bofh@redwerk.com> writes:
> but it seems pg_autovacuum does not do vacuuming on system tables.

There was a bug awhile back whereby autovac failed to notice temp table
cleanup at connection end --- maybe you need to update?

            regards, tom lane

Re: managing database with thousands of tables

От
Eugeny N Dzhurinsky
Дата:
On Wed, Jul 05, 2006 at 09:39:31AM -0400, Tom Lane wrote:
> Eugeny N Dzhurinsky <bofh@redwerk.com> writes:
> > but it seems pg_autovacuum does not do vacuuming on system tables.
>
> There was a bug awhile back whereby autovac failed to notice temp table
> cleanup at connection end --- maybe you need to update?

May be. So should I update to newer postgres 8.1 or just upgrade
pg_autovacuum somehow (I don't know how btw ;) )?

--
Eugene N Dzhurinsky

Re: managing database with thousands of tables

От
Chris
Дата:
Eugeny N Dzhurinsky wrote:
> On Wed, Jul 05, 2006 at 09:39:31AM -0400, Tom Lane wrote:
>> Eugeny N Dzhurinsky <bofh@redwerk.com> writes:
>>> but it seems pg_autovacuum does not do vacuuming on system tables.
>> There was a bug awhile back whereby autovac failed to notice temp table
>> cleanup at connection end --- maybe you need to update?
>
> May be. So should I update to newer postgres 8.1 or just upgrade
> pg_autovacuum somehow (I don't know how btw ;) )?

Update the whole lot. You should be able to do the upgrade "in place"
but take a backup "just in case".

http://www.postgresql.org/docs/8.1/interactive/release.html

will list all changes between versions.

--
Postgresql & php tutorials
http://www.designmagick.com/