You are on page 1of 38

Bases de Datos

Unidad II Modelos de Datos


Sergio Snchez Rios.
Ingeniero en Informtica Licenciado en Informtica

Sergio Snchez

Introduccin
Un modelo de datos es una herramienta intelectual (conjunto de conceptos y reglas) que permite representar las propiedades estticas y dinmicas del mundo real objeto de estudio. Independiente de las particularidades de los modelos, todos deben representar estas propiedades:
Propiedades estticas: objetos de informacin (entidades), propiedades de los objetos (atributos), relaciones entre objetos, y restricciones sobre los objetos o sus relaciones. Propiedades dinmicas: operaciones sobre los objetos o sus relaciones, relaciones entre operaciones (transacciones), y restricciones sobre la evolucin de los objetos y sus relaciones.
Sergio Snchez

Introduccin
La representacin del mundo real utilizando un modelo de datos se denomina esquema. Por lo tanto, un conjunto de datos estructurado segn un cierto esquema es una base de datos, y un sistema de gestin de base de datos es el software que proporciona los lenguajes asociados a un modelo de datos: lenguaje de definicin de esquemas y el lenguaje de manipulacin de datos (consulta y actualizacin). Los modelos de datos han experimentado una larga evolucin:
1. 2. 3. 4.

Modelo de Datos primitivos. Modelo de Datos Clsicos. Modelo Orientado a Objetos. Modelo de datos semntico.
Sergio Snchez

Conceptos bsicos de los modelos de Datos


Aunque los modelos de datos no son idnticos, es posible identificar en ellos conceptos que, definidos con terminologa y formalismo distinto, tienen el mismo significado. Estos conceptos son: Desde un punto de vista esttico:
Objeto. Relacin. Restriccin de integridad esttica.

Desde un punto de vista dinmico:


Operaciones. Transacciones. Restricciones de integridad dinmica.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipo de Objeto


Un objeto es cualquier persona, concepto, suceso o evento (en definitiva, cualquier cosa ) con existencia independiente sobre la cual se desea almacenar informacin En el esquema no se puede representar de forma individual cada uno de los objetos observados, sino que se va representando la clase o tipo genrico al que pertenecen. Un tipo de objeto en un modelo de datos es el concepto que permite representar a un conjunto de objetos similares. Un tipo de objeto define de forma genrica a un conjunto de objetos a travs de sus propiedades (o atributos), es decir, a travs de cualquier informacin que interesa guardar sobre los objetos del tipo.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipo de Objeto


Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). En este sistema hay tres tipos de objetos: Profesor, Asignaturas y Departamento. Los atributos que interesan del tipo de objeto Profesor son el cdigo, el nombre, el telfono y la categora. Del tipo Asignatura son el cdigo, nombre de prctica asignado en el plan de estudios, y el curso y semestre en que se imparte. Del tipo Departamento son el cdigo, el nombre del director y el telfono.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipo de Relacin


Una relacin es una asociacin entre objetos. En el esquema no se pueden representar de forma individual cada una de las relaciones existentes. Estas relaciones se representan mediante tipos de relacin.

Un tipo de relacin en un modelo de datos es el concepto que permite representar un conjunto de relaciones de caractersticas similares.
Los tipos de relaciones relevantes se obtienen clasificando las relaciones observadas en la realidad. Los tipos relacin pueden tener atributos que describen la relacin, pero que no pertenecen a ninguno de los objetos que Sergio Snchez conecta.

Conceptos bsicos de los modelos de Datos Tipo de Relacin


Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). Se pueden identificar tres tipos de relaciones:
1. Relacin entre profesor y departamento, que representa al departamento al que pertenece cada profesor. A la relacin se le denomina PERTENECE. Relacin entre Asignatura y Departamento, que representa el departamento al que est adscrita cada asignatura. A est relacin se le va a denominar ADSCRITA. Relacin entre Profesor y Asignatura, representa las asignaturas que imparte cada profesor, le denominamos DOCENCIA. Esta relacin tiene dos atributos, que indican el nmero de grupos de teora y prctica asignadas a un profesor.
Sergio Snchez

2.

3.

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Una restriccin esttica es una propiedad del mundo real, representado por el esquema, que limita sus extensiones vlidas. Estas consisten generalmente en:

Restricciones sobre atributos.


Restricciones sobre objetos. Restricciones sobre relaciones.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre atributos.

