UNIVERSITARIA COLEGIO UNIVERSITARIO DE CARACAS PROGRAMA NACIONAL DE FORMACIN EN INFORMTICA TRAYECTO III TRIMESTRE II SECCIN 14101 TURNO MAANA MODELADO DE BASE DE DATOS
PROYECTO
Facilitador: Alejandro Amaro
Caracas, Junio de 2014
Participantes: 20783258 Luvo Julio Cesar 20228114 Martelo Alix
El presente documento tiene como objeto presentar diferentes aspectos referente al modelo de base de datos el cual se caracteriza por determinar la estructura lgica de una base de datos, de manera fundamental establece el modo de almacenar, organizar y manipular los datos. Un sistema de gestin de base de datos puede implementar uno o varios modelos. La estructura ptima depende de la natural organizacin de los datos de la aplicacin y de los requisitos de sta, que incluyen ritmo de transacciones, fiabilidad, mantenibilidad, escalabilidad y coste. La mayor parte de los sistemas de gestin de bases de datos estn construidos sobre un modelo de datos concreto, aunque es posible que soporten ms de uno. Como bien se sabe, el modelo entidad-relacin representa todas las entidades de un sistema de informacin as como sus interrelaciones y propiedades. Las relaciones son una correspondencia o asociacin entre dos o ms entidades. Cada relacin tiene un nombre que describe su funcin. Este modelo habitualmente, adems de disponer de un diagrama que ayuda a entender los datos y como se relacionan entre ellos, debe de ser completado con un pequeo resumen con la lista de los atributos y las relaciones de cada elemento. Un diagrama o modelo entidad-relacin es una herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema de informacin as como sus interrelaciones y propiedades. Adicionalmente, la integridad referencial es una propiedad deseable en las bases de datos. Gracias a la integridad referencial se garantiza que una entidad (fila o registro) siempre se relaciona con otras entidades vlidas, es decir, que existen en la base de datos. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.
Modelado de Base de Datos El modelado de datos es uno de los elementos ms importantes a la hora de iniciar el desarrollo de cualquier proyecto. Esta es la estructura, sobre la que realmente reside la verdadera esencia de la aplicacin. Incluso determina si el proyecto va a cumplir con su verdadero objetivo. Uno de los puntos importantes que se deben indicar es que el modelado de los datos, debe ser llevado como una gua general. Para los profesionales expertos, esto implica el desarrollo de los Diagramas de Entidades y del Modelo Entidad-Relacin. Independientemente de la metodologa a utilizar, esta herramienta siempre ser importante, para entender las relaciones entre las diversas entidades en la Base de Datos. El diseo de una base de datos es un proceso complejo que abarca decisiones a muy distintos niveles, la complejidad se controla mejor si se descompone el problema en subproblemas y se resuelve cada uno de estos subproblemas independientemente, utilizando tcnicas especficas. As, el diseo de una base de datos se descompone en diseo conceptual, diseo lgico y diseo fsico. Son abstracciones que permiten la implementacin de un sistema de base de datos en un proceso complejo que contienen decisiones en muchos distintos niveles, si se descompone el problema en sub problemas esto se resuelve independientemente, utilizando tcnicas especficas denominadas modelos (Conceptual, Lgico, Fsico). Modelo Conceptual: Se utilizan para representar la realidad a un alto nivel de abstraccin, mediante los modelos conceptuales se puede construir una descripcin de la realidad fcil de entender y demostrar la abstraccin de la base de datos, para construir una descripcin para entender en la realidad.
Modelo Lgico: Es una descripcin usada para especificar el esquema lgico detallado del modelo conceptual, depende del tipo SGBD que se va a utilizar y no depende del producto concreto. Modelo Fsico: Es una implementacin de una base de datos en las estructuras de almacenamiento y los mtodos eficiente a los datos. Depende del SGBD concreto, y se expresa de una manera ms detallada (atributos, relaciones, etc.)
Modelo Entidad-Relacin El modelo entidad-relacin (ER) es un modelo de datos que permite representar cualquier abstraccin, percepcin y conocimiento en un sistema de informacin formado por un conjunto de objetos denominados entidades y relaciones, incorporando una representacin visual conocida como diagrama entidad-relacin. Entidad: La entidad es cualquier clase de objeto o conjunto de elementos presentes o no, en un contexto determinado dado por el sistema de informacin o las funciones y procesos que se definen en un plan de automatizacin. Entidades fuertes: Lo constituyen las tablas principales de la base de datos que contienen los registros principales del sistema de informacin y que requieren de entidades o tablas auxiliares para completar su descripcin o informacin.
Entidades dbiles: Son entidades dbiles a las tablas auxiliares de una tabla principal a la que completan o complementan con la informacin de sus registros relacionados. Atributos: Son las caractersticas, rasgos y propiedades de una entidad, que toman como valor una instancia particular. Es decir, los atributos de una tabla son en realidad sus campos descriptivos, el predicado que permite definir lo que decimos de un determinado sujeto. Relacin: Vnculo que permite definir una dependencia entre los conjuntos de dos o ms entidades. Esto es la relacin entre la informacin contenida en los registros de varias tablas. Clave: Es el campo o atributo de una entidad o tabla que tiene como objetivo distinguir cada registro del conjunto, sirviendo sus valores como datos vinculantes de una relacin entre registros de varias tablas. Clave principal primaria: Permiten identificar unvocamente cada registro de una tabla. Por ejemplo campo auto-numrico interno ID. Clave candidata: Campos que cumplen las condiciones de identificacin nica de registros, pero que no fueron definidos como principales por el diseador.
Clave externa: Campo clave conformado por el valor de una clave principal primaria de otra tabla. Integridad referencial: Se denomina integridad referencial al tipo de interrelacin que se produce entre tlas mediante un campo clave que deber contener la cadena alfanumrica exacta al identificador de la tabla auxiliar para poder realizar la relacin entre los registros. Tipos de Relaciones Segn cardinalidad: La cardinalidad se representan en un diagrama ER como una etiqueta que se ubica en ambos extremos de la lnea de relacin de las entidades y que puede contener diversos valores entre los que destacan comnmente el 1 y el (*). Cardinalidad mxima: Afecta el diseo fsico de la estructura de la base datos, ya que modifica la forma como sern creadas las tablas de datos, las cuales cambian de acuerdo a la cardinalidad que presentan las relaciones. Cardinalidad mnima: Define restricciones que operan sobre los registros de datos (se las llama restricciones de integridad referencial), las cuales deben ser implantadas por el DBA en la fase fsica del desarrollo de la base de datos o por los programadores de aplicaciones.
Relacin 1 a 1: La relacin uno a uno, define que un nico registro de la tabla puede estar relacionado con un nico registro de la tabla relacionada. Relacin 1 a N: La relacin de uno a varios, define que un registro dado de una tabla auxiliar o secundaria slo puede estar vinculado con un nico registro de la tabla principal con la que est relacionada. Relacin M a N: La relacin de varios a varios, define que un registro de una tabla puede estar relacionado con varios registros de la tabla relacionada y viceversa. Reglas de Transformacin Una vez que se ha concluido la fase conceptual del diseo de la base de datos, tenemos un esquema expresado en trminos de alguna de las notaciones derivadas del Modelo E-R. Entonces, para transformar este esquema en trminos del Modelo Relacional es necesario convertir las entidades del modelo E-R en tablas del modelo relacional, para ello es imprescindible decidir cul o cules van a ser los atributos que integran la clave primaria en cada una de las tablas. Regla #1: Cada entidad se convierte en una tabla y todos los atributos de la entidad se convierten en los atributos de la tabla. Regla #2: Debe aplicarse la regla 1 para despus aplicarse la regla 2, y luego se procede segn el tipo de la relacin 1:N, existen dos casos posibles. Caso 1: La entidad que est del lado N de la relacin posee una clave basada en sus atributos propios, lo cual la hace independiente de la entidad que est del lado 1 de la relacin. La clave de la entidad padre se copia (migra) a la entidad hija como un atributo que no es parte de la clave y acta all como una clave fornea (Foreign Key:FK). Caso 2: La entidad que est del lado N de la relacin no puede construir una clave primaria con sus atributos propios, y requiere usar la clave de la entidad que est del lado 1 de la relacin para componer su propia clave. La entidad hija, entonces, es lgicamente dependiente de la entidad padre. La clave del padre migra al hijo como una clave fornea que es parte de la clave del hijo. Regla #3: Las relaciones 1:1 son, en realidad, un caso especial de las relaciones 1:N (con N=1), y pueden transformarse de conceptual (E-R) a relacional, aplicando primero la regla 1, y luego se procede segn la conveniencia, de acuerdo a requerimientos de usuario. Existen dos soluciones alternativas: - Considerar a la entidad del lado derecho de la relacin como el hijo. Entonces se aplica la regla 2 de izquierda a derecha, migrando la clave fornea de la entidad de la izquierda sobre la entidad de la derecha como un atributo que no forma parte de la clave de esta ltima entidad. - Considerar a la entidad del lado izquierdo de la relacin como el hijo. Entonces se aplica la regla 1 de derecha a izquierda, migrando la clave fornea de la entidad de la derecha sobre la entidad de la izquierda como un atributo que no forma parte de la clave de esta ltima entidad. Regla #4: Se transforman, aplicando la regla 1 en primer lugar, y luego, es necesario crear una tabla intermedia para implementar este tipo de relacin en el modelo relacional. Modelo Entidad-Relacin
Cdigo SQL CREATE TABLE cliente ( cod_cliente character(10) NOT NULL, nombre character(20), CONSTRAINT cliente_pkey PRIMARY KEY (cod_cliente) ) CREATE TABLE credito ( nu_credito character(20) NOT NULL, cod_cliente character(10), fecha_aprob date, monto numeric, CONSTRAINT credito_pkey PRIMARY KEY (nu_credito), CONSTRAINT credito_cod_cliente_fkey FOREIGN KEY (cod_cliente) REFERENCES cliente (cod_cliente) ) CREATE TABLE pago ( nu_credito character(20) NOT NULL, nu_pago character(20) NOT NULL, fecha_pago date, fecha_venc date, monto numeric, CONSTRAINT pago_pkey PRIMARY KEY (nu_credito, nu_pago) ) CREATE TABLE credito_empleado ( cod_credito character(10) NOT NULL, cod_empleado character(10) NOT NULL, tipo_credito character(2), descripcion_credito character(20), estatus_credito character(2), CONSTRAINT credito_empleado_pkey PRIMARY KEY (cod_credito, cod_empleado) ) CREATE TABLE empleado ( cod_empleado character(10) NOT NULL, nombre character(20), CONSTRAINT empleado_pkey PRIMARY KEY (cod_empleado) )
CONCLUSIONES Al concluir este trabajo se puede destacar que algunos de los aspectos aprendidos son de gran peso, el modelado de bases de datos, incluyendo su definicin, requerimientos, y caractersticas, donde se puede decir que la base de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemticamente para su posterior uso. El modelado es la actividad ms delicada e importante en la realizacin de una aplicacin con base de datos. Al igual que en el desarrollo de un sistema, toda modificacin al esquema de base de datos debe realizarse primero en el modelo conceptual, no en el lgico ni en el fsico. La habilidad de crear buenos modelos es una cualidad que se adquiere con la experiencia. El diseo y creacin de la base de datos estn en distintos modos de organizar la informacin y representar las relaciones entre datos, los tres modelos lgicos principales dentro de una base de datos son el modelo conceptual, lgico y fsico, los cuales tiene ciertas ventajas de procesamiento y de negocios. Sin embargo es importante destacar que los sistemas de gestin, se caracterizan por un ser un sistema de desarrollo que hace posible ascender a datos integrados funcionales y organizacionales de una empresa.