Tengo una tabla con 25 columnas donde 20 columnas pueden tener valores nulos para algunas (30-40%) filas. Ahora, ¿cuál es el costo de tener filas con 20 columnas nulas? ¿Esta bien?Pregunta de diseño Sql
O
es que un buen diseño para tener otra tabla para almacenar las 20 columnas y añadir una referencia a la primera tabla? De esta forma solo escribiré en la segunda tabla solo cuando haya valores de are.
Estoy utilizando SQL server 2005. Se migrará a 2008 en el futuro.
sólo 20 son columnas varchar, smallint resto, smalldate
Lo que estoy almacenando: Estas columnas almacenar diferentes atributos de la fila que pertenece. Estos atributos pueden ser nulos a veces.
La mesa llevará a cabo ~ mil millones de filas
favor comentar.
¿Qué servidor de base de datos está utilizando? SQL Server 2008 admite el concepto de columnas dispersas que admite su escenario con un impacto mínimo. –
Eche un vistazo a esta respuesta: http://stackoverflow.com/questions/229179/null-in-mysql-performance-storage/230923#230923 Y http://dev.mysql.com/doc/refman/5.0/ es/working-with-null.html – RobertPitt
¿Ha considerado la herencia de tablas? –