Re: FOREIGN KEYS vs PERFORMANCE - Mailing list pgsql-performance

From Jim C. Nasby
Subject Re: FOREIGN KEYS vs PERFORMANCE
Date
Msg-id 20060412205914.GL49405@pervasive.com
Whole thread Raw
In response to Re: FOREIGN KEYS vs PERFORMANCE  ("Craig A. James" <cjames@modgraph-usa.com>)
Responses Re: FOREIGN KEYS vs PERFORMANCE
List pgsql-performance
On Wed, Apr 12, 2006 at 10:36:28AM -0700, Craig A. James wrote:
> Jim C. Nasby wrote:
> >>1. You have only one application that modifies the data.  (Otherwise, you
> >>have to duplicate the rules across many applications, leading to a
> >>code-maintenance nightmare).
> >
> >You forgot something:
> >
> >1a: You know that there will never, ever, ever, ever, be any other
> >application that wants to talk to the database.
> >
> >I know tons of people that get burned because they go with something
> >that's "good enough for now", and then regret that decision for years to
> >come.
>
> No, I don't agree with this.  Too many people waste time designing for
> "what if..." scenarios that never happen.  You don't want to be dumb and
> design something that locks out a foreseeable and likely future need, but
> referential integrity doesn't meet this criterion.  There's nothing to keep
> you from changing from app-managed to database-managed referential
> integrity if your needs change.

In this case your argument makes no sense, because you will spend far
more time re-creating RI capability inside an application than if you
just use what the database offers natively.

It's certainly true that you don't want to over-engineer for no reason,
but many times choices are made to save a very small amount of time or
hassle up-front, and those choices become extremely painful later.
--
Jim C. Nasby, Sr. Engineering Consultant      jnasby@pervasive.com
Pervasive Software      http://pervasive.com    work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf       cell: 512-569-9461

pgsql-performance by date:

Previous
From: "Jim C. Nasby"
Date:
Subject: Re: Better index stategy for many fields with few values
Next
From: "Luke Lonergan"
Date:
Subject: Re: bad performance on Solaris 10