presentación de powerpoint - uv

34
Adquisición y Tratamiento de Datos 1 El modelo relacional Concepto de modelo de datos Un modelo de datos es un conjunto de: Conceptos. Reglas. Convenciones. Que nos permiten: Describir. Manipular. Los datos de un cierto mundo real que deseamos almacenar.

Upload: others

Post on 16-Oct-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Adquisición y Tratamiento de Datos 1

El modelo relacional

Concepto de modelo de datos

• Un modelo de datos es un conjunto de:– Conceptos.– Reglas.– Convenciones.

• Que nos permiten:– Describir.– Manipular.

• Los datos de un cierto mundo real que deseamos almacenar.

Adquisición y Tratamiento de Datos 2

El modelo relacional

Estática de un modelo de datos

• La estática de un modelo de datos esta compuesta por:– Elementos permitidos:

• Objetos: Entidades, relaciones, registros, etc.• Asociaciones entre objetos: Interrelaciones, conjuntos.• Propiedades: Atributos, campos, etc.• Dominios: Valores que pueden tomar las propiedades.

– Elementos no permitidos o restricciones.• Inherentes: Propias del modelo.• De integridad o semánticas: Impuestas por representar el

modelo el mundo real.

Adquisición y Tratamiento de Datos 3

El modelo relacional

Dinámica de un modelo de datos

• La ocurrencia del esquema en ta es BDa

• La ocurrencia del esquema en tb es BDb

• Si se ha producido algún cambio en el esquema entre ta y tb, entonces BDa <> BDb

• El cambio se debe producir por un operador O de forma que O(BDa)= BDb

• Una operación tiene dos componentes:– Localización o enfoque: Localizar el objeto(s) sobre

el(los) que actúa.– Acción: Realizada sobre los objetos localizados.

Adquisición y Tratamiento de Datos 4

El modelo relacional

El modelo relacional (I)

• Esta basado en la relación.

• Se representa mediante tablas.

NOMBRE

atributo 1 atributo 2 … atributo n

…… …

XXX

XXX

XXX

XXX

XXX XXX XXX

XXX

XXX tupla 1

tupla 2

tupla m

Adquisición y Tratamiento de Datos 5

El modelo relacional

El modelo relacional (II)

• Dominio:– Conjunto finito de valores.– Homogéneos.– Atómicos.

Atributos

Cardinalidad 3

Grado 4

CATEGORIAS

Catedrático

Titular

Ayudante

APELLIDOSNOMBRESCODIGOS

HNNNN XXXXXX XXXXXX

15 50

PROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003

AntonioAmparoIsabel

García GarcíaPérez PérezFernández Fernández

CATEGORIA

CatedráticoAyudanteTitular

Tuplas

DOMINIOS

Adquisición y Tratamiento de Datos 6

El modelo relacional

Concepto de valor nulo (I)

• Un valor nulo es una señal que representa:– Información desconocida.– Atributo inaplicable.– Etc.

• Su existencia es necesaria para:– Crear elementos con valores desconocidos en este

momento.– Añadir nuevos atributos a relaciones existentes.– Etc.

Adquisición y Tratamiento de Datos 7

El modelo relacional

Concepto de valor nulo (II)

• La introducción de valores nulos exige redefinir las operaciones:– De comparación.– Aritméticas.– Algebraicas.– Agregación.

• Por ejemplo, ¿son iguales dos valores nulos?.

• Necesidad de definir L3V y L4V.

Adquisición y Tratamiento de Datos 8

El modelo relacional

Lógica trivaluada (I)

• Trabaja con tres valores:– Cierto o verdadero (C).– Falso o mentira (F).– Quizás o nulo (Q).

AND

C

Q

F

C

C

Q

Q

Q

Q

F

F

F

F F F

OR

C

Q

F

C

C

C

Q

C

Q

F

C

Q

C Q F

NOT

C

Q

F

F

Q

C

Adquisición y Tratamiento de Datos 9

El modelo relacional

Lógica trivaluada (II)

• Tres nuevos operadores sobre valores nulos:– MAYBE(A) -> C si A=Q.– IS_NULL(A) -> C si A=Q.– IF_NULL(A,B) -> A si A<>Q, B si A=Q.

• No es intuitiva, pues si hacemos las preguntas:– A=Libros con fecha <=2000.– B= Libros con fecha >2000.

• A unión B no contiene todos los libros, !!! Faltan los libros de fecha desconocida !!!

