Clustered indexes on surrogate keys
I'm reading Professional SQL Server 2005 Performance Tuning to try to learn how to get the best performance out of our database. I'm confused by what appears to be conflicting advice:
On page 234 the book states, "Don't Create a Clustered Index on an Artificial Column... An artificial column is one whose value is generated by the database engine... an identity column."
On page 357 the book states, "Clustering on an Identity Column... An identity column in SQL Server is an automatically generated incremental integer that makes an ideal clustered index key."
I am using surrogate keys on my tables and now am confused on the subject. Should the surrogate key be the clustered index key? Or the "business" columns that also make the row unique, i.e. Company, Plant, Production Order, Line?
Thanks,
Gina
|