Re: setting up foreign keys

From: "Spiegelberg, Greg" <gspiegelberg(at)cranel(dot)com>
To: "Chris" <dmagick(at)gmail(dot)com>, "Merlin Moncure" <mmoncure(at)gmail(dot)com>
Cc: "Sue Fitt" <sue(at)inf(dot)ed(dot)ac(dot)uk>, <pgsql-performance(at)postgresql(dot)org>
Subject: Re: setting up foreign keys
Date: 2006-08-11 19:01:15
Message-ID: 82E74D266CB9B44390D3CCE44A781ED901368432@POSTOFFICE.cranel.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Sort of on topic, how many foreign keys in a single table is good v.
bad? I realize it's relative to the tables the FK's reference so here's
an example:

Table A: 300 rows
Table B: 15,000,000 rows
Table C: 100,000 rows
Table E: 38 rows
Table F: 9 rows
Table G: is partitioned on the FK from Table A and has a FK column for
each of the above tables

I'm in the process of normalizing the database and have a schema like
this in mind. Works wonderfully for SELECT's but haven't gotten the
data import process down just yet so I haven't had a chance to put it
through it's paces. Depending on the performance of INSERT, UPDATE, and
COPY I may drop the FK constraints since my app could enforce the FK
checks.

TIA.

Greg

> -----Original Message-----
> From: pgsql-performance-owner(at)postgresql(dot)org
> [mailto:pgsql-performance-owner(at)postgresql(dot)org] On Behalf Of Chris
> Sent: Thursday, August 10, 2006 6:36 PM
> To: Merlin Moncure
> Cc: Sue Fitt; pgsql-performance(at)postgresql(dot)org
> Subject: Re: [PERFORM] setting up foreign keys
>
> Merlin Moncure wrote:
> > On 8/10/06, Chris <dmagick(at)gmail(dot)com> wrote:
> >> Sue Fitt wrote:
> >> > Thanks Chris and Chris, you've solved it.
> >> >
> >> > I had a gui open that connects to the database. It was doing
> >> > nothing (and not preventing me adding to or altering
> headwords_core
> >> > via psql), but having closed it the table is instantly
> created. Weird.
> >> >
> >> > BTW, referencing the same column twice is deliberate, it's a
> >> > cross-reference.
> >>
> >> The same column and the same table?
> >>
> >> Same column different table I could understand but not the same
> >> column & table ;)
> >
> > create table color(color text);
> >
> > create table person(eye_color text references color(color),
> hair_color
> > text references color(color));
>
> lol. Good point :)
>
> *back to the hidey hole!*
>
> --
> Postgresql & php tutorials
> http://www.designmagick.com/
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org
> so that your
> message can get through to the mailing list cleanly
>

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Roman Neuhauser 2006-08-12 16:20:19 Re: most bang for buck with ~ $20,000
Previous Message Sue Fitt 2006-08-11 11:48:01 Re: setting up foreign keys