Adquisición y Tratamiento de Datos 10

El modelo relacional

Lógica trivaluada (III)

• Por ello, expresiones que son verdad en L2V como:– X=X– P OR NOT(P)

• No son validas en L3V, debiendo ser transformadas:– P OR NOT(P) OR Q.

Adquisición y Tratamiento de Datos 11

El modelo relacional

Lógica cuatrivaluada

• Diferencia entre valores nulos inaplicables (I) de valores nulos desconocidos (A).

• No existen productos relacionales que la utilicen.

AND

C

A

F

C

C

A

A

A

A

F

F

F

F F F

I

I

I

I

I

F

II F

OR

C

A

F

C

C

C

A

C

A

F

C

A

C A F

I

I

C

A

C

F

IA F

NOT

C

A

F

F

A

C

I I

Adquisición y Tratamiento de Datos 12

El modelo relacional

Álgebra relacional• Sea R una relación y O un operador del álgebra

relacional, entonces:– R’=O(R) es una relación.

• Por ello se cumple la propiedad de cierre:– R’=On(...O2(O1(R))) es una relación.

• Los operadores pueden clasificarse en:– Primitivos: No pueden obtenerse de otros.– Derivados: Pueden obtenerse de otros.– Unarios: Actúan sobre una sola relación.– Binarios: Actúan sobre dos relaciones.

Adquisición y Tratamiento de Datos 13

El modelo relacional

Operador de asignación y renombrado

• Permite almacenar el resultado de una consulta en una nueva relación y para renombrar atributos:– R’ <- O(R)– R’ <- R

– R’(A1,A2,...,An)<-O(R)

– R’(A1,A2,...,An)<-R

Adquisición y Tratamiento de Datos 14

El modelo relacional

Operador primitivo unario restricción (I)

• La restricción () obtiene de una relación R los elementos que cumplen una condición p:– r’(R) = { ti ∈ r(R) / p(ti) = “cierto”}

• La condición P puede ser sencilla o compuesta (utilizando los operadores AND, OR y NOT).

Adquisición y Tratamiento de Datos 15

El modelo relacional

Operador primitivo unario restricción (II)• Ejemplo:

σPROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003H0004H0005

AntonioAmparoIsabelJoséCarlos

García GarcíaPérez PérezFernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

CatedráticoAyudanteTitularAyudanteTitular

CODIGO NOMBRE APELLIDOS CATEGORIA

H0002H0004

AmparoJosé

Pérez PérezHernández Hernández

AyudanteAyudante

σcategoria=ayudante(PROFESOR)

Adquisición y Tratamiento de Datos 16

El modelo relacional

Operador primitivo unario proyección• La proyección () obtiene de una relación R los

atributos X seleccionados (X ⊂ A y X ≠ Ø):– r’(R’) = {ti(X) / X ⊂ A}

• Ejemplo:σPROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003H0004H0005

AntonioAmparoIsabelJoséCarlos

García GarcíaPérez PérezFernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

CatedráticoAyudanteTitularAyudanteTitular

CATEGORIA

CatedráticoAyudanteTitular

πcategoria(PROFESOR)

Adquisición y Tratamiento de Datos 17

El modelo relacional

Operadores binarios• Los operadores binarios exigen generalmente que las

relaciones sean compatibles en sus esquemas:– ∀ A1i ∃ A2j / dom(A1i) = dom(A2j) y ∀ A2j ∃ A1i / dom(A2j) = dom(A1i)

• Esto no implica que los nombres de los atributos sean los mismos, pues si son distintos se pueden renombrar:

– PDI(codigo, nombre, apellidos, categoria) ← PDI1σPROFESOR

NOMBRECODIGO APELLIDOS

H� • ¨ ÿH� • ¨ ÿH� • ¨ ÿ

AntonioAmparoIsabel

García GarcíaPérez PérezFernández Fernández

CATEGORIA

CatedráticoAyudanteTitular

PDI1

NOMBRECODIGO APELLIDOS

H0003H0004H0005

IsabelJoséCarlos

Fernández FernándezHernández HernándezMartínez Martínez

TRABAJO

TitularAyudanteTitular

Adquisición y Tratamiento de Datos 18

El modelo relacional

Operador primitivo binario unión• Dos relaciones r1 y r2 con esquemas compatibles:

– r(R) = {ti / ti ∈ r1 ∨ ti ∈ r2}

