38
Dimensión (instancia) Dado un esquema s, una dimensión de de tipo tipo Ƭ Ƭ ∈ d es una tupla D = (C D ,) donde: C D = {C j , j = 1,…,k} es un conjunto de categorías (niveles) Cada categoría C j tiene un único tipo de categoría correspondiente C j ,es decir, se tiene una función Type(C j ) = C j Signatura Type: C D C Ƭ

Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Embed Size (px)

Citation preview

Page 1: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Dimensión (instancia)Dado un esquema s, una dimensión de de tipo tipo ƬƬ ∈ d es una tupla D = (CD,⊏)

donde:

CD = {Cj, j = 1,…,k}

es un conjunto de categorías (niveles)

Cada categoría Cj tiene un único tipo de categoría correspondiente Cj ,es decir,

se tiene una función Type(Cj) = CjSignatura Type: CD CƬ

Page 2: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Una categoríacategoría (o nivel) Cj es un conjunto es un conjunto

de valoresde valores de tipo Cj

• ⊏ es un orden parcial en ∪j Cj

(unión de los valores de todas las categorías)

• De ahora en adelante se escribirá DimDim en vez de ∪j Cj

Page 3: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Ej: Sea una dimensión LOCATION de tipo de tipo ƬƬlocloc dada por Dloc = (Cloc, ⊏)

donde Cloc = {Coordinate, Roadway, District, City, Province, Country, IPAddres, Cell,⊤}

Donde, por ejemplo:

Type(Coordinate) = Ccoordinate,

Type(Roadway) = Croadway, etc.

Page 4: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Dado un par de valores (ei, ej) ∈ Ci x Cj tal que Type(Ci) ⊏Ƭ Type(Cj ),

eeii ⊏⊏ e ejj significa que ei está totalmente incluido en ej

Ej: Sea Ccity ⊏ Cprovince ,

Type(City) = Ccity ,

Type(Province) = Cprovince ,

(city12, province23) ∈ City x Province

y city12 ⊏ province23

Ƭ loc

Page 5: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

city12

province23

Page 6: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

La definición anterior se generaliza así:

• Dado un par de valores (ei, ej) ∈ Ci x Cj tal que Type(Ci) ⊏ Type(Cj ),

eeii ⊏⊏dd e ejj significa que ei está parcialmente incluido en ej

• d representa el grado de inclusión: d ∈ [0;1]– Si d = 1, la inclusión es total

– Si d = 0, indica que ei podría estar incluido en ej

(P)Ƭ

Page 7: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Algunas reglasSupóngase que Ci ⊏Ƭ Cj ⊏Ƭ Ck y que

Type(Ci) = Ci ,

Type(Cj) = Cj ,

Type(Ck) = Ck

entonces se cumple que

∀(ei, ej, ek) ∈ Ci x Cj x Ck :

Inclusión total

Page 8: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

a) Transitividad f-to-f (full to full)

Si (ei ⊏1 ej) ∧ (ej ⊏1 ek) (ei ⊏1 ek)

Gráficamente:

ekeiej

Page 9: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Supóngase que Ci ⊏ Cj ⊏ Ck , entonces:

b) Transitividad p-to-f (partial to full)

∀d ∈ [0;1)

Si (ei ⊏d ej)∧(ej ⊏1 ek) (ei ⊏d ek)

Gráficamente:

(P)Ƭ

(P)Ƭ

Page 10: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

ej

ek

ei

Nótese que si ej está contenido totalmente en ek y ei tiene unaparte en ej, entonces obligatoriamente ei tendrá una partecontenida en ek que como mínimo como mínimo será d

d

Page 11: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

c) Transitividad f-to-p (full to partial)

∀d ∈ [0;1)

Si (ei ⊏1 ej)∧(ej ⊏d ek) (ei ⊏0 ek)

Gráficamente:

Page 12: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

ekei

Nótese que si ei está contenido totalmente en ej y ej tiene unaparte en ek, no necesariamente ei tendrá una partecontenida en ek (safe approach)

ej

d

Page 13: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

