Archives of the TeradataForum
Message Posted: Thu, 01 May 2003 @ 19:50:13 GMT
Subj: | | Re: Surrogate Keys vs Natural Keys |
|
From: | | Bankston, Robert E |
I think the disconnect with folks who move from other DBMS warehouse environments where surrogate key's abound and star schemas rule is
that Teradata has the same performance limitations as others do. It is my experience that surrogate keys need only be used for performance
where you have a performance SLA with your customer that you are not able to meet any other way. In other words exhaust other avenues
first.
What you also have to take into account that there is a massive amount of overhead and risk associated with populating surrogate keys in
a normalized enterprise model where key migration occurs many times over versus a star design where key migration occurs generally only
once. Then you take into account trying to load multiple source systems into this EDW normalized model where I am now trying to maintain
keys and I could significantly impact my batch cycle. The risk comes into play that if I somehow screw up my assignment process then it
could be nightmare trying to fix it if I can at all.
Now don't get me wrong I feel that surrogates have their natural place in a data warehouse or data mart but when not necessary then I err
to the side of using my natural keys almost all the time and surrogates sparingly. For example I feel that they are necessary when trying
to rationalize data from different sources that is actually the same but even then I don't want it migrating through my model.
Just my 2 cents.
Rob Bankston
Teradata Certified Professional
|