Restriccin de valor : limita el conjunto de valores posibles de un atributo. Estas restricciones se logran asociando al atributo un dominio, lo que significa la especificacin del conjunto de valores que lo forman y del conjunto de operadores asociados. Restriccin de valor no nulo: se define sobre aquellos atributos que necesariamente deben tener un valor para cada ocurrencia del objeto.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre atributos. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). Restriccin de Valor: los crditos de las asignaturas deben ser valores reales positivos y los grupos asignados deben ser valores enteros positivos. Se deben generar dos dominios Grupos y Crditos, estos no se pueden sumar pero si multiplicar entre si. Restricciones de valor no nulo: Podran ser el nombre del profesor, de la asignatura, etc..

Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre objetos Limitan el conjunto de ocurrencias posibles de un tipo de objeto. Restricciones de Identificacin: cada objeto debe identificarse de forma nica, para diferenciarlo del resto de objetos del mismo tipo. Para ello cada objeto deber ser identificable por un atributos o un conjunto de atributos nicos. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). Para el tipo Departamento el atributo identificador debe ser el cdigo al igual, que para los tipos de objetos Profesores y Asignaturas.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre relaciones Estas restricciones limitan la participacin del objeto en las relaciones, y se denomina restricciones de cardinalidad.

Las propiedades que interesa expresar son las referentes al nmero mnimo (cardinalidad mnima) y mximo (cardinalidad mxima) de objetos de tipo A que se puedan relacionar a travs de R con un objeto de tipo B, as como el nmero mnimo (cardinalidad mnima) y mximo (cardinalidad mxima) de objetos de tipo B que se puede relacionar a travs de R con un objeto de tipo A. La notacin es la siguiente:
R(A(minA,maxA),B(minB,maxB))
Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre relaciones Ejemplo de notacin Sea la restriccin de cardinalidad R( A(1,1), B(2,n) ). El significado de esta restriccin es la siguiente: Una ocurrencia de A debe relacionarse con una y slo una ocurrencia de B (minA=1, maxA=1), y una ocurrencia de B puede relacionarse con cualquier nmero de ocurrencias de A mayor o igual que 2 (minB=2, maxB=n).

Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre relaciones Cardinalidades ms frecuentes R ( A(0,n), B(0,n) ): R representa una relacin muchos a muchos (M : M) entre A y B. R ( A(0,n), B(0,1) ): R representa una relacin uno a muchos (1 : M) entre A y B. R ( A(0,1), B(0,1) ): R representa una relacin uno a uno (1 : 1) entre A y B. R ( A(1,n), B(0,n) ): R representa una relacin muchos a muchos entre A y B con restriccin de existencia de A respecto a B.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de integridad esttica


Restricciones sobre relaciones Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD).
La relacin Docencias entre Profesor y Asignatura es una relacin muchos a muchos: Docencias( Profesor (0,n), Asignatura (0,n) ). La relacin Pertenece entre Departamento y Profesor es una relacin uno a muchos, Donde Profesor tiene restriccin de existencia respecto a Pertenece: Pertenece ( Departamento(0,n), Profesor (1,1) ). La relacin Adscrita entre Departamento y Asignatura es una relacin uno o muchos, donde Asignatura tiene restriccin de existencia respecto a Adscrita: Adscrita ( Departamento(0,n), Asignatura(1,1) ).
Sergio Snchez

Conceptos bsicos de los modelos de Datos Operacin


Una operacin es una accin elemental (indivisible) sobre un objeto o una relacin. Las operaciones permiten crear, eliminar, modificar o consultar objetos y relaciones. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD).
Aadir y borrar ocurrencias de tipos de objetos Profesor, Asignatura y Departamento, as como para modificar los atributos de las ya existentes. Aadir y borrar ocurrencias de los tipos de relacin Pertenece, Adscrita, y Docencias, as como para modificar los atributos grupo de teora y grupo de practica de la Relacin Docencia.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Transaccin


Una transaccin es una secuencia de operaciones que se considera atmica en lo que se refiere a su ejecucin (se ejecutan todas sus operaciones o ninguna de ellas). Las transiciones son necesarias porque en ocasiones no es posible representar la evolucin del mundo real con operaciones aisladas. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). El objeto profesor sufre restricciones de existencia respecto a la relacin Pertenece, para aadir nuevos profesores sera necesario una transaccin que incluyera dos operaciones bsicas: una para aadir el profesor (nueva ocurrencia de profesor), y otra para aadir la informacin de su departamento (nueva ocurrencia de pertenece). Solo ejecutndolas las dos juntas tienen sentido.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Restricciones de Integridad Dinmica


