sql >> Base de Datos >  >> RDS >> Sqlserver

Normalizando una tabla extremadamente grande

Encontrará otros beneficios en la normalización de los datos además de la velocidad de las consultas que se ejecutan en ellos... como el tamaño y la capacidad de mantenimiento, que por sí solos deberían justificar la normalización...

Sin embargo, probablemente también mejorará la velocidad de las consultas; actualmente tener una sola fila que contiene 300 columnas de texto es enorme, y es casi seguro que supera el Límite de 8060 bytes para almacenar la página de datos de fila ... y en su lugar se almacena en el ROW_OVERFLOW_DATA o LOB_DATA Unidades de asignación.

Al reducir el tamaño de cada fila a través de la normalización, como reemplazar datos de texto redundantes con un TINYINT clave externa, y al eliminar también las columnas que no dependen de la clave principal de esta tabla grande en otra tabla, los datos ya no deberían desbordarse y también podrá almacenar más filas por página.

En cuanto a la sobrecarga agregada al realizar JOIN para obtener los datos normalizados... si indexa correctamente sus tablas, esto no debería agregar una cantidad sustancial de gastos generales. Sin embargo, si agrega una sobrecarga inaceptable, puede desnormalizar selectivamente los datos según sea necesario.