La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1/62 Mg. Samuel Oporto Díaz Modelo Relacional INTELIGENCIA ARTIFICIAL.

Presentaciones similares


Presentación del tema: "1/62 Mg. Samuel Oporto Díaz Modelo Relacional INTELIGENCIA ARTIFICIAL."— Transcripción de la presentación:

1 1/62 Mg. Samuel Oporto Díaz Modelo Relacional INTELIGENCIA ARTIFICIAL

2 2/62 RELACIONES

3 3/62 Relación El concepto modelo relacional se basa en el concepto matemático de relación. Una relación es un subconjunto de un Producto Cartesiano. El dominio es el conjunto de valores. Los denominamos con la letra D. Sean D1, D2, D3...Dn conjuntos de valores o escalares (dominio) entonces el Producto Cartesiano se define como: D1 X D2 X D3...X Dn = { (d1, d2, d3,...,dn) } donde d1 D1, d2 D2, d3 D3,..., dn Dn}

4 4/62 Relación Una Relación R es un subconjunto de –D1X D2X D3...XDn y y se denota como: –R (D1X D2X D3...XDn ) –R(Da, Db, Dc,...) se le llama el Esquema de Relación. –El grado se define como el número de componentes en el esquema de relación.

5 5/62 Esquema de la Relación Es el concepto relación matemática R sobre unos conjuntos de valores (dominio) D1, D2, D3...Dn El esquema se usa para describir una relación o instancia. –Cliente(Nombre,Calle,Ciudad, Número de cuenta) –Cuenta(Número de cuenta, saldo) Las columnas, en el ejemplo Nombre, Calle, Ciudad, Número de cuenta, se les llama atributos. Cada atributo es el nombre que se le da sobre el dominio D en el esquema de relación.

6 6/62 Propiedades de las Relaciones Todas las tuplas de una relación son distintas. No hay orden entre las tuplas No hay orden entre los atributos No existen atributos que no sean atómicos Se pueden relacionar relaciones entre sí a través de atributos comunes para evitar la duplicación de información.

7 7/62 MODELO RELACIONAL

8 8/62 Introducción al modelo relacional Introducido por E.F. Codd en Se representan los datos como una colección de relaciones. Cada relación se trata como una tabla de valores. El modelo relacional utiliza tablas bidimensionales para la representación lógica de los datos y las relaciones entre ellos. Podemos decir que una base de datos relacional consiste de un conjunto de tablas-relaciones relevantes.

9 9/62 Componentes de una BD relacional Consiste de tres componentes: –Estructura de Datos - Esquema de relación. –Integridad de Datos - reglas semánticas que controlan el comportamiento de la base de datos. –Manipulación de datos - operaciones en las relaciones.

10 10/62 ESTRUCTURA DE LOS DATOS

11 11/62 Estructura de datos - Tablas Consiste de un conjunto de columnas nominadas (que tienen un nombre) y una cantidad arbitrarias de filas (tuplas) Las filas o tuplas son las ocurrencias de la tabla (entidad o relación representada). Las columnas están asociadas con un dominio, que está especificado con un tipo a la columna nominada. La tabla representa un objeto o entidad propia. Cada tabla corresponde a un archivo almacenado en el nivel físico.

12 12/62 Propiedades de las tablas Cada tabla debe cumplir las siguientes condiciones: –Tener un formato único de fila definido en su esquema. –Las filas o tuplas son únicas. –Las columnas o atributos son únicos, tienen nombre. –El valor de una celda es único. –Las columnas representan un dominio, aunque ese dominio puede utilizarse en varias columnas. Cumple las siguientes propiedades: –Las filas pueden estar en cualquier orden. –Las columnas pueden estar en cualquier orden. –Se referencia a una fila mediante todos sus valores. –Se referencia a una columna mediante el nombre que la identifica.

13 13/62 Tuplas Siempre que se hace referencia al modelo relacional se utilizará la terminología de tuplas y atributos para filas y columnas. Grado de una tabla relacional es el número de atributos que la forma. G(BANCO)=3. Cardinalidad de una tabla relacional es el número de tuplas que contiene. C(BANCO)=5.

14 14/62 Dominios Es el conjunto de todos los posibles valores para una o más columnas de una tabla relacional. Los valores de un dominio se establecen con anterioridad a su utilización, expresando las posibles restricciones que se deseen para los atributos. Existen dos tipos de dominio: –Dominios generales o continuos, donde los atributos toman valores dentro de un rango definido o dentro de un ámbito. –Dominios restringidos o discretos, donde los atributos sólo pueden tomar valores dentro de un subconjunto previamente definido.

15 15/62 Claves Una clave es un atributo o conjunto de atributos cuyos valores distinguen unívocamente una tupla en una tabla. Es el conjunto mínimo de atributos cuyos valores le dan una identificación única a la tupla en la relación. Cumple las mismas propiedades que el modelo E-R. La clave primaria cumple los siguientes requisitos: –Sus valores deben ser siempre conocidos diferentes de nulos. –Deberá seleccionarse la que ocupe un menor espacio de almacenamiento. –Tener una codificación sencilla. –El contenido de sus valores no debe variar. –Que se utilice en otras tablas para tener una posible interrelación.

