BD-GICD-Tema1-DBD.pdf
Document Details
Uploaded by Deleted User
Universidad de Murcia
Tags
Full Transcript
GRADO EN GESTIÓN DE INFORMACIÓN Y CONTENIDOS DIGITALES FACULTAD DE COMUNICACIÓN Y DOCUMENTACIÓN Universidad de Murcia TEMA 1. MODELOS DE DATOS Y DISEÑO DE BASES DE DATOS Asignatura: Bases de Datos Tema 1. Modelos de datos y Diseño de Bases de Dat...
GRADO EN GESTIÓN DE INFORMACIÓN Y CONTENIDOS DIGITALES FACULTAD DE COMUNICACIÓN Y DOCUMENTACIÓN Universidad de Murcia TEMA 1. MODELOS DE DATOS Y DISEÑO DE BASES DE DATOS Asignatura: Bases de Datos Tema 1. Modelos de datos y Diseño de Bases de Datos 1 Objetivos Ubicar las bases de datos como componentes fundamentales de los sistemas de información Conocer el concepto de “sistema de información” y entender en qué consiste el “análisis y diseño de un sistema de información” Comprender qué es un modelo de datos, por qué es necesario su uso, y sus distintos niveles de abstracción Entender qué es diseñar una base de datos Conocer las etapas de un método clásico de diseño de bases de datos Tema 1. Modelos de datos y Diseño de Bases de Datos 2 Contenidos 1.1 Introducción Concepto de Sistema de Información (SI) Sistema de Información y Base de Datos Análisis y Diseño de un Sistema de Información 1.2 Modelado de datos Concepto de Modelo de Datos Tipos de Modelos de Datos 1.3 Diseño de Bases de Datos Etapas del Diseño de Bases de Datos Tema 1. Modelos de datos y Diseño de Bases de Datos 3 Bibliografía [CB 2015] Connolly, T.M.; Begg C.E.: Database Systems: A Practical Approach to Design, Implementation, and Management, 6th Edition.Pearson [EN 2016] Elmasri, R.; Navathe, S.B.: Fundamentals of Database Systems, 7th Edition. Pearson. [CB 2005] Connolly, T.M.; Begg C.E.: Sistemas de bases de datos. Un enfoque práctico para el diseño, implementación y gestión. 4ª Edición. Pearson/Addison-Wesley. (Cap.1y2) [EN 2008] Elmasri, R.; Navathe, S.B. Fundamentos de Sistemas de Bases de Datos. 5ª Edición. Addison-Wesley. (Cap. 1) 1.1 Introducción 4 Toda organización (empresa, negocio, … sistema), para su correcto funcionamiento, necesita de información que se transmita entre sus distintos elementos, y generalmente desde y hacia el exterior del sistema Es decir, de un Sistema de Información ¿Qué es un Sistema de información (SI)? Colección de personas, procedimientos (reglas) y equipos diseñados, construidos, operados y mantenidos para recoger, procesar, almacenar, recuperar y visualizar información 1 Introducción Componentes de un Sistema de Información Automatizado 5 PROCEDIMIENTOS Blah blah 1 Introducción Sistema de Información y Base de Datos 6 La Base de Datos es un componente fundamental del Sistema de Información Reflexionemos... Pensemos en los datos de los SI de Amazon o X (antes Twitter), Instagram, la UMU, una tienda, un supermercado, … Los datos deben estar estructurados y organizados de forma que su manipulación sea sencilla y su consulta sea eficiente Es decir, hay que DISEÑAR BIEN la base de datos; es más: hay que diseñar adecuadamente todo el Sistema de Información en el que está ubicada 1 Introducción Análisis y Diseño de un Sistema de Información 7 Para construir un Sistema de Información es necesario realizar un análisis de la funcionalidad y de los datos del sistema, para después hacer un diseño a través de modelos que facilitan su comprensión Se diseña el software y la base de datos del sistema Modelado de Procesos Modelado de Datos funcionamiento del información con la que sistema; procesos y trabaja el sistema: datos, subprocesos y cómo relaciones entre datos y transforman los datos restricciones que deben Esto no lo veremos cumplir Trabajaremos esto 1.2 Modelado de Datos 8 Objetivo: tener una visión abstracta de los datos Ocultardetalles técnicos de almacenamiento y mantenimiento (acceso y modificación) de los datos Los Modelos de datos se usan para conseguir esa visión abstracta Analogía: planos técnicos de casas o viviendas Nos permiten representar y comprender la estructura de una casa antes incluso de haberla construido Para comprender un plano no se necesita tener conocimientos técnicos avanzados Analogía 9 2 Modelado de datos Modelo de datos 10 Conjunto de conceptos, reglas y convenciones que permiten describir y manipular datos Un modelo de datos es una herramienta formal para comprender y representar el mundo real Analogía:símbolos usados para construir o “dibujar” los planos arquitectónicos 2 Modelado de datos Modelo de datos 11 Una simbología para planos arquitectónicos 2 Modelado de datos Modelo de datos 12 Una simbología para representar y describir información (Ejemplo: Modelo Entidad-Relación) 2 Modelado de datos Modelo de datos 13 Permite representar y describir la información que maneja el Sistema de Información, sus tipos de datos, restricciones y cómo están relacionados entre sí Lo puede hacer desde diferentes niveles de abstracción Nivel Conceptual (alto nivel: cómo lo pensamos) Nivel Lógico (cómo “lo vemos” en el ordenador) Nivel Físico (de bajo nivel: “dentro de la unidad de almacenamiento”) 2 Modelado de datos > Tipos de Modelos Modelos de datos Conceptuales 14 usa Esquema Modelo Mundo Conceptual de Datos Real CONCEPTUAL Un modelo de datos conceptual permite crear el Esquema Conceptual, que describe los tipos de entidad, los tipos de relación, los atributos y las restricciones Ejemplos de Modelos de Datos Conceptuales: Modelo Entidad-Relación, MER (Entity Relationship Model) UML (Unified Modeling Language) 2 Modelado de datos > Tipos de Modelos Esquema Conceptual de Datos 15 Un Esquema Conceptual en el Modelo Entidad-Relación nombre direccion numero saldo DNI CLIENTE (1,n) ES_TITULAR (1,1) CUENTA ciudad (1,1) – Tipos de Entidad: CLIENTE, CUENTA y SUCURSAL PERTENECE – Atributos: En CLIENTE: DNI (identificador), nombre, codigo (1,n) direccion y ciudad. En CUENTA: numero (identificador) y saldo. SUCURSAL nombre En SUCURSAL: codigo (identificador), nombre, activo y ciudad. activo ciudad – Tipos de Relación: ES_TITULAR vincula cada cliente con las cuentas de las que es titular. PERTENECE asocia cada cuenta con la sucursal bancaria en la que ha sido abierta. 2 Modelado de datos > Tipos de Modelos Modelos de datos Lógicos 16 Permite describir la estructura lógica global de la base de datos, mediante el Esquema Lógico Incluyeconceptos que el usuario final puede entender, pero están cerca de la organización física de datos Oculta detalles de almacenamiento, pero son conceptos ya implementables directamente en el sistema Los modelos de datos lógicos son los más utilizados en los SGBD comerciales actuales (como MySQL) El más usado es el Modelo Relacional 2 Modelado de datos > Tipos de Modelos Esquema Lógico de Datos 17 Un esquema lógico en el Modelo Relacional de datos CLIENTE SUCURSAL DNI nombre direccion ciudad codigo nombre activo ciudad CUENTA numero saldo sucursal cliente 2 Modelado de datos > Tipos de Modelos Esquema Lógico de Datos 18 Pero, ojo, para crear estas tablas, hay que ejecutar este código: Aprenderemos CREATE TABLE CLIENTE ( a programar DNI CHAR(12) NOT NULL, cosas así nombre VARCHAR(16) NOT NULL, direccion VARCHAR(30) NOT NULL, ciudad VARCHAR(10) NOT NULL, CREATE TABLE CUENTA( PRIMARY KEY (DNI) numero NUMERIC(20) NOT NULL, ); saldo DECIMAL(9,2) NOT NULL, sucursal CHAR(3) NOT NULL, CREATE TABLE SUCURSAL ( cliente CHAR(12) NOT NULL, codigo CHAR(3) NOT NULL, PRIMARY KEY(numero), nombre VARCHAR(10) NULL, FOREIGN KEY(sucursal) activo DECIMAL(10,2) NOT NULL, REFERENCES SUCURSAL(codigo), ciudad VARCHAR(10) NOT NULL, FOREIGN KEY(cliente) PRIMARY KEY (codigo) REFERENCES CLIENTE(DNI) ); ); 2 Modelado de datos > Tipos de Modelos Modelos de datos Físicos 19 Permite describir la estructura física global de la base de datos mediante el Esquema interno, que especifica los detalles de almacenamiento de los datos: Estructuras de almacenamiento Formato y ordenamiento de registros en los ficheros de datos en disco Tamaños de página, de bloque,... Estructuras de acceso a los datos (ficheros índices, etc.) Etc. NO los veremos 1.3 Diseño de Bases de Datos 20 “Diseñar la estructura lógica y física de los datos para satisfacer las necesidades de información de los usuarios en una organización, para un conjunto definido de aplicaciones” Objetivos del diseño Satisfacer requisitos de contenido de información de usuarios y aplicaciones Proporcionar una estructuración de los datos natural y fácil de entender Soportar requisitos de procesamiento y rendimiento Y más... 3 Diseño de Bases de Datos ¿Cómo realizar el Diseño de BD? 21 ¿Cuál es nuestro objetivo? ¿Qué queremos obtener? Una base de datos (BD) que almacene la información necesaria para nuestro Sistema de Información ¿Y cómo lo hacemos? Siguiendo un método de diseño de BD, que permita recopilar y analizar los requisitos de información y, etapa a etapa, diseñar e implementar una BD real Método de Diseño de Bases de Datos 22 1. Recopilación de Requisitos de usuario 2. Diseño Conceptual 3. Elección del SGBD 4. Diseño Lógico 5. Diseño Físico 6. Implementación 3 Diseño de Bases de Datos Método de Diseño de Bases de Datos 23 nombre direccion numero saldo Cada cliente es titular de una o DNI CLIENTE (1,n) ES_TITULAR (1,1) CUENTA varias cuentas ciudad (1,1) Toda cuenta DISEÑO PERTENECE pertenece a una sucursal bancaria,... CONCEPTUAL codigo Requisitos (1,n) de Datos Esquema nombre SUCURSAL Conceptual activo ciudad SUCURSAL DISEÑO LÓGICO codigo nombre activo ciudad BD CREATE TABLE CUENTA ( CLIENTE numero NUMERIC(20), DNI nombre direccion ciudad saldo DECIMAL(9,2), cliente CHAR(12), sucursal CHAR(3), PRIMARY KEY(numero), CUENTA numero saldo sucursal cliente FOREIGN KEY(cliente) REFERENCES CLIENTE(DNI)..., Esquema FOREIGN KEY(sucursal) Lógico REFERENCES SUCURSAL(codigo) …, [... ] );