What is the difference between warehouse key and surrogate key?
Answer Posted / jaspreet banga
Surrogate key concept:- Surrogate keys are generated by
system and they identifies unique 'ENTITY'! yes its entity
and not record ,while primary key is used for finding
unique record.
Let me give you a simple classical example for surrogate
key:
On the 1st of January 2002 Employee 'E1' belongs to
Business Unit 'BU1' (that's what would be in your Employee
Dimension). This employee has a turnover allocated to him
on the Business Unit 'BU1' But on the 2nd of June the
Employee 'E1' is muted from Business Unit 'BU1' to Business
Unit 'BU2.' All the new turnover have to belong to the new
Business Unit 'BU2' but the old one should Belong to the
Business Unit 'BU1.'
If you used the natural business key 'E1' for your employee
within your datawarehouse everything would be allocated to
Business Unit 'BU2' even what actualy belongs to 'BU1.'
If you use surrogate keys you could create on the 2nd of
June a new record for the Employee 'E1' in your Employee
Dimension with a new surrogate key.
This way in your fact table you have your old data (before
2nd of June) with the SID of the Employee 'E1' 'BU1.' All
new data (after 2nd of June) would take the SID of the
employee 'E1' 'BU2.'
You could consider Slowly Changing Dimension as an
enlargement of your natural key: natural key of the
Employee was Employee Code 'E1' but for you it becomes
Employee Code Business Unit - 'E1' 'BU1' or 'E1' 'BU2.' But
the difference with the natural key enlargement process is
that you might not have all part of your new key within
your fact table so you might not be able to do the join on
the new enlarge key -> so you need another id.
| Is This Answer Correct ? | 3 Yes | 1 No |
Post New Answer View All Answers
What differs when we choose the sorted input for aggregator transformation?
have u done any performance tuning? how u ll do?
What is meant by pre and post session shell command?
Partition, what happens if the specified key range is shorter and longer
Explain incremental aggregation in informatica
What happen if you have 3 ports in SQ and 4 ports in SQL override of SQ( provided all ports are in same order and they are connected with proper source and target)? Also what happens when I have 4 ports and will extract 3 values in SQloverride.. What will be the value in 4th port ?
What is flashback table ? Advance thanks
Why is sorter an active transformation?
What is primary and backup node?
What are the types of data warehouses?
Design a mapping to load the cumulative sum of salaries of employees into target table?
how many types of dimensions are available in informatica?
What are the issues you have faced in your project? How did you overcome those issues?
How we can create indexes after completing the loan process?
Write the prerequisite tasks to achieve the session partition?