| |
Diseño de bases de datos relacionales:
principios básicos de diseño
Thomas H. Grayson
23 de enero de 2002
Esquema
El
modelo relacional
- Todos los datos se representan
en tablas.
- Incluso los resultados de
cualquier consulta son otra tabla.
- Las tablas están compuestas
por filas y columnas.
- Las filas y las columnas, en
principio, carecen de orden (p.ej., el orden en el
que se muestren las filas y las columnas no importa).
- Las filas sólo se
ordenan si se le indica a
la base de datos que lo haga, mediante el correspondiente
comando. De no ser así, el orden será
arbitrario, y puede cambiar en caso de tratarse
de una base datos dinámica.
- El orden de las columnas
lo determina cada consulta.
- Cada tabla tiene una clave
primaria, un identificador único,
compuesto por una o más columnas.
- La mayoría de las claves
primarias están formadas por una única
columna (p.ej., CIUDAD_ID).
- Para establecer una relación
entre dos tablas es necesario incluir, en forma de
columna, en una de ellas la clave primaria de la otra.
A esta columna se le llama clave secundaria.
- Estos dos conceptos
--clave primaria y secundaria-- son los más
importantes en el diseño de bases de datos.
Es importante dedicarles tiempo, para entender bien
en qué consisten y cómo funcionan.
Cualidades
de un buen diseño de base de datos
- Reflejar la estructura del
problema en el mundo real.
- Ser capaz de representar todos
los datos esperados, incluso con el paso del tiempo.
- Evitar el almacenamiento de
información redundante.
- Proporcinar un acceso eficaz
a los datos.
- Mantener la integridad de los
datos a lo largo del tiempo.
- Ser claro, coherente y de fácil
comprensión.
- Nota: A veces, estos
objetivos pueden ser contradictorios.
Introducción
al modelo Entidad/Interrelación (E/R)
- El modelo Entidad/Interrelación
(E/R): un método de diseño de bases
de datos.
- Muestra de una versión
simplificada.
- Representa los datos mediante
una serie de entidades que disponen de atributos.
- Una entidad es una clase de
objetos
o conceptos claramente
identificable.
- Las entidades establecen interrelaciones
con otras entidades.
- El resultado de este proceso
es una base de datos normalizada que facilita
el acceso a los datos y evita su duplicado.
Nota: en su mayor parte, el diseño formal
de una base de datos se centra en la normalización
de la base y en asegurar que el diseño se ajuste
a un nivel de normalización (p.ej.,
first normal
form, second normal form, etc.). Este nivel
de formalidad va mucho más allá, pero
es importante saber que existen tales formalidades.
Proceso
de diseño en el modelo E-R
- Identificar las entidades que
debe presentar la base de datos.
- Determinar las cardinalidades
de las interrelaciones establecidas entre las
distintas entidades y clasificar estas interrelaciones
entre los siguientes tipos:
- Uno a uno (p.ej.,
una parcela sólo tiene una dirección).
- Uno a muchos
(p.ej., en una parcela pueden ocurrir varios incendios).
- Muchos a muchos
(p.ej., la venta de parcelas: una misma parcela
la pueden vender varios propietarios y cada propietario
puede vender varias parcelas).
- Dibujar el diagrama Entidad/Interrelación.
- Determinar los atributos de
cada entidad.
- Definir la clave primaria (única)
de cada entidad.
Problemas
al trabajar con bases de datos y ArcView®
- ArcView® sólo
permite establecer relaciones a través de una
columna:
- Esto obliga a los usuarios
a recurrir a una serie de procedimientos elaborados
para construir una clave de una sola columna.
- ArcView® no
puede trabajar con expresiones "al vuelo":
- Los porcentajes y las proporciones
se deben almacenar en columnas extra.
- Estos valores pueden quedar
desfasados y su creación requiere un gran
trabajo extra.
- ArcView® no
funciona demasiado bien con relaciones muchos a muchos.
- Una relación uno a
muchos produce un valor arbitrario en la tabla relacionada.
- Un "enlace" o vínculo,
más que una relación, proporciona
alguna capacidad muchos a uno, aunque bastante limitada.
- Las herramientas de agregado
y "agrupamiento" disponibles son también limitadas.
Por ejemplo, "Campo | Estadísticas y campo
| Resumir" (Field | Statistics
and Field | Summarize).
- Las herramientas para trabajar
con sistemas de gestión de bases de datos externos
(p.ej., Oracle) son bastante lentas y difíciles
de usar.
Paso
del modelo E/R al diseño de la base de datos
- Las entidades entre las que
hay una interrelación uno a uno se
deben fusionar en una sola entidad.
- Una vez hecho esto, cada una
de las entidades que quedan se convierte en una tabla
con una clave primaria y una serie de atributos, de
los cuales algunos pueden ser claves secundarias.
- Las interrelaciones uno
a muchos se transforman en atributo y clave secundaria
de la tabla que representa a la entidad situada del
lado de la interrelación correspondiente a
muchos .
- Las interrelaciones muchos
a muchos entre dos entidades pasan a ser una tercera
tabla con claves secundarias procedentes de ambas
entidades. Estas claves secundarias deberán
formar parte de la clave primaria de la tabla en la
que se convierte la interrelación, cuando corresponda.
- Hay una serie de herramientas
disponibles en el mercado que pueden automatizar el
proceso de conversión de un modelo E/R en un
esquema de base de datos.
|