Vista previa del material en texto
Preparado por: Miguel Cotaña 1 BASES DE DATOSBASES DE DATOS Una BD es una colección de datos operacionales almacenados sin redundancia perjudiciales y utiliza- Preparado por: Miguel Cotaña 2 redundancia perjudiciales y utiliza- das para una o mas aplicaciones, de una empresa en particular …..empresa y datos…..empresa y datos � Una compania manufacturera � Un banco � Datos de Producto � Datos de cuenta � Datos de paciente Preparado por: Miguel Cotaña 3 � Un hospital � Una universidad � Una dependencia del gobierno � Datos de paciente � Datos de estudiantes � Datos de planifacion ARQUITECTURA DE SBDARQUITECTURA DE SBD � NIVEL EXTERNO: Describe solo parte de la BD(mundo real) � NIVEL CONCEPTUAL: Describe que datos son almacenados en la BD y las Preparado por: Miguel Cotaña 4 datos son almacenados en la BD y las relaciones que existen entre los datos. (mundo de ideas) � NIVEL INTERNO: Describe el almacenamiento fisico de los datos(mundo de datos) ….niveles….niveles � El nivel internoes el mas cercano al almacenamiento fisico, es decir, es el que se ocupa de la forma como se almacenan fisicamente los datos. Preparado por: Miguel Cotaña 5 datos. � El nivel externoes el mas cercano a los usuarios, es decir, es el que se ocupa de la forma como los usuarios individuales perciben los datos. � El conceptual es el nivel de mediacion SISTEMA DE BD (SBD)SISTEMA DE BD (SBD) Un SBD es un siste- ma cuyo proposito general es el de � DATOS: Un SBD puede comprender 1 o varias BD´s. � USUARIOS:personas Preparado por: Miguel Cotaña 6 general es el de almacenar y recu- perar informacion inherente a la organización donde opera. � USUARIOS:personas que accesan a las BD. � HARD: Donde recide las BD. � SOFT:Se lo conoce como DBMS. USUARIOSUSUARIOS � USUARIO FINAL: Realiza consultas o mapeos de subconjuntos de la BD. � PROGRAMADOR DE APLICACIONES: Preparado por: Miguel Cotaña 7 � PROGRAMADOR DE APLICACIONES: Escribe los programas. � DBA: Usuario sofisticado, hace las veces de diseñador y consolidador del sistema CARACTERISTICAS DE LOS CARACTERISTICAS DE LOS SBDSBD � Control de la redundancia. � Evitar la inconsistencia � Compartimiento de los datos Preparado por: Miguel Cotaña 8 � Compartimiento de los datos � Integridad y seguridad de los datos � Estandarizar la informacion en el sistema � Independencia de datos. TIPOS DE BASE DE DATOSTIPOS DE BASE DE DATOS � Base de Datos Jerárquica � Base de Datos Relacional � Base de Datos de Red Preparado por: Miguel Cotaña 9 � Base de Datos de Red � Base de Datos Orientada a Objetos � Base de Datos Distribuidas � Base de Datos Objeto Relacional � Base de Datos Declarativas (deductivas y funcionales) 1.2 1.2 MODELMODELADOADO � El modelado es la etapa en donde identificamos y “dibujamos” los conjuntos de datos que el usuario requiere en un SI. El diseño Logico, es la etapa donde Preparado por: Miguel Cotaña 10 � El diseño Logico, es la etapa donde transformamos ese modelo en un diseño relacional. � El diseño fisico, es donde se especifica caracteristicas propias como tipo de datos, longitud, etc. MODELO DE OBJETOSMODELO DE OBJETOS � La tecnologia OO, proporciona una forma practica y productiva de desarrollo de Soft. � Se trata de pensar de modo abstracto, acerca del problema empleando conceptos del Preparado por: Miguel Cotaña 11 Se trata de pensar de modo abstracto, acerca del problema empleando conceptos del mundo real y no conceptos de computadoras. � Para lograr un software adecuado para el cliente, existen el AOO, DOO y POO …….…….MODELO DE OBJETOSMODELO DE OBJETOS • La tecnologia orientada a objetos se apoya en los solidos fundamentos de la ingenieria, cuyos elementos reciben el nombre global Preparado por: Miguel Cotaña 12 cuyos elementos reciben el nombre global de modelo de objetos. • Abarca los principios de abstraccion, encapsulacion, modularidad, jerarquia, tipos, concurrencia y persistencia. 1.3 BASE DE DATOS 1.3 BASE DE DATOS RELACIONALRELACIONAL Este es el modelo mas utilizado para modelar problemas reales y administrar datos dinamicamente. Preparado por: Miguel Cotaña 13 datos dinamicamente. Su idea fundamental es el uso de “relaciones”. Durante su diseño, una BD relacional pasa por el proceso de normalizacion. DISEÑO CONCEPTUALDISEÑO CONCEPTUAL MODELO E-R El modelo de datos entidad-relacion (E-R) se basa en una percepcion del mundo real Preparado por: Miguel Cotaña 14 se basa en una percepcion del mundo real que consiste en un conjunto de objetos basicos llamados entidades y relaciones entre estos objetos. …..modelo E…..modelo E--RR � Entidad: un objeto, distinguible de otros objetos. Cosas que se pueden identificar claramente. Ej. Ximena Mendez y C.I. Preparado por: Miguel Cotaña 15 claramente. Ej. Ximena Mendez y C.I. � Conjunto de entidades: Conjunto de entidades del mismo tipo. Ej.Funcionario � Atributo: Propiedad de una entidad. Ej.Funcionario(nombre,edad,direccion) Entendiendo los conceptos de: Entidad, Conjunto de Entidades y Atributo. � Dominio de un atributo: Conjunto de valores válidos para el atributo. Ej: Dominio del nombre: texto o strings Preparado por: Miguel Cotaña 16 Dominio de edad: enteros positivos � RELACIONAMIENTO:Asociación entre 2 entidades. Ej: Patty trabaja en el proyecto Nro.2 ….conceptos y grafica….conceptos y grafica � Conjunto de relaciones: Conjunto de relacionamientos del mismo tipo. Ej: Preparado por: Miguel Cotaña 17 Funcionario TRABAJA en el Proyecto FUNCIONARIO PROYECTOTRABAJA en DIRECCION EDAD NOMBRE CODIGO NOMBRE DEPTO DISEDISEÑÑO DE BDO DE BD � METODOLOGIA DE DISEÑO: Consiste en un conjunto de tecnicas Preparado por: Miguel Cotaña 18 conjunto de tecnicas que se aplican de acuerdo a una secuencia de pasos. DISEDISEÑÑO LOGICOO LOGICO � Transformación del diagrama E-R extendido para elementos de un modelo logico. Los modelos logicos son: Preparado por: Miguel Cotaña 19 � Los modelos logicos son: Jerárquico Relacional De red Orientado a Objetos TABLA RELACIONALTABLA RELACIONAL CODIGO NOMBRE SEXO EDAD A1 Ximena F 21 FUNCIONARIO ATRIBUTOS T U Preparado por: Miguel Cotaña 20 A1 Ximena F 21 A2 Marcos M 26 A3 Zulma F 28 U P L A S REPRESENTACION LOGICA: FUNCIONARIO(codigo,nombre,sexo,edad) ….modelo relacional….modelo relacional � Modelo formal por naturaleza, estructuras de datos simples y uniformes. � Este modelo se basa en la teoria matematica Preparado por: Miguel Cotaña 21 � Este modelo se basa en la teoria matematica de conjuntos, donde los datos son representados por medio de una colección de relaciones o tablas. � Es el modelo mas utilizado comercialmente OBJETIVOS DEL M.R.OBJETIVOS DEL M.R. � Proveer esquemas de facil utilizacion � Mejorar la independencia lógica y fisica de datos � Proveer a los usuarios de lenguajes de manipulación de BD de alto nivel, permitiendo el Preparado por: Miguel Cotaña 22 manipulación de BD de alto nivel, permitiendo el acceso a usuarios sin experiencia. � Optimizar el acceso a BD � Mejorar la integridad y seguridad de los datos � Proveer un enfoque metodológico para el diseño de esquemas CARACTERISTICAS DE CARACTERISTICAS DE BASES DE BASES DE DATOS RELACIONALDATOS RELACIONAL � Una BD, puede ser organizada en relaciones � Se caracteriza por utilizar una tabla bidimensional, para la organización de los Preparado por: Miguel Cotaña 23 bidimensional, para la organización de los datos (filas y columnas) � Cada fila contiene la informacion a una entrada en la BD. � Cada columna define un item de la BD. LENGUAJES DE BDLENGUAJES DE BD � Lenguaje de definicion de datos(LDD) Usualmente el LDD incorpora la definicion de constraints y la definicion de vistas. � Lenguaje de manipulacion de datos(LMD) Preparado por: Miguel Cotaña 24 � Lenguaje de manipulacion de datos(LMD) - Alto nivel: orientada a conjuntos - Bajo nivel:orientada a registros � Lenguaje huesped Lenguaje de programacion en el cual comandos del LMD son embutidos. REPRESENTACION DE EREPRESENTACION DE E--RR VENDEDOR PRODUCTOSVENDE CODVEN NOMBRE SUELDO CANTIDAD CANTIDADPRE_UNITCODPROD Preparado por: Miguel Cotaña 25 VENDEDOR PRODUCTOS PROVEEDOR PROVEE CLIENTE FECHA-VEN COD_CLI NOMBRE FONO NOMBRE DIRECCION FONO COD_PROV TECNICAS UTILIZADASTECNICAS UTILIZADAS � Tecnica de analisis de datos para tratar la semántica de datos desde el punto de vista del usuario. � Tecnica para el mapeamiento(definen Preparado por: Miguel Cotaña 26 Tecnica para el mapeamiento(definen correspondencias entre los esquemas de los varios niveles) realizado a partir de los resultados del analisis de los datos a una implementación de BD Diseño Conceptual modelo E-R Diseño Logico modelo relacional Diseño Fisico modelo relacional RESTRICCIONES DERESTRICCIONES DE ASIGNACIONASIGNACION (Mapping)(Mapping) Preparado por: Miguel Cotaña 27 (Mapping)(Mapping) RESTRICCIONES DE ASIGNACIRESTRICCIONES DE ASIGNACIÓÓNN � Una planificación E-R de una empresa pueden definir ciertas restricciones: CARDINALIDAD, que expresan el número de entidades con las que puede asociarse otra entidad mediante un conjunto Preparado por: Miguel Cotaña 28 puede asociarse otra entidad mediante un conjunto de entidades. � Para un conjunto binario de relaciones R entre los conjuntos de entidades A y B, la cardinalidad de asignación debe ser una de las siguientes: ……restricciones de asig. � Una a una. Una entidad en A esta asociada a lo sumo con una entidad en B, y una entidad en B esta asociada a lo sumo con Preparado por: Miguel Cotaña 29 entidad en B esta asociada a lo sumo con una entidad en A. � Una a muchas. Una entidad en A esta asociada con numero cualquiera de entidades en B. Una entidad en B puede asociarse a lo sumo con una entidad en A ……restricciones de asig. � Muchas a una. Una entidad en A esta asociada a lo sumo con una entidad en B, sin embargo, puede estar asociada con un numero cualquiera de entidades en A. Preparado por: Miguel Cotaña 30 entidades en A. � Muchas a muchas. Una entidad en A esta asociada con numero cualquiera de entidades en B, y una entidad en B esta asociada con un numero cualquiera de entidades en A CARDINALIDAD: grado de asociaciCARDINALIDAD: grado de asociacióónn MUJERCasado con 1:1 HOMBRE N:1 1 1 1N Preparado por: Miguel Cotaña 31 PROVEEDOR EMPRESAProvee para N:M PADREHIJO Descend. 1N N M TIPOS DE TIPOS DE RELACIONAMIENTORELACIONAMIENTO FUNCIONARIO FUNC_JEFE UNARIO Preparado por: Miguel Cotaña 32 PROVEEDOR PIEZA FUNCIONARIO provee FUNC_JEFE CANTIDAD BINARIO ….tipos de rel….….tipos de rel…. TERNARIO Preparado por: Miguel Cotaña 33 PROVEEDOR PIEZA FUNCIONARIO Provee para EjemploEjemplo Un cliente tiene la opción de que se cargue su cuenta automaticamente en el momento de la compra (combustible, mantenimiento, o estacionamiento) o de que se le envie mensualmente una factura en papel. En cualquier caso, los clientes pueden pagar con dinero en efectivo, tarjeta de credito o cheque personal. En la estación de servicio “amigos” el combustible se vende por galon a un precio que depende de que el combustible sea gasolina, normal o especial. Los Preparado por: Miguel Cotaña 34 depende de que el combustible sea gasolina, normal o especial. Los servicios estan cotizados de acuerdo con el costo de los insumos y de la labor realizada. El estacionamiento se vende segun tarifas que pueden ser diarias, semanales o mensuales. Los precios del combustible, servicios de mantenimiento, partes y estacionamiento pueden variar; solamente el gerente de la estacion puede ingresar o cambiar un precio. A su criterio, el gerente puede dar un descuento en sus compras a un cliente en particular; este descuento puede variar de un cliente a otro. Un 2,5% de impuesto local sobre ventas se aplica a todas las operaciones 1.4 BASE DE DATOS O.O.1.4 BASE DE DATOS O.O. Para todas las cosas orientadas a objetos, el marco de referencia conceptual es el modelo de objetos. Se menciono 4 elementos en este modelo: Preparado por: Miguel Cotaña 35 elementos en este modelo: - Abstracción - Encapsulamiento - Modularidad - Jerarquia a)a) ABSTRACCIONABSTRACCION Una abstraccion denota las caracteristicas esenciales de un objeto que lo distinguen de todos los demas Preparado por: Miguel Cotaña 36 que lo distinguen de todos los demas tipos de objeto y proporciona asi fronteras conceptuales nitidiamente definidas respecto a la perpectiva del observador. Preparado por: Miguel Cotaña 37 b)b) ENCAPSULAMIENTOENCAPSULAMIENTO Es el proceso de almacenar en un mismo compartimiento los elementos de una abstraccion que constituyen su Preparado por: Miguel Cotaña 38 abstraccion que constituyen su estructura y su comportamiento Preparado por: Miguel Cotaña 39 c)c) MODULARIDADMODULARIDAD La modularidad es la propiedad que tiene un sistema que ha sido descompuesto en un conjunto de modulos cohesivos y Preparado por: Miguel Cotaña 40 en un conjunto de modulos cohesivos y debilmente acoplados. Preparado por: Miguel Cotaña 41 d)d) JERARQUIAJERARQUIA La jerarquia es una clasificacion u ordenacion de abstracciones. Preparado por: Miguel Cotaña 42 Preparado por: Miguel Cotaña 43 POO, DOO, AOOPOO, DOO, AOO � POO: Es un método de implementación en el que los programas se organizan como colecciones cooperativas de objetos. � DOO: Es un método de diseño que abarca el Preparado por: Miguel Cotaña 44 � DOO: Es un método de diseño que abarca el proceso de descomposición y una notación para describir los modelos lógico y fisico. � AOO: Es un método de analisis que examina los requisitos desde la perpectiva de las clases y objetos que se encuentran en el vocabulario del dominio del problema. PARADIGMA O.O.PARADIGMA O.O. La Orientacion a Objetos (OO), es una tecnica para el modelado de sistemas como un conjunto de objetos relacionados que interactuan entre si. La OO es similar a la Preparado por: Miguel Cotaña 45 interactuan entre si. La OO es similar a la forma en que las personas observan su entorno. La OO es un enfoque de desarrollo de software que organiza tanto el problema como su solucion. OBJETOSOBJETOS OBJETO. Es la representacion abstraida de las cosas Desde la perspectiva de la cognición humana un objeto es: Preparado por: Miguel Cotaña 46 - Una cosa tangible y/o visible. - Algo que puede comprenderse. - Algo hacia lo que se dirige una acción o pensamiento. Todo lo que hay en el mundo seran objetos? OBJETOSOBJETOS Los objetos tienen atributos y operaciones. Los atributos son sus caracteristicas y sus operaciones (servicios, metodos) son las acciones Preparado por: Miguel Cotaña 47 operaciones (servicios, metodos) son las acciones que el objeto puede realizar La definicion de objetos implica la descripcion de atributos, comportamientos, operaciones y mensajes EJEMPLOEJEMPLO TOYOTA: CORONA OBJETO Preparado por: Miguel Cotaña 48 - Placa - Modelo - Color - Nro-motor - Frenar() - Cambiar-caja() ATRIBUTOS OPERACIONES Comportamiento del objeto Para verificar un objeto previamente identificado se pueden utilizar los siguientes criterios: - Relevancia para el dominio del Preparado por: Miguel Cotaña 49 - Relevancia para el dominio del problema. - Existencia independiente - Atributos y Operaciones CLASECLASE Clase es una agrupacion de objetos con los mismos tipos de caracteristicas Preparado por: Miguel Cotaña 50 Los objetos son instancias de las clases. Las clases definen atributos y operaciones para sus objetos, no para ellas mismas. ……….CLASES Y OBJETOS……….CLASES Y OBJETOS CLASE. Es un conjunto de objetos que comparten una estructura comun y un comportamiento común. Preparado por: Miguel Cotaña 51 TIPOS DE RELACION TIPOS DE RELACION ENTRE CLASESENTRE CLASES asociacionagregacion (tiene) Preparado por: Miguel Cotaña 52 composicion (incluye)(parte de) dependencia navegacion (es un) VENDEDOR ORDEN_COMPRA recibe incluye tiene Preparado por: Miguel Cotaña 53 ITEM_SOLICITADO CLIENTE GENERALIZACIONGENERALIZACION Es el proceso (durante las etapas de analisis y diseno de sistemas) de identificar y definir los atributos y Preparado por: Miguel Cotaña 54 identificar y definir los atributos y operaciones comunes en una coleccion de objetos. • Permite identificar nuevas clases • Reduce la redundancia • Promueve la reutilizacion de codigo HERENCIAHERENCIA Es el mecanismo para definir una clase en terminos de una clase ya existente. Preparado por: Miguel Cotaña 55 Una subclase hereda los miembros de una superclase VEHICULO precio Veloc_max Frenar() Preparado por: Miguel Cotaña 56 AUTO descapotable turbo subir() CAMION capacidad traccion cargar() ESPECIALIZACION Y ESPECIALIZACION Y GENERALIZACIONGENERALIZACION Mientras la generalizacion se concentra en las clases mayores del sistema y ayuda a encontrar nuevas clases, la especializacion Preparado por: Miguel Cotaña 57 encontrar nuevas clases, la especializacion se concentra en crear clases mas especificas. La especializacion es herencia con la adicion o modificacion de operaciones para resolver un problema especifico. ESPECIALIZACION Y ESPECIALIZACION Y GENERALIZACIONGENERALIZACION Generalizacion Preparado por: Miguel Cotaña 58especializacion CLASIFICACICLASIFICACIÓÓNN Identificar clases y objetos es fundamental en el DOO. Implica descubrimiento e invención. Preparado por: Miguel Cotaña 59 ABSTRACCIONES CLAVEABSTRACCIONES CLAVE Es una clase u objeto que forma parte del vocabulario del dominio del problema. Preparado por: Miguel Cotaña 60 SISTEMAS DE GESTIONSISTEMAS DE GESTION DEDE BASES DE DATOSBASES DE DATOS Preparado por: Miguel Cotaña 61 BASES DE DATOSBASES DE DATOS SISTEMA DE BDSISTEMA DE BD Preparado por: Miguel Cotaña 62 SGBD BD Procesador de consulta Metadatos(DD) + Archivos de datos OBJETIVOS de SGBDOBJETIVOS de SGBD � Proveer un ambiente que sea adecuado y eficiente para recuperary almacenar información de la Base de Datos. Preparado por: Miguel Cotaña 63 información de la Base de Datos. � Gestionar grandes volumenes de información. � Proveer seguridad a la informacion almacenada en las Bases de Datos. CARACTERCARACTERÍÍSTICAS PARA STICAS PARA USAR UN SGBDUSAR UN SGBD REDUNDANCIA � Sin SGBD: La misma información es almace- nada en diversos archivos INTEGRIDAD � Sin SGBD: Ej: Una consulta que revele que un empleado trabajó 400 horas/semana. Las reglas a ser obedecidas estan en cada una de las aplicaciones. Preparado por: Miguel Cotaña 64 nada en diversos archivos privados. � Con SGBD: Redundancia es reducida al mínimo, inconsistencias son evita- das por la integración de datos. cada una de las aplicaciones. � Con SGBD: Asegura que la información de la BD es correcta. Una vez que sean definidas las reglas para el SGBD, estas reglas valen para todas las aplicaciones automáticamente. …….usar un SGBD…….usar un SGBD TOMA DE DECISIONES � Sin SGBD:La información necesaria estan esparcidas en archivos pertenecientes a ACCESO A INFORMACION � Sin SGBD: Los formatos de archivos dependen del Preparado por: Miguel Cotaña 65 en archivos pertenecientes a sistemas distintos. � Con SGBD: La integración de los datos facilita la obtención rapida de las informaciones(ayuda en la toma de decisiones) de archivos dependen del lenguaje o del producto usado para generarlos � Con SGBD: Los formatos de archivos son accedidos por el SGBD, no por programas de aplicación …….usar un SGBD…….usar un SGBD INDEPENDENCIA DE LOS DATOS � Sin SGBD: Los programas de aplicación dependen de los formatos del archivo. SEGURIDAD Y PROTECCION � Sin SGBD: Formas estandares de seguridad Preparado por: Miguel Cotaña 66 los formatos del archivo. � Con SGBD: Los farmatos de registros se almacenan en la misma BD(junto con los datos) y son accedidos por el SGBD, no por el programa de aplicación. estandares de seguridad utilizando codigos y señas � Con SGBD: Hay esquema adicional de proteccion: el usuario ve la BD por medio de “ventanas” …….usar un SGBD…….usar un SGBD USO CONCURRENTE DE LOS DATOS � Sin SGBD: Los archivos son utilizados por varios usuarios simultaneamente. Alquien tiene que sincronizar los eventos. Preparado por: Miguel Cotaña 67 sincronizar los eventos. Ej: dos clientes del banco, que depositan en la misma cuenta, al mismo tiempo: Estado inicial de la cuenta Bs.500 Cli_A deposita 200 Cli_B deposita 300 …….usar un SGBD…….usar un SGBD CASO1: Cli_A: lee 500 Cli_A: 500 + 200 total : 700 CASO2: Cli_A: lee 500 Cli_B: lee 500 Cli_A: 500+200=700 Preparado por: Miguel Cotaña 68 total : 700 Cli_B: lee 700 Cli_B: 700 + 300 total: 1000 OKOK Cli_B: 500+300=800 ….problema Con SGBD: Control de concurrencia de transacciones con actualizaciones atomicas (una por cada vez) FUNCIONES DEL ABDFUNCIONES DEL ABD � Identifica información relevante. � Definiciones de esquema (LDD) � Definición de la estructura de almacenamiento y del método de acceso. � Modificación del esquema y de la organización fisica. Preparado por: Miguel Cotaña 69 � Modificación del esquema y de la organización fisica. � Definición de aspectos de seguridad(usuarios, entornos, infraestructura) � Especificación de las restricciones de integridad � Reorganización � Administracion del uso de la BD � Estadisticas � Auditoria � Backup y recuperacion 1.5 1.5 BASES DE DATOS BASES DE DATOS DISTRIBUIDASDISTRIBUIDAS � Es una colección de múltiples y lógicamente relacionadas BD sobre una red de ordenadores. Es una BD almacenada en varios Preparado por: Miguel Cotaña 70 � Es una BD almacenada en varios ordenadores que se comunican mediante una red de comunicaciones. � Una de las cosas que debe ser distribuido es el procesamiento logico. SISTEMAS DISTRIBUIDOSSISTEMAS DISTRIBUIDOS � Un SGBDD, es el software que administra los mecanismos de acceso, de forma transparente para los usuarios. Preparado por: Miguel Cotaña 71 transparente para los usuarios. � Los datos son localizados en diferentes maquinas. � Datos son compartidos por los usuarios DISEDISEÑÑO DE BDDO DE BDD � Las dos decisiones principales que se deben realizar en el diseño de BDD son: Dividir las bases en partes y saber donde almacenar Preparado por: Miguel Cotaña 72 las bases en partes y saber donde almacenar cada una. � Los terminos para estas actividades son: - Fragmentación - Asignación FRAGMENTACIONFRAGMENTACION � HORIZONTAL: particiona una relación en sus tuplas. Asi cada fragmento tiene un subconjunto de las tuplas de la relacion. Preparado por: Miguel Cotaña 73 subconjunto de las tuplas de la relacion. � VERTICAL: produce fragmentos R1,R2…., cada cual contiene un subconjunto de atributos de R tambien como la llave primaria de R. APLICACIONESAPLICACIONES � Fabricas, especialmente empresas con multiples plantas industriales � Sistemas de apoyo a decisiones corporativos Preparado por: Miguel Cotaña 74 � Sistemas de apoyo a decisiones corporativos � Empresas aéreas. � Cadenas de hoteles � Cualquier institución que tenga una estruc- tura de organización descentralizada VENTAJASVENTAJAS � Gestión transparente de la localización de datos. � Aumento de confiabilidad y disponibilidad a traves de transacciones distribuidas. Preparado por: Miguel Cotaña 75 Aumento de confiabilidad y disponibilidad a traves de transacciones distribuidas. � Expansion mas facil y simple � Economica: es mejor invertir en un conjunto de maquinas de pequeño porte que en una única maquina de gran capacidad. DESVENTAJASDESVENTAJAS � Poca experiencia de profesionales � Complejidad del sistema � Seguridad Preparado por: Miguel Cotaña 76 � Seguridad �Consistencia de la BD. 1.6 NORMALIZACION1.6 NORMALIZACION Preparado por: Miguel Cotaña 77 1.6 NORMALIZACION1.6 NORMALIZACION DEPENDENCIADEPENDENCIA � Dependencia funcional: Sea el esquema R(A,DF), y sean X, Y dos subconjuntos de A, a los que llamamos descriptores. Se dice que Y “DF” de X o que X implica o determina a Y, y se Preparado por: Miguel Cotaña 78 “DF” de X o que X implica o determina a Y, y se denota como X � Y si, y solo si, a cada valor x del atributo X, le corresponde un unico valor y del atributo Y. Ej: Codigo de estudiante determina el nombre del mismo DEPENDENCIADEPENDENCIA � Dependencia funcional completa: Se dice que Y tiene dependencia funcional completa o plena de X, si depende funcionalmente de Preparado por: Miguel Cotaña 79 o plena de X, si depende funcionalmente de X, pero no depende de ningun subconjunto de este. Se representa por X => Y, por tanto X=>Y Sii no existe un X’ subconjunto X | X’ �Y DEPENDENCIADEPENDENCIA � Dependencia funcional trivial: Una dependencia funcional X � Y se dice que es trivial si Y es un subconjunto propio de X. � Dependencia funcional elemental: Decimos que Preparado por: Miguel Cotaña 80 � Dependencia funcional elemental: Decimos que una dependencia funcional X � Y es elemental si Y es un atributo unico no incluido en X, y no existe X’ incluido en X tal que X’ � Y, es decir, la DFE es una DFC, no trivial y en la que el implicado es un atributo unico. DEPENDENCIADEPENDENCIA � Dependencia funcional transitiva: Dado el esquema de relacion R(X,Y,Z) en las que existen las siguientes DF: X � Y Y � Z Preparado por: Miguel Cotaña 81 X � Y Y � Z Se dice que Z tiene una dependencia transitiva respecto a X a traves de Y, lo que se representa por: X - -> Z CLAVESCLAVES � Clave candidata: Una clave cadidata de una relacion es un conjunto no vacio de atributos que identifican univocamente y minimamente Preparado por: Miguel Cotaña 82 cada tupla de una relacion. En toda relacion siempre hay, al menos, una clave candidata, ya que el conjunto de atributos que constituye la relacion gozara de la propiedad de unicidad. CLAVESCLAVES Una relacion puede tener mas de una clave candidata: � Clave primaria: Los atributos que forman parte de la clave primaria no pueden tomar Preparado por: Miguel Cotaña 83 parte de la clave primaria no pueden tomar valores nulos. � Clave alternativa: Son aquellas claves candidatas que no han sido elegidas como claves primarias de la relacion. CLAVESCLAVES � Clave ajena: Una clave ajena (externa o foranea) de una relacion R2 es un conjunto no vacio de atributos cuyos valores han de Preparado por: Miguel Cotaña 84 coincidir con los valores de la clave primaria de una relacion R1. Se dice que R2 es la relacion que “referencia”, mientras que R1 es la relacion “referenciada”. FORMAS NORMALESFORMAS NORMALES � Cuando se disena una BD mediante el MR, al igual que ocurre con otros modelos, obtenemos diferentes esquemas relacionales Preparado por: Miguel Cotaña 85 obtenemos diferentes esquemas relacionales y no todos ellos son equivalentes, ya que unos van a representar la realidad mejor que otros. � Con la teoria de la normalizacion, se consigue una formalizacion en el diseno logico de BDR. 1ra. FORMA NORMAL1ra. FORMA NORMAL Para que una tabla pueda ser considerada una relacion no debe admitir grupos repetitivos, esto es, debe estar en primera forma normal Preparado por: Miguel Cotaña 86 esto es, debe estar en primera forma normal Se dice que una relacion esta en 1FN cuando cada atributo solo toma un valor del dominio simple subyacente. 2da. FORMA NORMAL2da. FORMA NORMAL Esta basada en el concepto de dependencia plena y en las interrelaciones existentes entre los atributos principales de una relacion. Preparado por: Miguel Cotaña 87 los atributos principales de una relacion. Se dice que una relacion esta en 2FN si: Esta en 1FN y cada atributo no principal tiene DFC respecto de cada una de las claves. 3ra. FORMA NORMAL3ra. FORMA NORMAL Esta basada en el concepto de DFT Un esquema de relacion R esta en 3FN Sii. Esta en 2FN y no existe ningun atributo no Preparado por: Miguel Cotaña 88 Esta en 2FN y no existe ningun atributo no principal que dependa transitivamente de alguna clave R FORMA NORMAL BoyceFORMA NORMAL Boyce--CoddCodd Para ciertos problemas fueron insuficientes las tres primeras formas normales, en relaciones que presentaban varias claves candidatas Preparado por: Miguel Cotaña 89 que presentaban varias claves candidatas compuestas que se solapaban. Se dice que una relacion se encuentra en FNBC si, y solo si, todo determinante es una clave candidata. SQL SQL (Structured Query Languaje)(Structured Query Languaje) � La mayoria de los SGBD relacionales proveen un lenguaje de alto nivel, en el que el usuario solo especifica lo que desea como resultado, dejando las decisiones de como Preparado por: Miguel Cotaña 90 resultado, dejando las decisiones de como ejecutar la consulta para el sistema. � El SQL es lenguaje standard de BD. � Incorpora el algebra relacionaly el calculo relacional OPERACIONES OPERACIONES FUNDAMENTALESFUNDAMENTALES � Seleccion (σ): σ p(R) R’ p – predicado de la seleccion (condicion a ser satisfecha) Preparado por: Miguel Cotaña 91 (condicion a ser satisfecha) � Proyeccion (π): π LA(R) R’ LA – Lista de atributos deseados � Producto cartesiano (x): R1xR2 R’ …..operaciones fund..…..operaciones fund.. � Union (U):R1 U R2 a) R1 y R2 necesitan ser del mismo orden. Igual numero de atributos Preparado por: Miguel Cotaña 92 Igual numero de atributos b) El dominio del i-esimo atributo en R1 es igual al i-esimo atributo en R2 � Diferencia (-): R1 – R2 R’ mismas observaciones de la union