d) Transitividad p-to-p (partial to partial)

∀ d1,d2 ∈ [0;1) x [0;1)

Si (ei ⊏d1 ej)∧(ej ⊏d2 ek) (ei ⊏0 ek)

Gráficamente:

Page 14: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

ej ekei

Nótese que si ei está contenido parcialmente en ej y ej tiene unaparte en ek, entonces no se puede asegurar que ei tengauna parte contenida en ek (safe approach nuevamente)

d2d1

Page 15: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Considérese el siguiente ejemplo donde se aplican las reglas de transitividad anteriores para deducir las relaciones entre otros niveles:

Page 16: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

¡Imprecisión!

a) b)

En la Figura b) las líneas punteadas indican los valores inferidos (no indican inclusión parcial)

a) Dimensión (categorías) y b) dimensión (instancia) Ƭloc

Page 17: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Hechos• Para definir formalmente los hechos sea

ei ⊑1 ej ≡ (ei ⊏1 ej )∨(ei = ej )• Sea un conjunto de hechos FF de tipo f y

sea una dimensión D = (CD, ⊏(P) ). • Una relación hecho-dimensión se define

como R ⊆ FF x Dim

• Cada hecho debe estar relacionado con al menos un valor de cada dimensión

Page 18: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Un hecho f ∈ F se dice que es caracterizado por un valor de dimensión ek: f ⇝ ek

Si ∃ei ∈ Dim ((f, ei) ∈ R ∧ ei ⊑1 ek))

• Esta definición se extiende para inclusión parcial así:

Page 19: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Un hecho f ∈ F se dice que es 0-caracterizado por un valor de dimensión ek: f ⇝0 ek

Si ∃ei ∈ Dim (((f, ei) ∈ R) ∧ (ei ⊑d ek) ∧

(d < 1))

• Y es 1-caracterizado: f ⇝1 ek

Si ∃ei ∈ Dim (((f, ei) ∈ R) ∧ (ei ⊑1 ek))

Page 20: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Dpto Z

Camino 33

f8

d = 0.6

f8 ⇝0 País W

Dpto K

f4

d = 1

f4 ⇝1

Ejemplos de caracterización 0 y 1

(f8, Camino 33) ∈ R (f4, Dpto K) ∈ R

0-caracterizado 1-caracterizado

Page 21: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Relaciones entre hechosy los valores de una dimensión

A

B

C

E

D

Las letras rojas en mayúscula simbolizan hechos

AA 0 City1⇝ DD ⇝1 City1

Las flechas punteadas indican los valores inferidos

Page 22: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Algunas propiedades del modeloSea un objeto multidimensional (MO)

M= {s, F, DM, RM} donde:

- s = (f, d) donde:

f es un tipo de hechos

d = {Ƭi, i = 1, ..., n} es un conjunto de tipos

de dimensiones

- F es un conjunto de hechos de tipo f

- DM = {Di, i = 1, ..., n} es un conjunto de dimensiones cada una de tipoƬi

- RM es un conjunto de relaciones de hechos-dimensiones: RM = {Ri, i = 1, ..., n}

Page 23: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Por ejemplo, si hay n dimensiones entonces RM se compone de n relaciones* donde se detalla como los hechos se relacionan con los valores de cada una de las n dimensiones

* Aunque la cardinalidad de RM podría ser mayor al número de dimensiones si hay un hecho que, por ejemplo, tiene varias relaciones con una misma dimensión.

Page 24: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Algunas propiedades

Dadas dos categorías Ci y Cj donde

Cj ∈ Anc(P) (Ci) se dice que la

transformación de Ci a Cj es de tipo onto si:

∀ej ∈ Cj (∃(ei,d) ∈ Ci x [0;1] (ei ⊏d ej ))Informalmente: todos los elementos del nivel superior (j) están relacionados con al menos un elemento del nivel inferior (i)Gráficamente:

Page 25: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

País 1 País 2

Dpto z Dpto w Dpto k

País 3

Dpto a Dpto c

Dpto b

Dpto d

La transformación de Dpto a País es onto porque todo paísse compone de al menos un Dpto.

Otro ejemplo: Día a Mes es onto porque todo mes se componeal menos de un día

Page 26: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Sean las categorías Ci, Cj y Ck donde

Ci ⊏ Cj ⊏ Ck se dice que la transformación

de Cj a Ck es covering con respecto a Ci si:

∀(ei,d) ∈ Ci x [0;1] (∀ek∈ Ck ((ei ⊏d ek )

∃(ej,di,dj) ∈ Cj x [0;1] x [0;1] ((ei ⊏ ej) ∧

(ej ⊏ ek ))))

(P)Ƭ

(P)Ƭ

di

dj

Page 27: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Informalmente: para todo elemento del nivel

i (el más inferior) que esté relacionado con

un elemento del nivel k (el más superior de

los tres) deberá existir el “puente” a través

de algún elemento del nivel j.

Gráficamente:

Page 28: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Carretera 99

Coordenada 124

Distrito 876

Coordenada 843

Debido a que no todas lascoordenadas están relacionadascon alguna carretera y dado que algunas de ellas se relacionandirectamente con un distrito,la transformación de carretera a distrito con respecto a coordenadano es covering.

En la dimensión tiempo, en las categorías año, mes y día la transformación de mes a año es coveringcon respecto a día

Page 29: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Dadas dos categorías Ci y Cj donde

Cj ∈ Anc(P) (Ci) se dice que la

transformación de Ci a Cj es estricta si:

∀(ei,di1,di2) ∈ Ci x [0;1] x [0;1] (∀(ej1, ej2 ) ∈

Cj x Cj ((ei ⊏ ej1 ) ∧ (ei ⊏ ej2 )

((ej1 = ej2 ) ∧ (di1= di2 ))))

di1 di2

Page 30: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Informalmente: un elemento de un nivel

inferior solo puede tener un elemento

“padre” en un nivel superior específico.

Gráficamente:

Page 31: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

11 Ago 1998

Agosto de 1998

14 Ago 1998 29 Oct 1997

Octubre de 1997

La transformación de Día a Mes es estricta(un día solo pertenece a un mes específico)

Page 32: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Una jerarquía es de agregación estricta si – es estricta (todas las transformaciones son

estrictas)

o

– Cj ∈ Anc(P) (Ci) y el mapeo de Ci a Cj es no estricto entonces Anc(P) (Cj) = ∅.

De lo contrario es de agregación no estricta.

Gráficamente:

Page 33: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Carretera 99

Distrito 876

Coordenada 843

Carretera 89

Distrito 806

Como la transformación de Coordenada a Carretera esno estricta y como Anc(P) (Carretera) = {Distrito} ≠ ∅entonces la jerarquía es de agregación no estricta.

La jerarquía Día, Mes y Año es de agregación estricta porquees estricta (todas sus transformaciones son estrictas).

Page 34: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Se dice que una dimensión está normalizada dimensión está normalizada si todas sus jerarquías son onto, covering y de agregación estricta.

• Una dimensión normalizada facilita y evita ambigüedades en la agregación de los hechos.

• Se proponen algoritmos para normalizar una dimensión. Por ejemplo, si una jerarquía no es covering, se pueden introducir elementos artificiales (placeholders) para cubrir los “puentes” faltantes, si una jerarquía no es onto se pueden introducir hijos artificiales, etc.

Page 35: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Make covering

Page 36: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Make onto

Page 37: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

Make strict

Page 38: Dimensión (instancia) de tipo Ƭ Dado un esquema s, una dimensión de tipo Ƭ ∈ d es una tupla D = (C D, ⊏ ) donde: C D = {C j, j = 1,…,k} es un conjunto

• Se dice que un objeto multidimensional objeto multidimensional está normalizadoestá normalizado si todas sus dimensiones Di están normalizadas y si:

∀Ri ∈ RM (((f,e) ∈ Ri) (e ∈ ⊥ ))

Es decir, todos los hechos se relacionan

solo con elementos pertenecientes al

nivel más inferior (⊥) de cada dimensión.

Di