Bases de Datos Relacionales - PowerPoint PPT Presentation

bases de datos relacionales n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Bases de Datos Relacionales PowerPoint Presentation
Download Presentation
Bases de Datos Relacionales

play fullscreen
1 / 180
Bases de Datos Relacionales
204 Views
Download Presentation
norman-garrison
Download Presentation

Bases de Datos Relacionales

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Bases de Datos Relacionales 2014

  2. Objetivos Proporcionar al participante los conceptos básicos de bases de datos y dar a conocer las principales funcionalidades de los sistemas administradores de bases de datos. Profundizar en el estudio del modelo relacional, su fundamento teórico y lenguajes de consulta. Efectuar prácticas con el lenguaje

  3. Contenido 1. Introducción 2. El ambiente tecnológico de las bases de datos 3. El modelo relacional 4. Instrumentación de la base de datos 5. Normalización 6. Integridad y Seguridad 7. Lenguajes para bases de datos 8. Manejo de Transacciones

  4. UNIDAD IIntroducción a las BD

  5. 1.Introducción ¿Qué es una Base de Datos? Sistemas de Información y Bases de Datos Sistemas de Administración de Bases de Datos El campo de las bases de datos Comparación con el proceso por archivo Paradigma de base de datos Niveles de automatización Aplicaciones

  6. Modelos de Gestión de Datos 1. Aplicaciones con manejo de datos independiente ( Sistema de Archivos ) Cada aplicación recurre aarchivos separados. 2. Gestión centralizada ( Sistema de Bases de Datos ) Datos centralizados y compartidos por todas las aplicaciones

  7. Aplicación 2 Aplicación 3 Aplicaciones con Manejo de Datos Independiente Sistema de Archivos Aplicación 1 Archivo de cuentas corrientes DatosCuentaCorriente Num. Cliente nombre cliente 2056 juan pérez ........ ........ ....... ....... Archivo de Ahorros redundancia Datos de Ahorros Num. Cliente nombre cliente 2056 juan pérez ........ ........ ....... ....... Archivo de prestamos inconsistencia Datos de Prestamos Num. Cliente nombre cliente 2056 Juan A.Pérez ........ ........ ....... .......  Cada aplicación recurre a archivos separados. ¿Cómo funcionaría un Banco bajo este criterio? Archivos separados según tipo de operaciones bancarias y áreas funcionales: cuentas corrientes, ahorros y prestamos,.. Ejemplo: Si Juan Pérez es un cliente del Banco y tiene cuenta corriente, cuenta de ahorros y un préstamo que actualmente esta pagando, los datos concernientes a Juan, estarían repetidos en los tres archivos, cada uno de los cuales se actualiza con programas diferentes.

  8. Aplicaciones con Manejo de Datos Independiente • Alto nivel de redundancia Un mismo dato puede estar repetido en diferentes archivos. • Riesgo de inconsistencias Las diversas copias de los mismos datos pueden no coincidir (por ejemplo el cambio de dirección de un cliente) • Uso excesivo de recursos humanos Una alta proporción de recurso humano, se dedica a actividades de mantenimiento de software. • Las aplicaciones dependen de los archivos Si se hacen cambios en los formatos de archivos, también deben modificarse los programas( falta de independencia ). • Los archivos pueden ser incompatibles Un archivo en Cobol no es igual que un archivo hecho en C++. Los archivos no pueden combinarse o compararse. • Datos separados y aislados En ocasiones es necesario obtener información de dos o más archivos. • Costos elevados Cambios a las aplicaciones muy costosos, un cambio trivial provoca una reacción en cadena de otros cambios. Almacenamiento redundante incrementa los costos. • Tendencia a crear más y más archivos Proliferación constante de nuevos archivos y por tanto dificultad en su actualización.

  9. Gestión Centralizada de Datos Aplicación 1 Archivo de Clientes Datos de Datos de Num. Cliente nombre cliente Cuentas Cuentas de Datos de Corrientes Ahorros Prestamos 2056 juan pérez Aplicación 3 Archivo de Datos de Archivo de Datos de Cuentas Aplicación 3 cuentas préstamos Préstamos corrientes Corrientes Enfoque de Bases de Datos Archivo de Datos de Cuentas de cuentas de ahorros Ahorros Usando el ejemplo anterior: - En este caso se establece un solo archivo de clientes para las tres cuentas. - Se crea un archivo para cada actividad bancaria: Cuenta corriente, Cuenta de ahorros y Prestamos. - Ya no se registran los datos del cliente, solo se hace referencia a ellos. - Los datos son compartidos por todas las aplicaciones. Asi por ejemplo es posible transferir dinero entre una cuenta y las otras, o preparar un solo estado mensual para las tres cuentas de un cliente o de todos los clientes.

  10. … Datos Independientes Dpto. Contabilidad Dpto. Personal Dpto. Ventas Cuentas Clientes Ventas Empleados Inventario … Centralizado Personal Empleados Clientes Ventas Inventario Cuentas BASE DE DATOS SGBD Ventas Contabilidad

  11. Sobre los datos de la empresa En la medida de lo posible los datos en la base deben cumplir: Ser Independientes entre si Estar Distribuidos Ser No redundantes Ser Reales Estar Compartidos

  12. Características de los SGBD Naturaleza autodescriptiva de los SGBD Diccionario de Datos o Catalogo (Metadatos ). Aquí va la información de la estructura de cada archivo, el tipo y formato de los datos elementales y las diversas restricciones que se aplican a nivel de columna o de archivo. Independencia respecto a programas y datos Abstracción: Las estructuras de los archivos se almacenan en el diccionario de datos del SGBD y no en los programas. Manejo de múltiples vistas de los datos Cada usuario puede tener una vista ó perspectiva diferente. Control de Concunrrencia El SGBD incluye software de control de concurrencia (gestor de transacciones) para asegurar que cuando varios usuarios intenten actualizar los mismos datos, lo hagan de manera sincronizada. Control de Redundancia Queda minimizada o controlada la repetición del mismo dato en diferentes archivos. De esta forma ya no se desperdicia espacio de almacenamiento ni se producen inconsistencias. Restricción de accesos no autorizados Niveles de acceso: Manejo de roles y privilegios por cuentas y/o grupo de cuentas. Restricciones de Integridad Ejemplos: definir un tipo de dato (entero o String), las edades de colegiales (13 a 17), que un valor sea único (código de trabajador ), etc Respaldo y Recuperación Se recuperan ante fallas de hardware o de software. La idea es que después de una caída, se restaure la BD al estado en el que estaba.

  13. Comparación entre Archivos y Base de Datos • Dependencia de ligas externas a los datos • Datos sin compartir en toda la empresa • Redundancia de los datos • Archivos no relacionados entre sí • Acceso limitado y con poca flexibilidad, eficiencia y seguridad • Independencia a ligas externas a los datos • Datos compartidos y compatibles en la empresa • Redundancia mínima y controlada • Datos relacionados de acuerdo a un modelo • Flexibilidad, Integridad, Eficiencia y seguridad

  14. Definición Base de Datos o BD Colección de todos los datos operativos de una Empresa de acuerdo a un modelo específico que son accesibles desde cualquier lugar físico y nivel de la empresa (Estratégico, Táctico, Operativo) Una BD debe cumplir con las características de: Unicidad Consistencia SeguridadPrivacídad DisponibilidadIntegridad

  15. ¿ Qué es una Base de Datos (BD) ? • Un conjunto de informaciónorganizadaparacumplirlasnecesidades de información de los usuarios de unaempresa. • Almacenaeventosindividuales de lastransaccionesque se generan a partir de un Proceso de Negociosdeterminado • Colección compartida de datos sin redundancias innecesarias, almacenados en un soporte informático no volátil, independiente de los programas que los usen, interrelacionados y estructurados de acuerdo a un modelo de datos con el objeto de atender todas las necesidades de los diferentes usuarios.

  16. Sistema Gestor de Base de Datos (SGBD) Un software ó conjunto de programas que permiten crear y mantener una base de datos, asegurando su integridad, confidencialidad y seguridad. Los SGBD permiten: - Definir una BD: especificar tipos, estructuras y restricciones de datos - Construir la base de datos: guardar los datos en algún medio controlado por el mismo SGBD - Manipular la base de datos: realizar consultas, actualizarla, generar informes. - Control de la Redundancia - Control de accesos • Manejo de restricciones de integridad Características que hacen la Diferencia entre SGBD - Rendimiento - Funcionalidad/Inteligencia - Distribución/Integración

  17. El campo de las BD Eficiencia Acceso y modificación de grandes volumenes de datos Adaptabilidad Supervivencia de datos bajo errores, reduciendo inconsistencias Control del acceso Simulataneidad de uso múltiple dentro de una congruencia con control de concurrencia y seguridad Persistencia Existencia y mantenimiento de datos por largos períodos de tiempo, independientemente del modo de acceso

  18. Guía de Lectura • BD D Kroenke.pdf. • Capitulo 1 Introducción al Procesamiento de Bases de Datos • BBD silberschatz.pdf • Capitulo 1 Introducción • 1.1. Aplicaciones de los Sistemas de Bases de Datos, • 1.2. Sistemas de Bases de Datos Frente a Sistemas de Archivos • Date C J - Introducióna los Sistemas de BD.pdf • CAPÍTULO 1 Panorama general de la administración de bases de datos

  19. UNIDAD IIAmbiente Tecnológico

  20. 2.El ambiente tecnológico de las BD Contexto informático Actividades del modelador de bases de datos Breve cronología de las bases de datos Evolución de la noción de BDs Modelos de datos Esquema e instancia Modelado Modelo de empresa Modelo de datos Modelo de implementación

  21. Internet Modelo Datos Esquema General de Uso de una Base de Datos Resultados BASE DATOS ASP PHP JAVA .NET Resultados Applicación SQL Cliente VisualBasic PowerBuilder VisualFox Delphi SQL Server ORACLE INFORMIX DB2

  22. Diversos Modelos de una BD En realidad han existido diversos modelos para modelar la realidad, aquí presentamos algunos de ellos Modelo Jerárquico Primer modelo de BD, IMS es la mas popular Modelo de RedesDefinido por C. Bachman, IDMS fue el producto comercial Modelo Relacional FuncionalDiseño de Codd popularizado por Date (RDB, Oracle, Sybase, Informix ) Modelo Entidad - RelaciónConcepción de Chen, muy usado aplicable a diversos modelos ( j,r,rel) Modelo SemánticoInicialmente de R. Quillian usado solo en investigación Modelo BinarioInstrumentado por Stonebraker basado en el modelo de Codd (Ingres) Modelo Orientado a Objetos  Popular al representar la tendencia actual (Ilustra, O2 ) Modelo MutlirelacionalExtensión al relacional con inversión total

  23. Entorno de operación

  24. EXTRANET / INTRANET: El entorno actual Interacción actual entre el WWW y la BD

  25. Niveles de Instrumentación

  26. Niveles de Instrumentación (2)

  27. Arquitectura de una BD (Niveles de abstracción) NIVEL EXTERNO Es conocido como el nivel de vistas de usuario. Cada vista de usuario se conoce como subesquema o esquema externo, donde cada uno de ellos describe alguna parte de la base de datos. Oculta al usuario toda la base de datos restante. NIVEL CONCEPTUAL A este nivel se tiene el esquema de la base de datos, que describe la estructura de toda la base de datos. El esquema conceptual oculta los detalles de las estructuras físicas de almacenamiento y se concentra en describir entidades, tipos de datos, relaciones, operaciones y restricciones tiene un esquema interno o físico. NIVEL INTERNO o FISICO Describe como se almacenan realmente los datos y los caminos de acceso a la base de datos.

  28. La BD presenta una arquitectura de tres niveles: Usuarios finales NIVEL EXTERNO . . . Vista Externa 2 Vista Externa n Vista Externa 1 Correspondencia externa/conceptual NIVEL CONCEPTUAL ESQUEMA CONCEPTUAL Correspondencia conceptual/ interna detalle NIVEL INTERNO ESQUEMA INTERNO BD ALMACENADA Arquitectura de una BD Correspondencia : proceso de transformar pedidos y respuestas de un nivel a otro

  29. Tipos de Usuarios de Base de Datos Programadores Escriben aplicaciones, donde incrustan comandos DML para interactuar con el sistema Usuarios normales Interactúan con el sistema mediante el uso de aplicaciones que han sido escritos por informáticos. Usuarios sofisticados Interactúan con el sistema creando consultas con un lenguaje de consulta, las cuales entran al procesador de consultas que transforma las instrucciones DML, para ser entendidas por el gestor de almacenamiento. Administrador de la Base de Datos Crea BD, define métodos de acceso, concede autorizaciones, etc

  30. Vista de los Componentes de un SGBD Usuarios normales Programadores de aplicaciones Usuarios sofisticados Administrador de Base de Datos Usuarios Interfaces de aplicaciones Programas de aplicacion Esquema de base de datos Consulta Precompilador del DML compilador del DML Interprete del DDL Procesador de Consultas Sistema de gestión de base de datos Código objeto de las aplicaciones Motor de evaluación de consultas Gestor de memoria intermedia Gestor de transacciones Gestor de almacenamiento Gestor de archivos Archivos de datos estadística indices Diccionario de datos

  31. ¿Cómo Diseño la Base de Datos ? Interacción con el sistema Usuarios Sistema BASE DATOS Requerimientos

  32. Etapas para el Diseño de una Base de Datos Requerimientos de Información (I) DISEÑO CONCEPTUAL (II) DISEÑO LOGICO (III) DISEÑO FISICO DE LA BASE DE DATOS BASE DATOS

  33. Etapas para el Diseño de una Base de Datos Requerimientos de Información Usuarios y Clientes DISEÑO CONCEPTUAL Cliente Producto Documentos DISEÑO LOGICO RED RELACIONAL OO DISEÑO FISICO DE LA BASE DE DATOS ORACLE SQL Server ACCESS DB2 MYSQL INFORMIX

  34. Guía de Lecturawww.licrgarcia.webode.com.ar • Tema 1. Conceptos Básicos de los sistemas de Bases de Datos. . (12Introduccion a las bases de datos.pdf) • CAPÍTULO 2 Arquitectura de los sistemas de bases de datos Date C J - Introdución a los Sistemas de BD.pdf

  35. UNIDAD IIIModelo Relacional

  36. 3.El Modelo Relacional Definición del modelo relacional Esquema relacional Propiedades estructurales Definición de relación Identificación de tuplas Almacenamiento de relaciones

  37. Modelo de Datos Conjunto de conceptos para describir la estructura de una base de datos, es decir, a las entidades involucradas, sus relaciones, semántica asociada a los datos y restricciones de consistencia. Los modelos de datos se clasifican : 1. Modelo Jerárquico SGBD de Primera Generación 2. Modelo de Redes Nivel Implementación SGBD de Segunda Generación 3. Modelo Entidad Relación 4. Modelo Relacional Alto Nivel 5. Modelo de Objetos SGBD de Tercera Generación BD. DISTRIBUIDAS, ACTIVAS, ESPACIALES ORIENTADAS A OBJETOS, ... 6. Modelo Objeto-Relacional

  38. Modelo de Datos Un modelo es un conjunto de conceptos para describir los datos y la relación semántica entre ellos, dentro de las restricciones que apliquen en la empresa La triada MD { G, O, R } G Reglas de generación de objetos 0 Operaciones, elementos de manipulación R Restricciones inherentes y explícitas MD Notación formal matemática para expresar datos y relaciones Esquema del MD Es un plano de la BD Vista del MD es un subesquema del MD

  39. Modelado

  40. Definición del Modelo El modelo relacional es una estructura basada en colecciones de tablas en 2 dimensiones con propiedades especiales, que permiten representar distintos tipos de asociaciones Las tablas se denominan entidades y están formadas por un conjunto de tuplas o instancias de cada relación de datos atómicos, llamados dominios. Cada tupla representa un hecho elemental o aseveración de la realidad a modelar: < Id objeto, propiedad 1, propiedad 2, … , propiedad n > < Arbol, Altura, Color, … , Edad > < Fresno, 10.30, café oscuro, … , 10 > El orden de cada tupla en la entidad y de cada dominio es irrelevante en la organización. Aunque los valores de los dominios pueden repetirse, las asociaciones son únicas, por lo que no pueden existir dos instancias iguales.

  41. Operaciones con el Modelo El modelo relacional permite consultar las tablas: instancia por instancia insertar nuevas entidades: definición de archivos insertar nuevas instancias: altas eliminar entidades: bajas de archivos eliminar instancias: bajas actualizar entidades: cambios interrelacionar entidades: a través de un dominio El modelo asume la existencia de un lenguaje de interacción poderoso El modelo fue desarrollado por F. Codd en los 70’s y parte de la definición matemática de que un entidad es un subconjunto del producto cartesiano entre los dominios de la realidad a modelar: Sean los dominios D1 : { d1a, d1b … d1n }, D2 : { d2a, d2b … d2n }, D3 : { d3a, d3b … d3n } Entonces el producto cartesiano D1 x D2 x D3 esta dado por las tuplas < d1a, d2a,d3a > ……. < d1a, d2a,d3b > hasta ….. < d1n, d2n,d3n > El subconjunto de este producto es la realidad existente en un momento dado en la empresa

  42. Ejemplos del Modelo Entidades: archivos existentes (esquema) Vistas: relación temporal entre archivos (subesquema) Note que no todos las tuplas están relacionadas, igualmente los entidades son solo un subconjunto de todas las combinaciones posibles de los productos cartesianos

  43. Identificación de tuplas Tradicionalmente se conoce como llave de acceso a aquel campo o campos de un registro que nos dan permiten llegar directo a un dato, por ejemplo el nombre de la persona me da su edad o su sexo. En el modelo relacional se mantiene esta situación siendo este dominio o conjunto de dominio la llave de acceso. Para encontrar los indices principales, en el modelo buscaremos aquellos dominios que son independientes, esto es aquellos de los que los demás dominios de la relación dependen para generar una relación funcional. A esto le llamaremos dependencias funcionales o DF. Es común que el dominio o los dominios independientes correspondan a la llave de acceso de un archivo (igualmente al índice principal en un archivo indexado).

  44. Identificación de llaves Tradicionalmente existen las siguientes tipos de llaves de acceso a un archivo: Llave Primaria: Dominio(s) independientes en la entidad Llave Compuesta: Si la llave primaria es formada por varios dominios Super Llave:Conjunto de llaves que satisfacen la identificación única. En el modelo relacional es lo que se desea, para lo que se requiere el proceso de normalización de entidades en el modelado de la realidad Atributo Primo:es aquel dominio independiente y que forma parte de la llave de una entidad específica. Atributo No primo:es aquel dominio que dependa de una llave en una entidad, sin participar en la llave. Llave Foránea:Aquel dominio que existiendo como dependiente en una entidad es a su vez una llave (Atributo primo) en otra entidad de la BD.

  45. 5.Normalización Diseño de esquemas relacionales Relaciones libres de anomalías Ejemplos de descomposición Descomposición sin pérdida Dependencia funcional Ejemplos básicos Formas normales (anomalías) 1ª. Forma normal(1NF) 2ª. Forma normal(2NF) 3ª. Forma normal(3NF) Forma normal BC(BCNF) 4ª. Forma normal(4NF) 5ª. Forma normal(5NF) Guía para normalizar 3NF Otras formas normales Comparación con otros modelos Modelos de datos

  46. Es representada por los siguientes objetos: Relación: es un conjunto de datos referentes a un conjunto de entidades y organizados en forma tabular filas y columnas (tuplas y atributos). En la que cada intersección de filas y columnas tiene un valor. Atributos: son las propiedades de las entidades. Dominio: es el conjunto de donde los atributos toman sus valores. Tupla: es un conjunto de información que forman una fila de una tabla. Grado: es el numero de atributos o columnas que posee. Cardinalidad: se denomina así al numero de tuplas de una relación. Clave: se define a aquel atributo que nos determinan de forma única y mínima a una tupla de esa relación.

  47. Tipos de Relaciones • Existen cuatro tipos de relaciones que pueden establecerse entre entidades. 1. Uno a uno (1 : 1) 2. Uno a muchos (1 : N) 3. Muchos a uno (N:1) 4. Muchos a muchos (M : N) A estas relaciones se las conoce como cardinalidad.

  48. Propiedades de las Relaciones • Cada relación tiene un nombre único. • Los valores de los atributos son atómicos. • No hay dos atributos que se llamen de igual forma. • El orden de los atributos no importa. • Cada tupla es distinta. • El orden de las tuplas no importa.

  49. Entidades Son los objetos que aparecen en la vida real. Una entidad va a ser representado en una Base de Datos. Existen 2 tipos: • Entidad Fuerte: hacen referencia a la propia entidad. • Entidad Débil: es aquella que solo tiene sentido gracias a las propiedades que identifican a otras entidades (fuertes o a su vez débiles).

  50. Atributos • Es una característica o propiedad de una entidad. • Se identifica con un nombre y todos los posibles valores que puede tener.