• Los elementos duplicados se eliminan pues es un conjunto.

σPROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003

AntonioAmparoIsabel

García GarcíaPérez PérezFernández Fernández

CATEGORIA

CatedráticoAyudanteTitular

PDI

NOMBRECODIGO APELLIDOS

H0003H0004H0005

IsabelJoséCarlos

Fernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

TitularAyudanteTitular

NOMBRECODIGO APELLIDOS

H0001H0002H0003H0004H0005

AntonioAmparoIsabelJoséCarlos

García GarcíaPérez PérezFernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

CatedráticoAyudanteTitularAyudanteTitular

PROFESOR ∪ PDI

Adquisición y Tratamiento de Datos 19

El modelo relacional

Operador primitivo binario diferencia

• Dos relaciones r1 y r2 con esquemas compatibles:

– r(R) = {ti / ti ∈ r1 ∧ ti ∉ r2}

σPROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003

AntonioAmparoIsabel

García GarcíaPérez PérezFernández Fernández

CATEGORIA

CatedráticoAyudanteTitular

PDI

NOMBRECODIGO APELLIDOS

H0003H0004H0005

IsabelJoséCarlos

Fernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

TitularAyudanteTitular

NOMBRECODIGO APELLIDOS

H0001H0002

AntonioAmparo

García GarcíaPérez Pérez

CATEGORIA

CatedráticoAyudante

PROFESOR - PDI

Adquisición y Tratamiento de Datos 20

El modelo relacional

Operador primitivo binario producto cartesiano generalizado (I)

• Dos relaciones r1 y r2 con esquemas R1 y R2, su producto cartesiano generalizado:– Tendrá un esquema R dado por:

– (A1i : D1i ,…, A1n1 : D1n1, A2i’ : D2i’ ,…, A2n2 : D2n2)

– Tendrá una extensión dada por:• {<V1i1,…,V1in1,V2j1,…,V2jn2> / ∀i ∀j (<V1i1,…,V1in1> ∈ r1 ∧ < V2j1,

…,V2jn2> ∈ r2)}

Adquisición y Tratamiento de Datos 21

El modelo relacional

Operador primitivo binario producto cartesiano generalizado (II)

• Ejemplo: ASIGNATURA PROFESOR

DESCRIPCION NUMERO

10000 10001 10002

Tratamiento de datos Análisis estadístico Cálculo numérico

NOMBRE CODIGO APELLIDOS

H0001 H0002

Antonio Amparo

García García Pérez Pérez

CATEGORIA

Catedrático Ayudante

NOMBRE CODIGO APELLIDOS

H0001 H0001 H0001 H0002 H0002 H0002

Antonio Antonio Antonio Amparo Amparo Amparo

García García García García García García Pérez Pérez Pérez Pérez Pérez Pérez

CATEGORIA

Catedrático Catedrático Catedrático Ayudante Ayudante Ayudante

NOMBRE NUMERO

10000 10001 10002 10000 10001 10002

Tratamiento de datos Análisis estadístico Cálculo numérico Tratamiento de datos Análisis estadístico Cálculo numérico

PROFESOR X ASIGNATURA

Adquisición y Tratamiento de Datos 22

El modelo relacional

Operador derivado binario combinación

• La combinación de dos relaciones esta formada por las tuplas que satisfacen la condición:

