Normalización de Bases de Datos

Como siempre dando tumbos buscado ampliar mis conocimientos en distintas plataformas y dependiendo de cual orientándola y adaptándola para hacer mas fluido el trabajo con Velneo me encontré con la Normalización de Bases de Datos.

Es muy posible que muchos de vosotros lo haga inconscientemente o incluso que simplemente no sepa que esto es así.

El diseño lógico de la base de datos, las tablas y las relaciones entre las tablas, determinan el rendimiento de la base de datos.

Esto es algo que todos tenemos en cuenta a la hora de realizar nuestras tablas.

Una cierta normalización suele mejorar el rendimiento, pero solo hasta cierto punto.

No debemos pasarnos al usar las reglas ya que podemos pasar la línea y hacer que el rendimiento de la base de datos disminuya en lugar de aumentar.

La mayoría de los sistemas normalizan solo hasta la Tercera Forma Normal, aunque existen cinco formas normales.

Bueno entonces veamos las 3 Formas que deberíamos de usar.

Primera Forma Normal (1NF)

Una tabla debe tener una clave primaria para identificar unívocamente cada fila de la tabla. Para conseguir la Primera Forma Normal, cree una clave primaria univoca para cada tabla creada.

Segunda Forma Normal (2NF)

Debe disponer de una base de datos en la Primera Forma Normal y desplazar los atributos redundantes de los datos a una tabla aparte.

Esto se refiere a que por ejemplo en una tabla tenemos esto:

Tab1Mirando detenidamente podemos ver como el campo de Categoría es repetitivo y seria el campo que trasladaríamos a otra tabla para aplicar la Segunda Forma Normal.

Tab2

Tercera Forma Normal (3NF)

Elimine las columnas que no dependan de la clave primaria de la tabla. Una tabla solo debe conservar los datos correspondientes a un único tipo de entidad. Mantenga reducido el tamaño de las tablas, en vez de intentar empaquetar el mundo entero en una gran tabla. Las tablas grandes son un inconveniente en relación con el rendimiento de una base de datos.

Otras recomendaciones que debemos tener en cuenta podrían ser.

Mantener al mínimo la cantidad de columnas susceptibles de contener valores nulos, utiliza valores nulos solo cuando sea razonable.

Intenta alcanzar un equilibrio inteligente entre una normalización excesiva, lo que puede dar lugar a uniones complejas que involucren muchas tablas.

Una normalización escasa, lo que podría significar acabar con solo unas pocas tablas anchas, con columnas anchas.

Ambos extremos pueden disminuir el rendimiento de datos.

Bueno y creo que que ya poca cosa mas.

Recordando esto podremos tener la fluidez necesaria y así dar mayor rendimiento a nuestras Bases de Datos ya sea en MySQL, SQL Server, Velneo, etc.

Anuncios

Acerca de NexusFireMan

Conocedor de las nuevas tecnologías, Community Manager, Bloger, Wordpress, Velneo, Social Media y encandilado con Android.

Publicado el 05/02/2010 en SQL, Velneo y etiquetado en , , , , , , , , . Guarda el enlace permanente. 3 comentarios.

  1. Hola. Muy cierto, pero discutiendo este tema con algunos conocedores de Velneo, y estudiando a fondo las plantillas, la normalización es algo que no se aplica o se aplica muy poco en Velneo, primando la velocidad de acceso a los datos sobre la no duplicidad, esto estaría bien que se convirtiera en un pequeño debate, yo por mi parte, siempre había procurado normalizar mis BBDD, pero cuando me adentré en Velneo, las soluciones propuestas siempre venían de la mano de las desnormalización, Cito: “no te preocupes mete el coste del última compra en la tabla artículos con un campo nuevo, mejor que tener que buscar en la tabla movimientos con un puntero o un proceso”, en fin, me parece un tema a debatir.

    Saludos cordiales.

  2. gracias,
    no viene mal, recordar de vez en cuando

    un saludo

  3. Gracias a vosotos por estar hay.

    Uno aporta lo que puede 😀

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: