Un SGBD relacional que cumpla las recomendaciones ISO debe permitir una base de datos completamente normalizada a nivel lógico, soportado por un almacenamiento físico de los datos afinado para los requisitos necesarios del sistema.
[2] Un diseño normalizado a menudo almacenará diferentes, pero relacionadas, piezas de información en tablas lógicas separadas (denominada relaciones).
Si estas relaciones están almacenadas físicamente en dos archivos distintos en disco, su recuperación para realizar una consulta a la base de datos que se base en información de varias relaciones (una operación JOIN) puede ser muy lenta, llegando a no satisfacer determinados requisitos no funcionales del sistema.
Hay dos estrategias para tratar de solventar esta situación: Un modelo de datos desnormalizado no es lo mismo que un modelo de datos que no ha sido normalizado, y la desnormalización debe tomar lugar solamente después de que haya ocurrido un nivel satisfactorio de normalización y de que hayan sido creadas las restricciones y/o reglas requeridas para ocuparse de las anomalías inherentes en el diseño.
Por ejemplo, que todas las relaciones estén en la tercera forma normal y cualquier relación con dependencias de unión (JOIN) y multi-valor sean manejadas apropiadamente.