• {<V1i1 … V1in1 V2j1 … V2jn2> / ∀i ∀j (<V1i1 … V1in1> ∈ r(R1) ∧ <V2j1 … V2jn2> ∈ r(R2) ∧ V1ik V2jl}

• Donde representa una condición que han de satisfacer las tuplas resultantes.

• Es un producto cartesiano generalizado seguido de una restricción.

Adquisición y Tratamiento de Datos 23

El modelo relacional

Operador derivado binario combinación natural• Es una combinación en la cual se elimina de las tuplas

resultantes uno de los atributos de la condición.• Es un producto cartesiano generalizado seguido de

restricción y de proyección.ASIGNATURAPROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003H0004H0005

AntonioAmparoIsabelJoséCarlos

García GarcíaPérez PérezFernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

CatedráticoAyudanteTitularAyudanteTitular

DATOSNUMERO

100001000110002

Tratamiento de datosAnálisis estadísticoCálculo numérico

PROFESOR

H0001H0001H0002

CODIGO NOMBRE APELLIDOS CATEGORIA DATOSNUMERO

100001000110002

Tratamiento de datosAnálisis estadísticoCálculo numérico

H0001H0001H0002

AntonioAntonioAmparo

García GarcíaGarcía GarcíaPérez Pérez

CatedráticoCatedráticoAyudante

PROFESOR * ASIGNATURA (PROFESOR.CODIGO=ASIGNATURA.PROFESOR)

Adquisición y Tratamiento de Datos 24

El modelo relacional

Operador derivado binario intersección

• Dos relaciones r1 y r2 con esquemas compatibles– r(R) = {ti / ti ∈ r1 ∧ ti ∈ r2}

• Puede definirse como R1 ∩ R2 = R1 – (R1 – R2) o también R2 – (R2 – R1).

σPROFESOR

NOMBRECODIGO APELLIDOS

H0001H0002H0003

AntonioAmparoIsabel

García GarcíaPérez PérezFernández Fernández

CATEGORIA

CatedráticoAyudanteTitular

PDI

NOMBRECODIGO APELLIDOS

H0003H0004H0005

IsabelJoséCarlos

Fernández FernándezHernández HernándezMartínez Martínez

CATEGORIA

TitularAyudanteTitular

NOMBRECODIGO APELLIDOS

H0003 Isabel Fernández Fernández

CATEGORIA

Titular

PROFESOR n PDI

Adquisición y Tratamiento de Datos 25

El modelo relacional

Operador derivado binario división (I)

• Dos relaciones r1 y r2 con esquemas R1 y R2, su división:– Tendrá un esquema R dado por:

• (A11, A12,…,A1n1) – (A21, A22,…,A2n2)

– Tendrá una extensión dada por:• r(R) = {<Vi1,…,Vi(n1-n2)> / ∀ <Vi(n1-n2+1),…,Vin2 > ∈ r2 ∃ <Vi1,…,Vi(n1-

n2),Vi(n1-n2+1),…,Vin> ∈ r1}

Puede definirse como R1 : R2 = C(R1) – C (R2

X C (R1) – R1)

– Siendo C el conjunto de atributos de A menos B.

Adquisición y Tratamiento de Datos 26

El modelo relacional

Operador derivado binario división (II)• Ejemplo: ASIGNATURA PROFESOR_ASIGNATURA

NOMBRE CODIGO APELLIDOS

H0001 H0001 H0002 H0002 H0002 H0003 H0004 H0004 H0005 H0005

Antonio Antonio Amparo Amparo Amparo Isabel José José Carlos Carlos

García García García García Pérez Pérez Pérez Pérez Pérez Pérez Fernández Fernández Hernández Hernández Hernández Hernández Martínez Martínez Martínez Martínez

CATEGORIA

Catedrático Catedrático Ayudante Ayudante Ayudante Titular Ayudante Ayudante Titular Titular

ASIGNATURA

10000 10002

ASIGNATURA

10000 10001 10000 10001 10002 10003 10002 10003 10000 10002

CODIGO NOMBRE APELLIDOS CATEGORIA

H0002 H0005

Amparo Carlos

Pérez Pérez Martínez Martínez

Ayudante Titular

PROFESOR_ASIGNATURA : ASIGNATURA

Adquisición y Tratamiento de Datos 27

El modelo relacional

Operador agrupación (I)

• Se utiliza para poder aplicar funciones de agregación:– Suma.– Media.– Frecuencia.

• Agrupan en subconjuntos que poseen valores comunes de ciertos atributos especificados.

Adquisición y Tratamiento de Datos 28

El modelo relacional

Operador agrupación (II)• Ejemplo:

PROFESOR

NOMBRE CODIGO APELLIDOS

H0001 H0002 H0003 H0004 H0005

Antonio Amparo Isabel José Carlos

García García Pérez Pérez Fernández Fernández Hernández Hernández Martínez Martínez

CATEGORIA

Catedrático Ayudante Titular Ayudante Titular

SALARIO

3500 1500 2400 1600 2600

CATEGORIA MEDIA(SALARIO)

Catedrático Ayudante Titular

3500 1550 2500

PROFESOR AGRUPACION_POR CATEGORIA,MEDIA(SALARIO)

Adquisición y Tratamiento de Datos 29

El modelo relacional

Operador cierre transitivo• Es una operación unaria sobre dos atributos

compatibles (tienen el mismo dominio) de una relación.

TEMAS

TEMA_P TEMA_S

FísicaQuímicaQuímicaMatemáticasEstadística

QuímicaAnalíticaEstadísticaEstadísticaCalculo

Cierre transitivo de TEMAS

TEMA_P TEMA_S

FísicaQuímicaQuímicaMatemáticasEstadísticaFísicaFísicaQuímicaMatemáticasFísica

QuímicaAnalíticaEstadísticaEstadísticaCalculoAnalíticaEstadísticaCalculoCalculoCalculo

Adquisición y Tratamiento de Datos 30

El modelo relacional

Operador combinación externa (I)

• Impide que desaparezcan tuplas cuando se aplica la combinación natural debido a que una tupla no “combina” con ninguna otra.

• Introducen valores nulos en la combinación.

• El valor nulo puede aparecer en:– La derecha: /* -> Permanecen tuplas de la izquierda.– La izquierda: */ -> Permanecen tuplas de la derecha.– Ambas: /*/

Adquisición y Tratamiento de Datos 31

El modelo relacional

Operador combinación externa (II)• Ejemplo:

PROFESOR_ASIGNATURA

ASIGNATURA PROFESOR

NOMBRE CODIGO APELLIDOS

H0001 H0002 H0003 H0004 H0005

Antonio Amparo Isabel José Carlos

García García Pérez Pérez Fernández Fernández Hernández Hernández Martínez Martínez

CATEGORIA

Catedrático Ayudante Titular Ayudante Titular

DATOS NUMERO

10000 10001 10002

Tratamiento de datos Análisis estadístico Cálculo numérico

PROFESOR

H0001 H0001 H0002

CODIGO NOMBRE APELLIDOS CATEGORIA DATOS NUMERO

10000 10001 10002 NULL NULL NULL

Tratamiento de datos Análisis estadístico Cálculo numérico NULL NULL NULL

H0001 H0001 H0002 H0003 H0004 H0005

Antonio Antonio Amparo Isabel José Carlos

García García García García Pérez Pérez Fernández Fernández Hernández Hernández Martínez Martínez

Catedrático Catedrático Ayudante Titular Ayudante Titular

PROFESOR /* ASIGNATURA (PROFESOR.CODIGO=ASIGNATURA.PROFESOR)

Adquisición y Tratamiento de Datos 32

El modelo relacional

Operador posible (I)

• Puede aplicarse con cualquier otro operador del algebra

• Utiliza la lógica trivaluada y admite como validos los resultados “quizás”.– X = NULL– NULL =NULL

Adquisición y Tratamiento de Datos 33

El modelo relacional

Operador posible (II)• Ejemplo

b=cR2R1

b=cR2MAYBE R1

R1

a

112Nulo3

b

5Nulo42Nulo

R2

c

52NuloNulo

d

3467

a b c d

1Nulo

52

52

34

a b c d

111111122NuloNuloNulo3333

555NuloNuloNuloNulo44222NuloNuloNuloNulo

5NuloNulo52NuloNuloNuloNulo2NuloNulo52NuloNulo

3673467674673467

Adquisición y Tratamiento de Datos 34

El modelo relacional

Operador posible (III)• Ejemplo

PROFESOR_ASIGNATURA

PROFESOR_ASIGNATURA

CODIGO NOMBRE APELLIDOS CATEGORIA DATOSNUMERO

100001000110002NuloNuloNulo

Tratamiento de datosAnálisis estadísticoCálculo numéricoNuloNuloNulo

H0001H0001H0002H0003H0004H0005

AntonioAntonioAmparoIsabelJoséCarlos

García GarcíaGarcía GarcíaPérez PérezFernández FernándezHernández HernándezMartínez Martínez

CatedráticoCatedráticoAyudanteTitularAyudanteTitular

CODIGO NOMBRE APELLIDOS CATEGORIA DATOSNUMERO

10002 Cálculo numéricoH0002 Amparo Pérez Pérez Ayudante

CODIGO NOMBRE APELLIDOS CATEGORIA DATOSNUMERO

10002NuloNuloNulo

Cálculo numéricoNuloNuloNulo

H0002H0003H0004H0005

AmparoIsabelJoséCarlos

Pérez PérezFernández FernándezHernández HernándezMartínez Martínez

AyudanteTitularAyudanteTitular

σNUMERO=”10002”PROFESOR_ASIGNATURA

MAYBE(σ)NUMERO=10002PROFESOR_ASIGNATURA