Articles

GeeksforGeeks

Posted on

La desnormalización es una técnica de optimización de bases de datos en la que añadimos datos redundantes a una o varias tablas. Esto puede ayudarnos a evitar costosas uniones en una base de datos relacional. Tenga en cuenta que la desnormalización no significa no hacer la normalización. Es una técnica de optimización que se aplica después de hacer la normalización.

En una base de datos normalizada tradicional, almacenamos los datos en tablas lógicas separadas e intentamos minimizar los datos redundantes. Podemos esforzarnos por tener sólo una copia de cada dato en la base de datos.

Por ejemplo, en una base de datos normalizada, podríamos tener una tabla Cursos y una tabla Profesores. Cada entrada en Cursos almacenaría el teacherID de un Curso pero no el teacherName. Cuando necesitemos recuperar una lista de todos los Cursos con el nombre del Profesor, haríamos un join entre estas dos tablas.

En cierto modo, esto es genial; si un profesor cambia su nombre, sólo tenemos que actualizar el nombre en un lugar.
El inconveniente es que si las tablas son grandes, podemos pasar un tiempo innecesariamente largo haciendo uniones en las tablas.
La desnormalización, por tanto, supone un compromiso diferente. Con la desnormalización, decidimos que estamos bien con algo de redundancia y un poco de esfuerzo extra para actualizar la base de datos con el fin de obtener las ventajas de eficiencia de menos uniones.

Pros de la desnormalización:-

  1. La recuperación de datos es más rápida ya que hacemos menos uniones
  2. Las consultas para recuperar pueden ser más simples (y por lo tanto es menos probable que tengan errores),
    ya que tenemos que mirar en menos tablas.

Contra de la desnormalización:-

  1. Las actualizaciones e inserciones son más caras.
  2. La desnormalización puede hacer que el código de actualización e inserción sea más difícil de escribir.
  3. Los datos pueden ser inconsistentes . ¿Cuál es el valor «correcto» para un dato?
  4. La redundancia de datos requiere más almacenamiento.
  5. En un sistema que exige escalabilidad, como el de cualquier empresa tecnológica importante, casi siempre utilizamos elementos tanto de bases de datos normalizadas como desnormalizadas.

    Etiquetas del artículo :

    SGBD
    Etiquetas de la práctica :

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *