• No se han encontrado resultados

DISEÑO DE BASES DE DATOS RELACIONALES

N/A
N/A
Protected

Academic year: 2021

Share "DISEÑO DE BASES DE DATOS RELACIONALES"

Copied!
23
0
0

Texto completo

(1)

DISEÑO DE BASES

DE DATOS RELACIONALES

(2)

Introducción

 El objetivo del diseño de las bases de datos

relacionales es la generación de un conjunto de esquemas relacionales que nos permita almacenar la información sin redundancias innecesarias, pero que también nos permita

recuperar fácilmente esa información.

 Un enfoque es el diseño de esquemas que se

(3)

Primera Forma Normal (1FN)

 Un dominio es atómico si se considera que los

elementos del dominio son unidades indivisibles.

 Se dice que el esquema de una relación R está en

la primera forma normal (1FN) si los dominios

(4)

 Un conjunto de nombres es un ejemplo de valor

no atómico.

 Por ejemplo, si el esquema de la relación

empleado incluyera el atributo hijos, los elementos de cuyo dominio son conjuntos de nombres, el esquema no se hallaría en la primera forma normal.

(5)

 Los enteros son atómicos, pero no el conjunto de

ellos.

 La nomenclatura para préstamos no es atómica

(6)

Redundancia

 Por ejemplo, en lugar de representar la relación

entre las cuentas y los clientes como una relación independiente impositor, puede que un diseñador

de bases de datos esté tentado a almacenar un conjunto de titulares con cada cuenta y un conjunto de cuentas con cada cliente.

Número-cuenta titular 001 José Omar 002 Jorge Omar 003 Diana cliente cuenta José Omar 001 José Omar 002

(7)

No abusar

 En muchos dominios en los que las entidades

tienen una estructura compleja, la imposición de la representación en la primera forma normal representa una carga innecesaria para el programador de las aplicaciones, que tiene que escribir código para convertir los datos a su forma atómica.

 Preguntarnos si los datos se pueden dividir en

(8)

 Entre las propiedades indeseables que puede

tener un mal diseño están:

Repetición de la información

Imposibilidad de la representación de determinada

información

Esquema-empréstito

=

(nombre-sucursal,

ciudad-sucursal,

activo,

nombre-cliente,

número-préstamo, importe)

(9)

 (Navacerrada, Aluche, 1.700.000, Fernández,

(10)

 Las actualizaciones resultan más costosas con el

diseño alternativo que con el original.

 Hay redundancia de información.

 Para saber la información de una sucursal

debería haber un préstamo y borrarlo cuando se haya pagado, perdiendo los valores de sucursal.

(11)

Segunda Forma Normal (2FN)

Dependencias Funcionales

 Una dependencia funcional es un tipo de

restricción que generaliza el concepto de clave.

 Las dependencias funcionales nos permiten

expresar las restricciones que no se pueden expresar con las superclaves.

 Las dependencias funcionales son restricciones

(12)

 Permiten expresar hechos sobre la empresa que

se modela con la base de datos.

 Sea R y sean α

R y β

R.

La dependencia funcional α →β

se cumple para el esquema R si, en cualquier relación legal r (R), para todos los pares de tuplas t1 y t2 de r tales que

(13)

Ejemplos

Esquema-info-préstamo = (número-préstamo,

nombre-sucursal, nombre-cliente, importe)

número-préstamo → importe

número-préstamo → nombre-sucursal

 Sin embargo, no se espera que se cumpla la

dependencia funcional

número-préstamo → nombre-cliente

 ya que, en general, cada préstamo se puede

(14)

Las dependencias funcionales se

utilizarán de dos maneras:

1. Para probar las relaciones y ver si son legales

según un conjunto dado de dependencias

funcionales.

 Si una relación r es legal según el conjunto F de

(15)

Las dependencias funcionales se

utilizarán de dos maneras:

2. Para especificar las restricciones del conjunto de relaciones legales.

Sólo habrá que preocuparse por las relaciones que

satisfagan un conjunto dado de dependencias funcionales.

 Si uno desea restringirse a las relaciones del esquema

R que satisfagan el conjunto F de dependencias

(16)

 ¿Se cumple?:

A

C

C →A

(17)

AB → D

 Por tanto, si t1 [AB] = t2 [AB],

(18)

Dependencias funcionales

TRIVIALES

 Las dependencias funcionales son triviales

porque las satisfacen todas las relaciones.

A → A la satisfacen todas las relaciones que

impliquen al atributo A.

AB →A

 la satisfacen todas las relaciones que impliquen al atributo A. En general, una dependencia funcional de la forma α →β es trivial si β α.

(19)

Considerando el ejemplo del banco

(20)

¿Se cumplen?

Cliente calle-cliente → ciudad-cliente Préstamo número-préstamo → importe Sucursal nombre-sucursal → activo activo → nombre-sucursal

(21)

Ejercicio

 Enumeren la lista de dependencias funcionales

obligatorias para los esquemas:

 Sucursal  Cliente  Préstamo  Prestatario  Cuenta  Impositor

(22)

Axiomas de Armstrong

Regla de la reflexividad. Si α es un conjunto de

atributos y β ⊆α, entonces se cumple que α →β.

Regla de la aumentatividad. Si se cumple que α

→β y γ es un conjunto de atributos, entonces se cumple que γα →γβ.

Regla de la transitividad. Si se cumple que α →β

y también se cumple que β →γ, entonces se cumple que α →γ.

(23)

Cerradura de un conjunto de

atributos

 Para un esquema R y un conjunto de atributos ,

si α R entonces es α superllave

para determinar lo anterior se puede encontrar α+, todos los atributos que dependen funcionalmente de α teniendo R(A,B,C,D,E)

Referencias

Documento similar

RELACIONALES, RELACIONALES EXTENDIDAS Y OTROS TIPOS ESPECIALES DE BASES DE

– Utilizar una única relación (ELEMENTOS) con un atributo (datos) para almacenar todos los elementos (por ejemplo, cada tupla almacena un elemento XML en forma de cadena: cuenta,

Este trabajo se centra en 3 pruebas de rendimiento para 4 casos de estudio, en 3 motores de bases de datos distintos: MySQL como ejemplo de motor de base de datos

metodologías y técnicas de la Ingeniería de Software, Bases de Datos Relacionales y Bases de Datos NoSQL, con énfasis en los escenarios híbridos y las nuevas aplicaciones

Para esto, en este proyecto, se propone la gestión de datos biométricos en Bases de Datos Objeto-Relacionales, permitiendo la representación tanto de los datos crudos

Debido a que los sistemas gestores de bases de datos no poseen las funcionalidades requeridas para crear, almacenar y manipular los objetos simbólicos, se propone

Estos tipos de bases de datos están optimizados específicamente para aplicaciones que requieren grandes volúmenes de datos, baja latencia y modelos de datos

Contiene datos sobre las cuentas que maneja el banco, tales como los números de cuenta; el número del cliente propietario de la cuenta; el saldo actual; el total de