Re: CREATE TABLE slowing down significantly over time

From: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>
To: Aris Samad-Yahaya <aris(at)quickschools(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: CREATE TABLE slowing down significantly over time
Date: 2009-11-08 03:47:39
Message-ID: 4AF63F5B.2060300@postnewspapers.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On 8/11/2009 11:15 AM, Aris Samad-Yahaya wrote:

> It used to take about 15 seconds to create those 300 tables in a new
> schema (when there were only a few schemas, say about 50). It now takes
> about 3 minutes (and now we have about 200 schemas, with more data but
> not hugely so).

200 schemas, 300 tables per schema. That's sixty THOUSAND tables.

> * Is the problem caused by the increasing number of schemas?

and increasing table count, I expect.

You do batch the table and schema creation into a single transaction,
right? If not, do that first, rather than creating each table in a
separate transaction (ie: relying on autocommit).

It may also be worth thinking about the app's design. Is a new schema
and 300 new tables for each user really the best way to tackle what
you're doing? (It might be, but it's a question worth asking yourself).

--
Craig Ringer

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Aris Samad-Yahaya 2009-11-08 04:55:00 Re: CREATE TABLE slowing down significantly over time
Previous Message Tom Lane 2009-11-08 03:29:20 Re: CREATE TABLE slowing down significantly over time