Táctica de normalización de SQL Server: varchar vs int Identity

Me pregunto cuál es la solución óptima aquí.

Digamos que tengo una base de datos normalizada. La clave principal de todo el sistema es un varchar. Lo que me pregunto es si debo relacionar esta varchar con un int para la normalización o dejarla. Es más sencillo dejarlo como varchar, pero podría ser más óptimo

Por ejemplo puedo tener

People
======================
name      varchar(10)   
DoB       DateTime    
Height    int  

Phone_Number
======================
name      varchar(10)   
number    varchar(15)

O podria tener

People
======================
id        int Identity   
name      varchar(10)   
DoB       DateTime  
Height    int  

Phone_Number
======================
id        int   
number    varchar(15)  

Agregue varias otras relaciones de uno a muchos, por supuesto.

¿Qué piensan todos ustedes? ¿Cuál es mejor y por qué?

Respuestas a la pregunta(7)

Su respuesta a la pregunta