16 16/62 Índices Las claves se implementan físicamente mediante índices, éstos establecen formas alternativas de acceso a la información. –Índices primarios, formado por la clave primaria y debe ser único para cada tabla. –Índices secundarios, si existen claves secundarias, éstas se establecerán como índices secundarios, pudiéndose crear otros adicionales sobre atributos que no sean clave. A éstos últimos se les denominan índices secundarios múltiples porque pueden tener el mismo valor en diferentes tuplas.

17 17/62 INTEGRIDAD DE DATOS

18 18/62 Reglas de Integridad Referencial. Integridad de Entidades Para todas las instancias de una entidad los valores de la clave primaria deben: existir, ser únicos y no-NULL. Integridad Referencial. Todos los valores para la clave foranea deben coincidir con un valor de la clave foranea de la entidad asociada. Asegura que se pueda navegar corectamente en las entidades relacionadas. Las claves foraneas crean una relacion jerárquica entre las entidades asociadas. La entidad que recibe la clave foranea es el hijo o dependiente y la tabla que contiene la clave primaria es el entidad padre. Para asegurar estas relaciones se han diseñado las siguientes reglas: ºReglas de Delete. ºReglas de Insert

19 19/62 Reglas de Insert Estas pueden ser: Dependencia. Permite insercion de instancias en las entidades hijo unicamente si coincide con una entidad padre existente. Automática. Permite la inserción de una instancia de la entidad hijo. Si la coindicencia con la la entidad padre no existe, entonces este es creado. NULLificación. Permite la inserción de una instancia de la entidad hijo. Si la coindicencia con la la entidad padre no existe, entonces la clave foranea en la entidad hijo es puesto en NULL. Default. Permite la inserción de una instancia de la entidad hijo. Si la coindicencia con la la entidad padre no existe, entonces la clave foranea en la entidad hijo es puesto en un valor previamente definido. Configurable. Permite la inserción de una instancia de la entidad hijo unicamente si cierta validación configurable es encontrada. Sin Efecto. La inserción de una instancia es siempre permitido, no es necesario la coincidencia.

20 20/62 Reglas de Delete. Estas pueden ser: Restricción. Permite eliminar de instancias en las entidades padre unicamente si no existe instancias en las entidades hijos relacionadas. Cascade. Permite eliminar de instancias en las entidades padre y la eliminación de todas las instancias en las entidades hijos relacionales. NULLificación. Permite eliminar de instancias en las entidades padre, si exiset instancias en alguna entidad hijo, los valores de las atributos de la clave foranea son puestos en NULL. Default. Siempre permite la eliminación de instancias en las entidades padre, si existe instancias en alguna entidad hijo, los valores de las atributos de la clave foranea son puestos en un valor predefinido. Configurable. Permite la eliminación de instancias de la entidad padre unicamente si ciertas restriciocnes son cumplidas Sin Efecto. La eliminación de una instancia de la entidad padre es siempre permitido, no se virifica nada.

21 21/62 ALGEBRA RELACIONAL

22 22/62 Algebra Relacional Lenguaje Procedimental Seis operaciones básicas 1.selección 2.proyección 3.union 4.diferencia de conjunto 5.producto cartesiano 6.renombramiento Los operadores toman dos o más relaciones como entrada y su resultado es una nueva relación.

23 23/62 1. Selección Relación r ABCD A=B ^ D > 5 (r) ABCD

24 24/62 1. Selección Notación: p (r) p es llamado predicado de la selección Definido como: p ( r) = {t | t r and p(t)} Donde p es una formula consistente con el cálculo proposicional de terminos conectados por : (y), (o), (no) Cada termino es uno de: op o donde op es uno de: =,, >,. <. Ejemplo de selección: sucursal-nombre=Perryridge (cuenta)

25 25/62 2. Proyección Relación r: ABC AC = AC A,C (r)

26 26/62 2. Proyección Notación: A1, A2, …, Ak (r) donde A 1, A 2 son nombres de atributos y r es el nombre de la relación. El resultado es definido como una relación de k columnas obtenidas de borrar las columnas que no están listadas Las filas duplicadas son removidas del resultado E.j. Para eliminar el atributo sucursal-nombre de cuenta account-number, balance (cuenta)

27 27/62 3. Unión Relaciónes r, s: r s: AB AB 2323 r s AB

28 28/62 3. Unión Notación: r s Definido como: r s = {t | t r or t s} Para que r s sea válida. 1. r, s deben ser de la misma cardinalidad (mismo número de atributos) 2. Los dominios de los atributos deben ser compatibles find all customers with either an account or a loan 3. r y s pueden ser relaciones temporales que sean resultado de expresiones del álgebra relacional. E.j. customer-name (depositor) customer-name (borrower)

