Re: [GENERAL] Fast join

From: Chris Bitmead <cbitmead(at)ozemail(dot)com(dot)au>
To: "'pgsql-general(at)hub(dot)org'" <pgsql-general(at)hub(dot)org>
Subject: Re: [GENERAL] Fast join
Date: 1999-07-01 00:44:14
Message-ID: 377AB9DE.B9363540@ozemail.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Leon wrote:

> And more: would you make a cool data type, a reference,
> which is a physical record number of a foreign record?
> This could make certain type of joins VERY fast, too good
> to be true. Such thing is really an incorporation of
> elements of networking (networked? :) data model into
> relational model.

When you say "a physical record number", I assume you mean some
reference to where the record is stored on disk. There are a number of
problems with this. One is space reclaimation. You can't re-use space
anymore because if you put a new record in the place where the old
record was there would be an integrity problem. If you somehow solve
that there is still the problem that you can't move a record when it
gets bigger or you want to re-organise the database. Backups become
problematic.

In actual fact, you don't need physical record ids to make things
blindingly quick. Object databases like Versant have proved that.
Although I've got no doubt their record-id lookup is massively optimised
for the special case and I'd say it's significantly faster than most
relation database indexes, but the principle is no different. Record ids
are good. Physical record ids are bad.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Jan Wieck 1999-07-01 00:47:56 Re: [HACKERS] RE: [GENERAL] urgent: problems with query_limit
Previous Message Chris Bitmead 1999-07-01 00:35:50 Re: [GENERAL] Re: Data warehousing