Las restricciones dinmicas representan propiedades del mundo real que restringen la posible evolucin en el tiempo de la base de datos, limitando la secuencia de extensiones vlidas del esquema. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). Restriccin de transicin: Los crditos de teora de una asignatura no puede desminuir. Restriccin dinmica: Un profesor no puede pasar a tener categora de catedrtico sino ha impartido alguna vez asignaturas de segundo ciclo.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Primitivos
Estos modelos coinciden con los modelos de fichero, base de los sistemas de gestin de ficheros, que constituyeron el soporte de los sistemas de informacin durantes los aos sesenta. Los objetos se representan como registros organizados en ficheros. Los lenguajes de manipulacin de datos son totalmente dependientes de la organizacin fsica de estos ficheros (modos de acceso, tipo ndice, etc.). Las operaciones bsicas que proporcionan para manipular los objetos son las operaciones primitivas sobre archivos: lectura y escritura de registros.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos.

En estos modelos se han basado los sistemas de gestin de bases de datos comerciales. La evolucin de estos sistemas siempre ha estado guiada por el objetivo de conseguir un mayor grado de independencia de datos, es decir, separar la definicin estructural (lgica) de la base de datos de su definicin fsica (interna), de forma que los programas sean independientes.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Jerrquico.
Los primeros sistemas de gestin de base de datos que se construyeron fueron sistemas de tipo jerrquico, en lo que los datos se estructuraban en rboles.

Las estructuras de datos de este modelo son el segmento y el rbol.


Segmento: coincide con la estructura registro. Se define por una secuencia de nombres de campos. Esta estructura permite representar los tipos de objetos. rbol: va a permitir representar las relaciones uno a muchos entre objetos. Se define en trminos de segmentos: los nodos del rbol son tipos de segmentos y los arcos representan las relaciones.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Jerrquico. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD).
Supongamos que es ms frecuente la consulta obtener las asignaturas que imparte un profesor que la consulta obtener los profesores que imparten una asignatura; el esquema jerrquico sera.
Departamento

Segmento

Profesor

Asignatura
Sergio Snchez

Relaciones uno a muchos

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Jerrquico.
Las limitaciones mas graves son: No se puede representar cualquier relacin unos a muchos. No se pueden representar relaciones entre objetos ms complejas que la puramente jerrquica:
Un objeto no puede ser subordinado de dos objetos distintos a travs de relaciones unos a muchos. No se pueden representar relaciones muchos a muchos entre objetos.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Red.
Fue definido para superar las limitaciones de los sistemas jerrquicos, la organizacin CODASYL (Conference on Data System Languages) lo pblico en 1971, naciendo as la segunda familia de sistemas de gestin de bases de datos.

Las estructuras de datos de este modelo son: el registro, el fichero y el set. Registro: permite representar los tipos de objetos. Fichero: permite organizar todas las ocurrencias de un mismo tipo de registro. Est estructura no se define explcitamente, ya que se supone que para cada tipo de registro existe un fichero del mismo nombre. Set: permite representar relaciones jerrquicas uno a muchos entre objetos. Un tipo set se define en trminos de dos tipos de registros: el registro propietario (objeto cardinalidad mxima n) , y el registro miembro (objeto de cardinalidad 1).
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Red.
El esquema de una base de datos en red consiste en la definicin de registros y sets. Una base de datos consistir en un conjunto de ocurrencias de estas estructuras. No existe ninguna limitacin en el nmero de sets en los que puede participar un tipo de registro como registro propietario o registro miembro, superndose de esta forma la limitacin del modelo jerrquico. Esta solucin permite descomponer una relacin muchos a muchos en dos uno a muchos entre los registros que representan los objetos relacionados entre si y un nuevo registro (registro enlace).

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Red. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD).
Departamento
Dpto-Prof Dpto-Asg

Registros
Relaciones uno a muchos.

Profesor

Asignaturas

Prof-Doc

Asg-Doc

Docencias
Sergio Snchez

Registro Enlace

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Relacional.
Este modelo fue propuesto por E. F. Codd en 1970, imponindose en la dcada de los ochenta sobre los modelos previos. Actualmente es el modelo elegido para la construccin de casi todos los SGBD comerciales (Oracle, INFORMIX, RDB, DB2, Sql Server, MySQL, etc.).