29 29/62 4. Diferencia de Conjunto Relations r, s: r – s : AB AB 2323 r s AB 1111

30 30/62 4. Diferencia de Conjunto Notación r – s Definida como: r – s = {t | t r and t s} Se debe asegurar que la diferencia de conjuntos se realice entre relaciones compatibles. –r y s deben ser de la misma aridad –A los domminios de los atributos de r y s sean compatibles

31 31/62 5. Producto Cartesiano Relationes r, s: r x s: AB 1212 AB CD E aabbaabbaabbaabb CD E aabbaabb r s

32 32/62 5. Producto Cartesiano Notación r x s Definido como: r x s = {(t, q) | t r and q s} Asume que los atributos de r(R) y s(S) son disjuntos. (Esto esto, R S = ). Si los atributos de r(R) y s(S) no son disjuntos, entonces se debe usar renombramiento.

33 33/62 Composición de Operaciones Se pueden construir expresiones usando múltiples operaciones Ejemplo A=C (r x s) Relationes r, s: r x s: AB 1212 AB CD E aabbaabbaabbaabb CD E aabbaabb r s

34 34/62 Composición de Operaciones Se pueden construir expresiones usando múltiples operaciones Ejemplo A=C (r x s) r x s Selecciona… A=C (r x s) AB CD E aabbaabbaabbaabb ABCDE aabaab

35 35/62 6. Renombramiento Permite un nuevo nombre para referirse a los resultados de expresiones del algebra relacional. Permite referirse a una relación por más de un nombre. Ejemplo: x (E) Devuelve la expresión E bajo el nombre X Si la expresión del algebra relacional E tiene aridad n, entonces x (A1, A2, …, An) (E) devuelve el resultado de la expresiónE bajo el nombre X, y con los atributos renombrados a A 1, A2, …., An.

36 36/62 Operaciones Adicionales Se definen operaciones que no adicionan poder al algebra relacioneal pero simplifican alfunas consultas. Intersección Reunión Natural División Asignación

37 37/62 7. Intersección Notación: r s Definida como: r s ={ t | t r and t s } Asume: –r, s tienen la misma aridad –Atributos de r y s son compatibles Note: r s = r - (r - s)

38 38/62 7. Intersección Relation r, s: r s A B A B 2323 r s A B 2

39 39/62 Notación: r s 8. Reunión Natural La reunión natural es una operación binaria que permite combinar ciertas selecciones y un producto cartesiano en una sola operación y elimina los atributos repetidos. Example: R = (A, B, C, D) S = (E, B, D) –Result schema = (A, B, C, D, E) –r s is defined as: r.A, r.B, r.C, r.D, s.E ( r.B = s.B r.D = s.D (r x s))

40 40/62 8. Reunión Natural Relaciones r, s: AB CD aababaabab B D aaabbaaabb E r AB CD aaaabaaaab E s r s

41 41/62 9. División Adecuada para consultas que incluyen la expresión para todos. Si r y s son relaciones de los esquemas R y S respectivamente donde: –R = (A 1, …, A m, B 1, …, B n ) –S = (B 1, …, B n ) El resultado de r s es una relación sobre el esquema R – S = (A 1, …, A m ) r s = { t | t R-S (r) u s ( tu r ) } r s

42 42/62 9. División Relations r, s: r s: A B 1212 AB r s

43 43/ Asignación La operación de asignación ( ) prevee una conveniente forma de expresar queries complejos. Ejemplo: Escribir r s como s temp1 R-S (r) temp2 R-S ((temp1 x s) – R-S,S (r)) result = temp1 – temp2 –El resultado a la derecha de es asignado a la relación de la izquierda de. –Se pueden usar variable en las sibsiguientes expresiones.

44 44/ Agregación Funciones de Agregación toma una colección de valores y retorna un solo valos como resultado. avg: valor promedio min: valor mínimo max: valor máximo sum: suma de valores count: número de valores Operaciones de Agregación en el algebra relacional G1, G2, …, Gn g F1( A1 ), F2( A2 ),…, Fn( An ) (E) –E es cualquier expresión del algebra relacional –G 1, G 2 …, G n es una lista de atributosque se agrupan (pueden ser vacios) –Cada F i es una función se agregación –Each A i es un nombre de atributo

45 45/ Agregación Relación r: AB C g sum(c) (r) sum-C 27

46 46/ Agregación Relación account agrupada por branch-name: branch-name g sum(balance) (account) branch-nameaccount-numberbalance Perryridge Brighton Redwood A-102 A-201 A-217 A-215 A branch-namebalance Perryridge Brighton Redwood

47 47/ Agregación El resultado de una agregación no tiene nombre –Se puede usar la operación de renombramiento para darle un nombre –Por conveniencia, se permite renombrar como parte de la operación de agregamiento branch-name g sum(balance) as sum-balance (account)


Descargar ppt "1/62 Mg. Samuel Oporto Díaz Modelo Relacional INTELIGENCIA ARTIFICIAL."

Presentaciones similares


Anuncios Google