La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

INTELIGENCIA ARTIFICIAL

Presentaciones similares


Presentación del tema: "INTELIGENCIA ARTIFICIAL"— Transcripción de la presentación:

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

2 RELACIONES

3 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 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 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 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 MODELO RELACIONAL

8 Introducción al modelo relacional
Introducido por E.F. Codd en 1979. 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 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 ESTRUCTURA DE LOS DATOS

11 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 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 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 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 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 Í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 INTEGRIDAD DE DATOS

18 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 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 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 ALGEBRA RELACIONAL

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

23 1. Selección A=B ^ D > 5 (r) Relación r A B C D     1 5 12 23
7 3 10 A=B ^ D > 5 (r) A B C D 1 23 7 10

24 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: <atributo> op <atributo> o <constante> donde op es uno de: =, , >, . <.  Ejemplo de selección:  sucursal-nombre=“Perryridge”(cuenta)

25 2. Proyección Relación r: A,C (r) A B C   10 20 30 40 1 2 A C A C 
=

26 2. Proyección Notación: A1, A2, …, Ak (r)
donde A1, A2 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 3. Unión Relaciónes r, s: r  s: A B A B   1 2   2 3 s r A B   1

28 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 4. Diferencia de Conjunto
Relations r, s: A B A B 1 2 2 3 s r r – s: A B 1

30 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 5. Producto Cartesiano Relationes r, s: r x s: A B C D E   1 2   
10 20 a b r s r x s: A B C D E 1 2 10 20 a b

32 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 Composición de Operaciones
Se pueden construir expresiones usando múltiples operaciones Ejemplo A=C(r x s) A B C D E Relationes r, s: 1 2 10 20 a b A B C D E r s 1 2 10 20 a b r x s:

34 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) A B C D E 1 2   10 20 a b A B C D E 1 2 10 20 a b

35 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 A1, A2, …., An.

36 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 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 7. Intersección Relation r, s: r  s A B A B  1  2 2   3 r s A B

39 8. Reunión Natural Notación: r s 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 8. Reunión Natural Relaciones r, s: r s B D E A B C D 1 3 2 a b   
1 2 4 a b r s r s A B C D E 1 2 a b

41 9. División r  s 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 = (A1, …, Am, B1, …, Bn) S = (B1, …, Bn) El resultado de r  s es una relación sobre el esquema R – S = (A1, …, Am) r  s = { t | t   R-S(r)   u  s ( tu  r ) }

42 9. División Relations r, s: r  s: A B B      1 2 3 4 6 1 2 s A r

43 10. 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 11. 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 G1, G2 …, Gn es una lista de atributosque se agrupan (pueden ser vacios) Cada Fi es una función se agregación Each Ai es un nombre de atributo

45 11. Agregación Relación r: A B C 7 3 10 sum-C g sum(c) (r) 27

46 11. Agregación branch-name g sum(balance) (account)
Relación account agrupada por branch-name: branch-name account-number balance Perryridge Brighton Redwood A-102 A-201 A-217 A-215 A-222 400 900 750 700 branch-name g sum(balance) (account) branch-name balance Perryridge Brighton Redwood 1300 1500 700

47 11. Agregación branch-name g sum(balance) as sum-balance (account)
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 "INTELIGENCIA ARTIFICIAL"

Presentaciones similares


Anuncios Google