La estructura de datos bsica de este modelo es la relacin . Esta estructura permite representar tanto los objetos como la relaciones entre ellos. Una relacin tipo viene definida por un conjunto de nombres de atributo, cada uno de los cuales tiene asociado un dominio.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Relacional.
El esquema de una base de datos relacional consiste en la definicin de una o ms relaciones. Para cada relacin del esquema, se pueden especificar las siguientes propiedades: Clave Primaria, que permite expresar la restriccin de identificacin. Claves Ajenas, que permiten representar relaciones uno a muchos. Valores no nulos, para los atributos.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Relacional.
Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD).
Departamento (cdigo: tira(5), nombre: tira(100), director: tira(50), telfono: tira (11)) Clave Primaria: {cdigo} Asignatura (cdigo: tira(5), nombre: tira(100), semestre: tira(2), teo: real, prac: real, gteo: entero, gpra: entero, dpto: tira(5)) Clave Primaria: {cdigo} Clave Ajena: {dpto} hace referencia a Departamento Valor No Nulo: {dpto}

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos de Datos Clsicos Modelo Relacional.
Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD).
Profesor (cdigo: tira(5), nombre: tira(100), telfono: tira(11), categora: tira(3), dpto: tira(5)) Clave Primaria: {cdigo} Clave Ajena: {dpto} hace referencia a Departamento Valor No Nulo: {dpto}

Docencia (cod_pro: tira(5), cod_asg: tira(5), gteo:entero, gpra: entero) Clave Primaria: {cod_pro, cod_asg} Clave Ajena: {cod_asg} hace referencia a Asignatura Clave Ajena: {cod_pro} hace referencia a profesor.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Semnticos.

Estos modelos surgen por la necesidad de disponer de modelos que permitan una representacin de la realidad ms prxima a la percepcin que de ella tiene los usuarios. Adems de los conceptos bsicos (objeto, relacin, restriccin, etc.), se incorporan nuevos mecanismos de abstraccin que permiten modelar (representar) la realidad de forma ms natural. Estos mecanismos son la agregacin y la generalizacin.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Semnticos Agregacin.
Este mecanismo permite definir un nuevo objeto a partir de una asociacin entre objetos. El nuevo objeto, objeto agregado, hereda todos los atributos de los objetos participantes, as como los atributos de la relacin sobre la que se define la agregacin. Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). Supngase que se desea completar la informacin sobre la programacin docente introduciendo los grupos de los alumnos asignados a cada profesor en cada asignatura que imparte.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Semnticos Agregacin.
Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). En el caso expresado la relacin Docencia entre Profesor y Asignatura adquiere un nuevo significado, ya que, como tal, va asociarse con uno o varios grupos de alumnos. El esquema se ampliara con los siguientes elementos:
Un nuevo tipo de objeto, Grupo, que representa un grupo de alumnos. Un objeto agregado, Docencia, definido sobre la relacin Docencia entre Profesor y Asignatura. Un nuevo tipo de relacin, Asignacin, entre el objeto agregado Docencia y el objeto Grupo, que representa la asignacin de grupos a un profesor en una asignatura determinada.
Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Semnticos Generalizacin.

La generalizacin/especializacin es el mecanismo que permite definir relaciones de subtipos entre tipos de objetos. Cuando un objeto A (objeto general) se especializa en varios objetos A1, A2 . An (objetos especializados), esto significa que cada ocurrencia de los objetos A1, A2 . An es tambin una ocurrencia del objeto A, heredando todas sus propiedades (atributos, relaciones con otros objetos, etc.). Adems de heredar propiedades particulares, los objetos pueden tener sus propias propiedades.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Semnticos Generalizacin.
Ejemplo: Sistema de Informacin para la gestin del Plan de Ordenacin Docente (POD). Se desea incorporar informacin sobre los estudios de postgrado que estn sujetos a una programacin distinta. Esta ampliacin aconsejara definir el objeto Asignatura como un objeto general con los atributos comunes a las asignaturas de grado y de postgrado, y dos objetos especializados de Asignaturas, Grado y Postgrado con sus atributos y relaciones especificas.

Sergio Snchez

Conceptos bsicos de los modelos de Datos Tipos de modelos de datos


Modelos Semnticos
Aunque estos modelos aparecieron con la intencin de aumentar la capacidad expresiva de los modelos clsicos, no han llegado a convertirse en modelos de implementacin, es decir, en modelos de base para la construccin de SGBD comerciales. Estos modelos se utilizan para el diseo de base de datos en su primera etapa (diseo conceptual), dando lugar a lo que se conoce como un esquema conceptual. Este esquema debe ser traducido al modelo clsico soportado por el SGBD disponible (diseo lgico).

Sergio Snchez

Conceptos Relevantes
Bibliografa
Introduccin a los Sistemas de Base de Datos, C. J. Date, Prentice Hall Sptima Edicin, 2001. Bases de Datos Relacionales, Matilde Celma Gimnez & Juan Casamayor & Laura Mota, Prentice Hall, 2003.

Ctedra Introduccin a las bases de datos, Profesor L. Marti, Universidad de Valparaso, 2004.

Sergio Snchez

You might also like