So to summarize, the only two things key ordering affects (excluding the
ability to use partial key matches):

Less unique keys first reduce index size.
More unique keys first improve garbage collection in pre 2.0 servers.

Thanks for the information.


-----Original Message-----
From: firebird-support@yahoogroups.com
[mailto:firebird-support@yahoogroups.com] On Behalf Of Ann Harrison
Sent: Tuesday, October 16, 2012 6:27 PM
To: firebird-support@yahoogroups.com
Subject: Re: [firebird-support] RE: Order of key elements

On Tue, Oct 16, 2012 at 9:47 AM, Rick Debay <rde...@accessrxs.com>
wrote:

> > neither of these constraints make any sense (the PK itself assures
> uniqueness)
> See the posts with the title "Unique foreign key for child tables."  
> It's needed to be the target for a foreign key.
>
> > UPDATEs used to be slow for non-selective indexes
> This is what I'm trying to avoid.  Does anyone know it was changed and

> what version?  We won't finish the migration from FB 1.5 until year
end.
>
>
Update is fine for the compound index you described because the full key
is guaranteed to be unique.  In version 2.0 (I think) the index
algorithm was changed so indexes promote the record number to the upper
levels, making every key unique.  Makes the indexes a bit fatter, but
avoids horrible garbage collection behavior.

Good luck,

Ann


[Non-text portions of this message have been removed]



------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Visit http://www.firebirdsql.org and click the Resources item on the
main (top) menu.  Try Knowledgebase and FAQ links !

Also search the knowledgebases at http://www.ibphoenix.com 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Yahoo! Groups Links



Reply via email to