Ejercicio de diseño de BDD: Sociedad médica
• Cuenta con una oficina central y 3 centros médicos. Cada
centro médico atiende ciertas especialidades. Una especialidad se puede atender
en varios centros. Todo centro médico tiene al menos una especialidad.
• Actualmente utilizan la siguiente BD relacional
centralizada:
• Diseñar esquemas de fragmentación, replicación y
asignación de una BDD que tenga la mayor autonomía local, sabiendo que en los
centros se necesita:
– En la oficina central (Centro.Código=0) la información
para realizar las nóminas de todos los empleados.
Código
|
Nombre
|
Dirección
|
tfno
|

Código_e
|
nombre
|
salario
|
centro
|
σ
centro=”0” (empleado)
– En el resto de centros, los horarios de sus consultas y la
información de su personal y de sus especialidades.
Centro:
centro
|
hora
|
empleado:
código
|
nombre
|
dirección
|
salario
|
irpd
|
fecha_inic
|
Especialida:
codig
|
nombre
|
descripcion
|
Medico:
código
|
funcion
|
experiencia
|
σ centro,
hora (Consulta) centro=”1” or centro=”2”



Ejercicio de diseño de BDD: Servicios informáticos
• Se divide en cuatro edificios, cada uno con su servidor de
BD, donde hay una o varias unidades de desarrollo. Cada una se aloja en un solo
edificio. Los empleados y proyectos están asignados a una unidad de desarrollo,
aunque un empleado puede trabajar en un proyecto que no sea de su unidad.
• Actualmente utilizan la siguiente BD relacional
centralizada:
• Diseñar esquemas de fragmentación, replicación y
asignación de una BDD sabiendo que:
– Cada unidad gestiona las nóminas de sus empleados y
necesita la información de los proyectos que realiza.
Empleado:
codigo
|
nombre
|
apellidos
|
dirección
|
unidad
|
Proyecto:
codigo
|
nombre
|
presupuesto
|
empresa
|
jefe
|
unidad
|


– La unidad de Recursos humanos (edificio 0) realiza la
facturación y usa todos los datos de las empresas. El resto de unidades sólo
necesita el código y nombre de las empresas con las que trabaja.
Recursos humanos:
codigo
|
Nombre
|
Dirección
|
apdcorreos
|

Código
|
nombre
|

– Hay proyectos internos, y por tanto sin factura, que
tienen valor nulo en su campo Empresa.
código
|
nombre
|
jefe
|
unidad
|
empresa
|
Ejercicio de consultas en BDD: Libros
• Esquema de fragmentación:
– Libro_a: σPrecio<=20€(Libro)
– Libro_b: σPrecio>20€ and Precio<=50€(Libro)
– Libro_c: σPrecio>50€ and Precio<=100€(Libro)
– Libro_d: σPrecio>100€(Libro)
– Almacén_1: σCodPostal<=3500(Almacén)
– Almacén_2: σCodPostal>3500 and
CodPostal<=70000(Almacén)
– Almacén_3: σCodPostal>70000(Almacén)
– Existencias_i: Existencias |×Almacén=CódigoAlmacén_i
• Esquema de replicación y asignación:
• Qué subconsultas genera la ejecución de la siguiente
consulta en el servidor 1:
select Código, TotalExistencias from Libro where
Precio>15 and Precio<55
Código
|
Total existencias
|
Servidor1: σ código, total existencias precio>15 and pecio<55 (libro)
• Qué modificaciones genera la actualización del precio del
libro con código 1234 de 45€ a 55€ en el servidor 2
Servidor 2: σ precio>45 and
código <55 and código=”1234” (libro)
• Escribir un ejemplo de consulta que ejecutada en el
servidor 3 genere una subconsulta en el servidor 2
σ precio>25 and precio<100 Libro_2,Libro_3 [código,
precio ]
No hay comentarios:
Publicar un comentario