8/19/2019 Sociedades Medicas Reporte BDD
1/13
Reporte BDD
Sociedades Medicas
2016
REPORTE
MIGUEL ANGEL CHAVEZ MURILLO
ING ELLIUT PAREDES | ITSOEH
8/19/2019 Sociedades Medicas Reporte BDD
2/13
PROBLEMA 1: BDD SOCIEDADES MÉDICAS
Enunciado
Una de las sociedades medicas más importantes del país, con oficina central enMadrid, dispone de tres grandes centros médicos en esta misma ciudad. En cada uno deellos se atienden determinadas especialidades médicas por el personal contratado pordicha sociedad, de manera que una especialidad pueda darse en un centro o varios y todostienen al menos una especialidad.
En la actualidad tienen una base de datos relacional centralizada, a la cual accedentodos los centros, con el esquema a siguiente.
Figura: Esquema relacional correspondiente a una BD centralizada Sociedades Medicas
Realice el diseño de los esquemas de fragmentación y asignación de base de DatosDistribuida para conseguir la mayor autonomía local, tanto en los centros médicos como enla central, sabiendo que las operaciones realizadas en cada uno de ellos son:
En la sede central (Cod_Centro = 01) se elaboran la nominas del personalcontratados por la Sociedad Medica y de aquí se envían a los Centros para quesean repartidas a los trabajadores.
8/19/2019 Sociedades Medicas Reporte BDD
3/13
Cada Centro medico (Cod_Centro = {02,03.04}) debe tener la relación de personalsanitario que trabaja en el mismo, así como el horario de la consulta y la especialidadque desarrolla.
Discusión del enunciado
Esquema de fragmentación
“ En la sede central (Cod_Centro=01) se elaboran las nominas del personal por la Sociedad
Medica y de aquí se envían a los centros para que sean repartidas a los trabajadores”.
CENTRO
Cod_Centro Nom_Centro Dirección Teléfono
O1 Centro Xalapa
O2 El Valle Martínez
O3 Alemán Misantla
O4 Misantla MisantlaFigura: Tabla de la relación CENTRO
PERSONAL
Cod_Empleado Nombre Dirección Salario IRPF Fecha_Contrato Cod_centro
CE1 Tomasa Tuna Xalapa 7500 10.1% 12/04/2000 O1
CE2 Ana Alto Martínez 5000 10.1% 01/01/2011 O1
CE3 Pedro Peña Misantla 4900 10.1% 15/08/2011 O1
CE4 Bruno Brisa Santa Rita 5000 10.1% 30/12/2010 O1
CE5 Caty Cortez Tenochtitlán 6000 10.1% 14/05/2009 O2
CE6 Damián Díaz Guerrero 6500 10.1% 20/11/2009 O2
CE7 Elsa Elvira Misantla 6900 10.1% 26/09/2000 O2
CE8 Marcos Mina Vega 4900 10.1% 26/09/2000 O2
CE9 Yair Yunes Pozón 5500 10.1% 10/10/2010 O3
CE10 Sonia Salas Los Ídolos 5900 10.1% 15/07/2012 O3
CE11 José Juan Misantla 7000 10.1% 01/01/2012 O3
CE12 Fito Fosa El Porvenir 1500 10.1% 30/10/2001 O3
CE13 Olga Olmo Xalapa 4550 10.1% 30-02-2012 O4
CE14 Herí Humo Xalapa 7500 10.1% 31/08/2005 O4
CE15 Víctor Vidal Xalapa 4000 10.1% 09/09/2007 O4
CE16 Gina Gómez Atzalan 6000 10.1% 29/11/2008 O4Figura 1: Tabla de la relación PERSONAL
Suponiendo que la información necesaria para realizar las nominas son los atributos“Salario”, “IRPF” y “Fecha_Contrato” se realiza una fragmentación vertical de la relación
PERSONAL. Para separar esta información y posteriormente poder asignar a la sedecentral. Las relaciones resultantes contendrán en cualquier caso la clave primaria de larelación de la que proceden. Relacionar las formulas para los fragmentos con los siguientesnombres:
8/19/2019 Sociedades Medicas Reporte BDD
4/13
NIMINA_PERSONAL INF_PERSONAL
Formula: Ri = Li (R) i_PERSONAL= Li (PERSONAL)
Donde:i = {NOMINA, INF}Li = {“Cod_Empleado, salario, IRPF, Fecha_contrato”, “Cod_Empleado, Nombre,
Dirección, Cod_centro”}
NOMINA_PERSONAL = Cod_Empleado, salario, IRPF, Fecha_contrato(PERSONAL)
INF_PERSONAL = Cod_Empleado, Nombre, Dirección, Cod_centro(PERSONAL)
Fragmentos de la tabla PERSONA
NOMINA_PERSONAL = Cod_Empleado, salario, IRPF, Fecha_contrato(PERSONAL)
Nomina_Personal
Cod_Empleado salario IRPF Fecha_contrato
CE1 7500 10.1% 12/04/2000
CE2 5000 10.1% 01/01/2011
CE3 4900 10.1% 15/08/2011
CE4 5000 10.1% 30/12/2010
CE5 6000 10.1% 14/05/2009
CE6 6500 10.1% 20/11/2009
CE7 6900 10.1% 26/09/2000
CE8 4900 10.1% 26/09/2000
CE9 5500 10.1% 10/10/2010
CE10 5900 10.1% 15/07/2012
CE11 7000 10.1% 01/01/2012
CE12 1500 10.1% 30/10/2001
CE13 4550 10.1% 30-02-2012
CE14 7500 10.1% 31/08/2005
CE15 4000 10.1% 09/09/2007
CE16 6000 10.1% 29/11/2008Figura 2: Tabla Nomina_Personal de la fragmentación de la relación PERSONAL
8/19/2019 Sociedades Medicas Reporte BDD
5/13
INF_PERSONAL = Cod_Empleado, Nombre, Dirección, Cod_centro(PERSONAL)
Inf_Personal
Cod_Empleado Nombre Dirección Cod_Centro
CE1 Tomasa Tuna Xalapa O1
CE2 Ana Alto Martínez O1
CE3 Pedro Peña Misantla O1
CE4 Bruno Brisa Santa Rita O1
CE5 Caty Cortez Tenochtitlán O2
CE6 Damián Díaz Guerrero O2
CE7 Elsa Elvira Misantla O2
CE8 Marcos Mina Vega O2CE9 Yair Yunes Pozón O3
CE10 Sonia Salas Los Ídolos O3
CE11 José Juan Misantla O3
CE12 Fito Fosa El Porvenir O3
CE13 Olga Olmo Xalapa O4
CE14 Herí Humo Xalapa O4
CE15 Víctor Vidal Xalapa O4
CE16 Gina Gómez Atzalan O4Figura 3: Tabla Inf_Personal de la fragmentación de la relación PERSONAL
El fragmento INF_PERSONAL nos interesara que se fragmente de nuevo para tener encada centro la información del personal que esta a su cargo. Para ello tendremos que aplicaruna fragmentación horizontal:
Realizar las formulas para obtener los fragmentos (fragmentación horizontal)
correspondiente a cada centro con los siguientes nombres:
Personal01 Personal02 Personal03 Personal04
Formula: Ri = pi (R) PERSONALi= Cod_Centro = i (INF_PERSONAL)
Donde:i = {01, 02, 03, 04}
Personal01 = Cod_Centro = 01 (INF_PERSONAL)Personal02 = Cod_Centro = 02 (INF_PERSONAL)
8/19/2019 Sociedades Medicas Reporte BDD
6/13
Personal03 = Cod_Centro = 03 (INF_PERSONAL)Personal04 = Cod_Centro = 04 (INF_PERSONAL)Personal01 = Cod_Centro =01 (INF_PERSONAL)
Personal01
Cod_Empleado Nombre Dirección Cod_centro
CE1 Tomasa Tuna Xalapa O1
CE2 Ana Alto Martínez O1
CE3 Pedro Peña Misantla O1
CE4 Bruno Brisa Santa Rita O1Figura 4: Tabla Personal01 de la fragmentación de INF_PERSONAL
Personal02 = Cod_Centro = 02 (INF_PERSONAL)
Personal02
Cod_Empleado Nombre Dirección Cod_centro
CE5 Caty Cortez Tenochtitlan O2
CE6 Damián Díaz Guerrero O2
CE7 Elsa Elvira Misantla O2
CE8 Marcos Mina Vega O2Figura 5: Tabla Personal02 de la fragmentación de INF_PERSONAL
Personal03 = Cod_Centro = 03 (INF_PERSONAL)Personal03
Cod_Empleado Nombre Dirección Cod_centroCE9 Yair Yunes Pozón O3
CE10 Sonia Salas Los Ídolos O3
CE11 José Juan Misantla O3
CE12 Fito Fosa El Porvenir O3Figura 6: Tabla Personal03 de la fragmentación de INF_PERSONAL
Personal04 = Cod_Centro = 04 (INF_PERSONAL)Personal04
Cod_Empleado Nombre Dirección Cod_centro
CE13 Olga Olmo Xalapa O4
CE14 Herí Humo Xalapa O4
CE15 Víctor Vidal Xalapa O4
CE16 Gina Gómez Atzalan O4Figura 7: Tabla Personal04 de la fragmentación de INF_PERSONAL
8/19/2019 Sociedades Medicas Reporte BDD
7/13
“cada Centro médico (Cod_Centro = (02, 03, 04)) debe tener la relación de personal
sanitario que trabaja en el mismo, así como el horario de la consulta y la especialidad que
desarrolla”
Personal_SanitarioCod_Empleado Función Años_Experiencia
CE1 Enfermera 12
CE2 Recepcionista 5
CE3 Enfermero Auxiliar 4
CE4 Medico Especialista 12
CE5 Medico Especialista 3
CE6 Técnico Administrativo 15
CE7 Director general 14
CE8 Auxiliar Administrativo 9
CE9 Medico Especialista 4
CE10 Enfermero Auxiliar 1
CE11 Farmacéutico 8
CE12 Doctor 11
CE13 Enfermero 5
CE14 Medico Especialista 7
CE15 Enfermero Auxiliar 3
CE16 Medico Especialista 8Figura 8: Tabla PERSONAL_SANITARIO
Para tener la relación del personal sanitario en cada sede debemos partir de la tablaPERSONAL_SANITARIO y mediante los fragmentos personal_i (donde i = {01, 02, 03, 04})realizar la fragmentación horizontal derivada, con los nombres de los fragmentos siguientes:
Personal_sanitario01 Personal_sanitario02 Personal_sanitario03 Personal_sanitario04
Formula: Ri⋉ Qi
Personal_sanitarioi = PERSONAL_SANITARIO⋉ Cod_Empleado Personal_i
Donde:i = {01, 02, 03, 04}
8/19/2019 Sociedades Medicas Reporte BDD
8/13
Personal_sanitario01 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal01
Personal_sanitario02 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal02
Personal_sanitario03 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal03
Personal_sanitario04 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal04
Fragmentos de la tabla PERSONAL_SANITARIO
Personal_sanitario01 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal01
PersonalSanitario_01
Cod_empleado Función Años de Experiencia Nombre Direccion Cod_Centro
CE1 Enfermero 12 Tomasa Tuna Xalapa O1
CE2 Recepcionista 5 Ana Alto Martinez O1
CE3 Enfermero Auxiliar 4 Pedro Peña Misantla O1
CE4 Medico Especialista 12 Bruno Brisa Santa Rita O1Figura 9: Tabla PersonalSanitario_01 de la fragmentación de PERSONAL_SANITARIO
Personal_sanitario02 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal02
PersonalSanitario_02
Cod_empleado Función Años de Experiencia Nombre Dirección Cod_Centro
CE5 Medico Especialista 3 Caty Cortez Tenochtitlan O2
CE6 Técnico Administrativo 15 Damián Díaz Guerrero O2
CE7 Director general 14 Elsa Elvira Misantla O2
CE8 Auxiliar Administrativo 9 Marcos Mina Vega O2Figura 10: Tabla PersonalSanitario_02 de la fragmentación de PERSONAL_SANITARIO
Personal_sanitario03 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal03
PersonalSanitario_03
Cod_empleado Función Años de Experiencia Nombre Dirección Cod_Centro
CE9 Medico Especialista 4 Yair Yunes Pozón O3
8/19/2019 Sociedades Medicas Reporte BDD
9/13
CE10 Enfermero Auxiliar 1 Sonia Salas Los Ídolos O3
CE11 Farmacéutico 8 José Juan Misantla O3
CE12 Doctor 11 Fito Fosa El Porvenir O3Figura 11: Tabla PersonalSanitario_03 de la fragmentación de PERSONAL_SANITARIO
Personal_sanitario04 = PERSONAL_SANITARIO ⋉ Cod_Empleado = Cod_EmpleadoPersonal04
PersonalSanitario_04
Cod_empleado Función Años de Experiencia Nombre Dirección Cod_Centro
CE12 Enfermero 5 Olga Olmo Xalapa O4
CE13 Medico Especialista 7 Herí Humo Xalapa O4
CE14 Enfermero Auxiliar 3 Víctor Vidal Xalapa O4
CE15 Medico Especialista 8 Gina Gómez Atzalan O4
CE12 Doctor 11 Fito Fosa El Porvenir O3Figura 12: Tabla PersonalSanitario_04 de la fragmentación de PERSONAL_SANITARIO
Hay que destacar que aunque en la sede central no hay personal sanitario, se ha
considerado que para mayor completitud en la fragmentación mantendremos este
fragmento vacío.
CONSULTAS
Cod_Centro Cod_Empleado Cod_especialidad Dia_Semana Hr
O1 CE1 Traumatología lunes 9:00
O1 CE2 Traumatología martes 10:00
O1 CE3 Traumatología miércoles 11:00
O1 CE4 Traumatología jueves 12:00
O2 CE5 Traumatología viernes 13:00
O2 CE6 Pediatría lunes 09:00
O2 CE7 Pediatría martes 10:00
O2 CE8 Pediatría miércoles 11:00
O3 CE9 Pediatría jueves 12:00
O3 CE10 Pediatría viernes 13:00
O3 CE11 Ginecología lunes 09:00
O3 CE12 Ginecología martes 10:00O4 CE13 Ginecología miércoles 11:00
O4 CE14 Ginecología jueves 12:00
O4 CE15 Ginecología viernes 13:00
O4 CE16 Neurología lunes 09:00Figura 13: Tabla CONSULTAS
8/19/2019 Sociedades Medicas Reporte BDD
10/13
Como además se quiere la información de las consultas de cada centro, cual es suhorario y que especialidad se trata, se tendrá que fragmentar la relación CONSULTASverticalmente, con los siguientes nombres.
Consultas01 Consultas02 Consultas03 Consultas04
Fórmula general de la fragmentación horizontal primaria:
Ri=σPi(R )
Sentencias del algebra relacional:
Cosultasi= σcod_centro=i (CONSULTA)
Donde: i= {01, 02, 03, 04} i = {01, 02,03, 04}
Primer fragmento
Consultas01=
σcod_centro=01 (CONSULTA)
Tabla del primer fragmento:
CONSULTAS
Cod_Centro Cod_Empleado Cod_especialidad Dia_Semana Hr
O1 CE1 traumatologia lunes 9:00
O1 CE2 traumatologia martes 10:00
O1 CE3 traumatologia miércoles 11:00
O1 CE4 traumatologia jueves 12:00
Segundo fragmento:
Consultas02= σcod_centro=02 (CONSULTA)
Tabla del segundo fragmento:
CONSULTAS
Cod_Centro Cod_Empleado Cod_especialidad Dia_Semana Hr
O2 CE5 traumatologia viernes 13:00
8/19/2019 Sociedades Medicas Reporte BDD
11/13
O2 CE6 Pediatria lunes 09:00
O2 CE7 Pediatria martes 10:00
O2 CE8 Pediatria miercoles 11:00
Tercer fragmento:
Consultas03= σcod_centro=03 (CONSULTA)
Tabla del tercer fragmento:
CONSULTAS
Cod_Centro Cod_Empleado Cod_especialidad Dia_Semana Hr
O3 CE9 Pediatria jueves 12:00
O3 CE10 Pediatria viernes 13:00
O3 CE11 Ginecologia lunes 09:00
O3 CE12 Ginecologia martes 10:00
Cuarto fragmento:
Consultas04= σcod_centro=04 (CONSULTA)
Tabla del cuarto fragmento:
CONSULTAS
Cod_Centro Cod_Empleado Cod_especialidad Dia_Semana Hr
O4 CE13 Ginecologia miercoles 11:00
O4 CE14 Ginecologia jueves 12:00O4 CE15 Ginecologia viernes 13:00
O4 CE16 Neurologia lunes 09:00
Una vez aplicada esta fragmentación solo nos falta obtener las especialidadesdesarrolladas en cada una de las sedes de las sociedades medicas, para ellofragmentaremos la tabla ESPECIALIDADES mediante una fragmentación Horizontalderivada con los siguientes nombres:
Especialidad01 Especialidad02 Especialidad03 Especialidad04
Nota: Debemos aclarar que como la relación CENTRO es poco dinámica, es decir, no sufreapenas actualizaciones, se duplicara por todos los centros.
8/19/2019 Sociedades Medicas Reporte BDD
12/13
ESPECIALIDAD
Cod_Especialidad Nombre _Especialidad Descripción
CO1 Traumatología
CO2 Pediatría
CO3 Ginecología
CO4 NeurologíaFigura 18: Tabla ESPECIALIDADES
Formula: Ri⋉ Qi
Especialidadi = ESPECIALIDAD⋉ Cod_Especialidad Consultasi
Donde:i = {01, 02, 03,04}
Cod_Especialidad01 = ESPECIALIDAD ⋉ Cod_Especialidad = Cod_EspecialidadConsultas01
Cod_Especialidad02 = ESPECIALIDAD ⋉ Cod_Especialidad = Cod_EspecialidadConsultas02
Cod_Especialidad03 = ESPECIALIDAD ⋉ Cod_Especialidad = Cod_EspecialidadConsultas03
Cod_Especialidad04 = ESPECIALIDAD ⋉ Cod_Especialidad = Cod_EspecialidadConsultas04
Cod_Especialidad_01 = ESPECIALIDAD⋉ Cod_Especialidad Consultas_01ESPECIALIDAD
Cod_Especialidad Nombre _Especialidad Descripcion
CO1 traumatologia
Cod_Especialidad_02 = ESPECIALIDAD⋉ Cod_Especialidad Consultas_02ESPECIALIDAD
Cod_Especialidad Nombre _Especialidad Descripcion
CO2 Pediatria
Cod_Especialidad_03 = ESPECIALIDAD⋉ Cod_Especialidad Consultas_03ESPECIALIDAD
Cod_Especialidad Nombre _Especialidad Descripcion
CO3 Ginecologia
8/19/2019 Sociedades Medicas Reporte BDD
13/13
Cod_Especialidad_04 = ESPECIALIDAD⋉ Cod_Especialidad Consultas_04ESPECIALIDAD
Cod_Especialidad Nombre _Especialidad Descripcion
CO4 Neurologia