TheSQLGuru,
I did not intend to spark a debate 🙂 but here are my responses.
TheSQLGuru (3/19/2013)
1) if you are worried with space, GUIDs have no place in your system.
This statement is a little unsubstantiated. GUIDs are fine, sure they're larger than INT but they fulfull requirements that an INT cannot. For example we need to maintain uniqueness across servers. A GUID does this for us. Yes, they have drawbacks but I would not totally exclude them as an option because of them.
TheSQLGuru (3/19/2013)
2) why aren't you using NEWSEQUENTIALID??
These do not provide uniqueness across tables, let alone across servers.
TheSQLGuru (3/19/2013)
3) Your PK on the parent does a clustered index on the NEWID, since you didn't specify one.
Is this a question or a statement? Not sure what you're trying to communicate.
TheSQLGuru (3/19/2013)
4) You are fragmenting the heck out of your nc indexes on those GUIDs.
Yes - this is very true. However most of the indexes are defragmented in under 30 seconds (most under 10 seconds) during our nightly maintenance.
TheSQLGuru (3/19/2013)
5) Did I mention that GUIDs SUCK yet?!? Oh, and for multiple systems, you can almost ALWAYS come up with a simple multi-part numeric arrangement that is guaranteed to be unique across all systems. I have used a tiny/smallint ServerID and integer identity construct at numerous clients to eliminate GUIDS they "HAD to have", always with GREAT effect.
Ok, now you have my interest :). I wouldn't mind understanding your implementation.