Cita: ¿Qué es mas rápido u ocupa menos espacio para la maquina? una clave numerica autoincremental o una clave en varchar.
La clave debe ser la que el modelo de la entidad, es decir, de lo que dice el modelo E-R: Un atributo o grupo de atributos que identifique unívocamente un registro en una tabla. Si es numérico , de fecha, cadena de texto o lo que sea, dependerá de lo que sea la entidad.
En ciertos contextos se usan numéricos por dos razones generales: 1) Los programadores no entienden el paradigma E-R y les resulta más fácil usar numéricos, y 2) En el contexto de datos masivos (y por tal me refiero a millones de registros), los numéricos son más eficientes a nivel de performance.
Pero la decisión de uno u otro no es por lo eficiente, sino por lo efectivo también. Si vas a usar claves numéricas que luego no tienen uso como información (datos procesados), sino solamente como identificadores de búsqueda, es posible que sea mejor usar la clave que naturalmente debería tener la entidad, sea del tipo que sea.
Cita: ¿es mas rápido tener una sola tabla o varias?
Ese pensamiento es incorrecto. No es importante si es más "rápido", sino si es correcto desde el punto de vista de la arquitectura de la base de datos.
Menos tablas en el 99% de los casos implica redundancia perniciosa en el sistema, problemas de consistencia y procesos complejos y enredados de mantenimiento.
En otras palabras, menos tablas significa el aumento de la ineficiencia del sistema, y muy probablemente la generación de "datos basura".