Tecnología de la información Unidad: 4 El DBMS Profesor: Lic. Roberto García.

55
Tecnología de la información Unidad: 4 El DBMS Profesor: Lic. Roberto García

Transcript of Tecnología de la información Unidad: 4 El DBMS Profesor: Lic. Roberto García.

Diapositiva 1

Tecnologa de la informacinUnidad: 4 El DBMSProfesor: Lic. Roberto Garca2Tecnologa de la informacinUnidad 4: DBMSTpico 1Tpico 2Tpico 3FuncionesRedundanciaNormalizacin Tpico 4Tpico 5Vistas SQL

3Tecnologa de la informacinUnidad 4 El DBMSFunciones: Base de datos: Conjunto de datos organizados para servir eficientemente a muchas aplicaciones al centralizar los datos y controlar su redundanciaSistemas de administracin de bases de datos: Interfaces entre los programas de aplicacin y los archivos de datos fsicosSepara las vistas lgica y fsica de los datosResuelve los problemas del entorno de archivos tradicionalControla la redundanciaElimina la inconsistenciaElimina la dependencia entre los programas y los datosPermite la posibilidad de centralizar la administracin de datos, su uso y seguridadEnfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall4Conceptos de organizacin de archivosUn sistema de cmputo utiliza jerarquasCampo: agrupacin de caracteresRegistro: grupo de campos relacionadosArchivo: grupo de registros del mismo tipoBase de datos: grupo de archivos relacionadosRegistro: Describe una entidadEntidad: persona, lugar, cosa o evento sobre el cual se almacena y conserva informacinAtributo: cada caracterstica o cualidad que describe a una entidad en particularPor ej.: ID_Estudiante, curso , grado pertenecen a la entidad CURSOOrganizacin de datos en un entorno tradicional de archivos6.N 2007 by Prentice Hall5Problemas con el entorno tradicional de archivos (archivos se mantienen de manera separada por departamentos diferentes)Redundancia e inconsistencia de datosRedundancia de datos: presencia de datos duplicados en mltiples archivos de datosInconsistencia de datos: el mismo atributo podra tener valores diferentesDependencia entre los programas y los datos:Cuando los cambios en los programas requieren cambios a los datosCarencia de flexibilidadSeguridad escasaCarencia de comparticin y disponibilidad de los datos

Organizacin de datos en un entorno tradicional de archivos6.N 2007 by Prentice Hall6Organizacin de datos en un entorno tradicional de archivos

6.N 2007 by Prentice Hall7VendedorClienteVentasPrg.SeleccinArchivoAuxiliarPrg.Ordenador

Prg.Impresin

ArchivoOrdenadoProblemas del uso de Archivos6.N 2007 by Prentice Hall8Base de datos: Conjunto de datos organizados para servir eficientemente a muchas aplicaciones al centralizar los datos y controlar su redundanciaSistemas de administracin de bases de datos: Interfaces entre los programas de aplicacin y los archivos de datos fsicosSepara las vistas lgica y fsica de los datosResuelve los problemas del entorno de archivos tradicionalControla la redundanciaElimina la inconsistenciaElimina la dependencia entre los programas y los datosPermite la posibilidad de centralizar la administracin de datos, su uso y seguridadEnfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall9DBMS relacionalRepresentan los datos como tablas bidimensionales llamadas relacionesCada tabla contiene datos acerca de una entidad y sus atributosTabla: Cuadrcula de columnas y filasTuplas (filas) : registros para diferentes entidadesCampos (columnas): representa un atributo para entidadesCampo clave: campo utilizado para identificar nicamente cada registroClave principal: campo en la tabla utilizado para los campos claveClave externa: clave principal utilizada en una tabla segundaria para buscar campo para identificar los registros de su tabla original

Enfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall10Diseo de bases de datosDiseo conceptual (lgico): modelo abstracto de la base de datos desde una perspectiva de negociosDiseo fsico: manera real en que la base de datos est organizada en dispositivos de almacenamiento de acceso directoEl proceso de diseo identifica:Las relaciones entre los elementos de datos, los elementos de datos redundantesLa manera ms eficiente de agruparlos para que cumplan los requerimientos de informacin de la empresa, necesidades de programas de aplicacinNormalizacinSimplificar las agrupaciones complejas de datos para minimizar elementos de datos redundantes y complicadas relaciones muchos a muchosEnfoque de las bases de datos para la administracin de datosSABD

Lenguaje deDefinicin deDatosLenguaje deManejo de DatosDiccionariodeDatosBasede DatosFsicaPrg 1

Prg 2

Prg 36.N 2007 by Prentice Hall11Enfoque de las bases de datos para la administracin de datos

6.N 2007 by Prentice Hall12Enfoque de las bases de datos para la administracin de datos

6.N 2007 by Prentice Hall13Operaciones de un DBMS relacional: tres operaciones bsicas para generar conjuntos de datos tilesSELECCIONAR: crea un subconjunto que consta de todos los registros de la tabal que cumplen los criterios establecidosUNIR: combina tablas relacionales para dar al usuario ms informacin de la que est disponible en las tablas individualesPROYECTAR: crea un subconjunto que consiste en las columnas de una tabla, creando nuevas tablas que contengan solamente la informacin que se requiereEnfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall14Enfoque de las bases de datos para la administracin de datos

Operaciones BsicasSeleccionarUnirProyectar6.N 2007 by Prentice Hall15DBMS orientado a objetos (OODBMS)Almacena los datos y los procedimientos como objetosCapaces de manejar grficos, multimedia y subprogramas de JavaRelativamente lento comparado con los DBMS relacionales para procesar grandes cantidades de transaccionesDBMS relacional-orientado a objetos: proporciona capacidades de DBMS orientado a objetos y relacionalEnfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall16Componentes de los sistemas de administracin de bases de datosDefinicin de datos: especifica la estructura del contenido de la base de datos, utilizada para crear tablas de bases de datos y para definir las caractersticas de los camposDiccionario de datos: archivo automatizado o manual que almacena definiciones de elementos de datos y sus caractersticasLenguaje de manipulacin de datos: se utiliza para agregar, cambiar, eliminar y recuperar la informacin de la base de datosLenguaje de Consultas Estructurado o SQLLas herramientas para el usuario de Microsoft Access para la generacin SQLTambin: Muchos DBMS son populares generadores de informes (Crystal Reports)

Enfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall1718Elementos del modelo Entidad - RelacinElementosRectnguloRepresenta entidades bsicasDoble RectnguloRepresenta entidades dbiles; su clave est compuesta por atributos propios y atributos de otras entidades fuertes. Diamanteidentificador de relacionesElipseAtributos de la entidad, si esta subrayado es llave primariaLneaConexin entre la entidades y sus relaciones

AlumnoEfecta

ExamenAsignaturas

Pertenece6.N 2007 by Prentice Hall18Bases de Datos - 2014Proceso de NormalizacinLa normalizacin es el proceso de organizar los datos de una base de datos.Incluye la creacin de tablas y las relaciones entre ellas segn reglas diseadas para proteger los datos como para eliminar la redundancia.Los datos redundantes desperdician el espacio de disco y crean problemas de mantenimiento.Hay algunas reglas en la normalizacin de una base de datos. Cada regla se denomina una "forma normal. 6.N 2007 by Prentice Hall19Bases de Datos - 2014Primera Forma NormalUna tabla se dice que esta en 1FN si y slo si: los valores que componen el atributo de una tupla son atmicos. La tabla contiene una clave primaria nica. La clave primaria no contiene atributos nulos. Un atributo solo debe mantener valores elementales o nicos. Debe Existir una independencia del orden tanto de las filas como de las columnas.

Pasos a seguir para Normalizar en Primera Forma Normal:Elimine los grupos repetidos de las tablas individuales. Cree una tabla independiente para cada conjunto de datos relacionados. Identifique cada conjunto de datos relacionados con una clave principal 6.N 2007 by Prentice Hall20Bases de Datos - 201421Primera Forma Normal (1FN)No esta normalizada ya que no existen relaciones atmicas entre los dominios. AnomalaDe qu tamao es un registro?

Entidad en 1FN

En el producto cartesiano todos los dominios tienen valores atmicos

6.N 2007 by Prentice Hall21Bases de Datos - 2014Dependencias Funcionales

Es una conexin entre uno o ms atributos.Las dependencias funcionales del sistema se escriben utilizando una flecha, de la siguiente manera:

ClaveAtributos secundariosDF6.N 2007 by Prentice Hall22Bases de Datos - 2014Segunda Forma NormalLa Segunda Forma Normal est basada en el concepto de dependencia completamente funcional. Una tabla se dice que esta en 2FN si y solo si cumple dos condiciones:Se encuentra en 1FN.Todo atributo secundario ( aqullos que no pertenecen a la clave principal) depende totalmente de la clave completa (DFT).

6.N 2007 by Prentice Hall23Bases de Datos - 2014ABCDEFGHIJKLMNOPQRSTEFGHIJSTALMNBCODPABCDQRSegunda Forma Normal(Dependencia Funcional Total)K6.N 2007 by Prentice HallTercera Forma NormalSe dice que esta en 3FN si y solo si se cumplen dos condiciones:Se encuentra en 2FN. Cada atributo secundario solo se debe conocer a travs de la clave principal o claves secundarias de la tabla y no por medio de otro atributo primario.6.N 2007 by Prentice Hall25Bases de Datos - 2014Dependencias Funcionales

Dependencia Funcional Transitiva: DF Transitiva Se aplica para analizar las tablas en tercera forma normal (3FN). Consiste en considerar que un atributo no primario solo debe conocerse a travs de la clave principal o claves secundarias. ClaveAtributos con DFTDFAtributos con DF Transitiva6.N 2007 by Prentice Hall26Bases de Datos - 2014EFGHIJSTATercera Forma Normal(Dependencia Funcional Transitiva)KEFGHIJAKSETF6.N 2007 by Prentice HallForma Normal de Boyce-CoddUna tabla esta en FNBC si y solo si las nicas dependencias funcionales elementales son aquellas en las que la clave principal y claves secundarias determinan un atributo.

6.N 2007 by Prentice Hall28Bases de Datos - 2014Dependencia Multivaluada (DMV) La dependencia multivaluada es un concepto que se introduce para tratar la 4FN. Es necesario que entre dos atributos el resto de los campos sean independientes. Deben existir al menos 3 atributos para que haya dependencia multivaluada. la definicin dice:sean A, B y C tres subconjuntos distintos de atributos de una tabla T se dice que A tiene una dependencia multivaluada con B, que A multidetermina B, o que B depende multivaluadamente de A y se escribe: A B Si para cada valor de A existen un conjunto de valores B asociados y esta es independiente del resto de atributos C.

Dependencia Join:Es una dependencia entre tablas6.N 2007 by Prentice Hall29Bases de Datos - 2014Cuarta Forma NormalSe aplica para eliminar las DMV de las tablas (por redundancia de datos).Se dice que esta en 4FN si esta en FNBCLas nicas DMV existentes son las DF de la clave con los atributos secundarios.Es como FNBC, pero con dependencias multivaluadas.6.N 2007 by Prentice Hall30Bases de Datos - 2014Quinta Forma NormalEs un nivel de normalizacin de bases de datos diseado para reducir redundancia en las bases de datos relacionales que guardan hechos multivalores aislando semnticamente relaciones mltiples relacionadas.Debe cumplir dos condiciones: encontrarse en 4FN.Toda Dependencia Join viene implicada por las claves de la tabla.6.N 2007 by Prentice Hall31Bases de Datos - 201432Normalizacin: Redundancia controladaLa normalizacin genera ms entidades, sin embargo esta redundancia aparente esta controlada por el manejador de BD, siendo ajena para el usuario. Por otro lado el tamao de los archivos tiende a reducirse.

Entidad sin normalizarEntidades normalizadas6.N 2007 by Prentice Hall32Bases de Datos - 201433Normalizacin UlteriorLa normalizacin puede ser continuada mas all de la 3FN, existen argumentos acadmicos interesantes para la existencia de

BCFN Forma Normal de Boyce y Codd Las entidades estn en 3FN y adems todo dominio independiente es una llave candidato: Ent={A,B,C,D} y las depencias son A==> BCD y D==>Aaqui A y D son llaves 4FN Cuarta Forma NormalLas entidades estn en BCFN y adems no se tienen dependencias multievaluadas

5FN Quinta Forma Normal

D/KFN Forma Normal de Dominio y Llave

Para los propsitos de una operacin administrativa la 3FN es suficientemente poderosa.

:

6.N 2007 by Prentice Hall33Bases de Datos - 201434Gua de Normalizacin1. Defina los Dominios ( Atomice lo mnimo necesario )2. Defina los Formatos ( Defina formatos comunes )3. Escriba todas las suposiciones semnticas iniciales4. Obtenga la Tabla de Dependencias (conectando todos los dominios)5.Determine las dependencias funcionales ( sentido de la fecha, dominios independientes conjuntos )6. Elimine las dependencias transitivas7. Partiendo de la Tabla de Dependencias obtenga: las entidades mnimas necesarias, tomando cada dominio(s) independiente para entablar a la entidad.8. Complete la lista de suposiciones semnticas 9. Presente los resultados: Dominios, Entidades, Suposiciones10. Obtenga aprobacin firmada de la definicin en caso necesario efecte las modificaciones requeridas (un buen diseo debe no contener ms de 100 dominios y 40 entidades por sistema )

6.N 2007 by Prentice Hall34Bases de Datos - 2014Enfoque de las bases de datos para la administracin de datos

6.N 2007 by Prentice Hall35Enfoque de las bases de datos para la administracin de datos

6.N 2007 by Prentice Hall36Diagrama entidad-relacinUtilizad por los diseadores de bases de datos para documentar sus modelos de datosIlustra las relaciones entre entidadesDistribucin de bases de datos: almacena en ms de un lugar fsicoReduce la vulnerabilidad, incrementa los resultadosPuede partir de definiciones estndar, plantea problemas de seguridadParticionada: unas partes de datos se almacenan y mantienen fsicamente en un lugar y otras partes se almacenan y mantienen en otros lugaresReplicada: la base de datos central duplicada por completo en ubicaciones diferentesEnfoque de las bases de datos para la administracin de datos6.N 2007 by Prentice Hall37Enfoque de las bases de datos para la administracin de datos

1M1MM1Cardinalidad: Forma en que los elementos de un objeto se relacionan conLos elementos de otro objeto (Teora de conjuntos) 6.N 2007 by Prentice Hall38Para bases de datos y sistemas muy grandes, se requieren capacidades y herramientas especiales para analizar grandes cantidades de datos y para acceder datos de sistemas mltiplesAlmacenes de datos (Data Warehouse)Minera de datos (Data Mining)Herramientas para acceder la base de datos interna a travs de la Web

Uso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones(Para la construccin de sistemas DSS y ESS)6.N 2007 by Prentice Hall39Almacenes de datos (Data werehose)Almacn de datos: Almacena datos actuales e histricos que se originan en muchos sistemas de transacciones operativas esencialesConsolida y estandariza informacin para que se pueda utilizar a travs de la empresa, pero los datos no se pueden modificarEl sistema del almacn de datos aportar informes, anlisis y herramientas de informes

Mercados de datos: Subconjunto de un almacn de datos en el que una parte resumida o altamente enfocada de los datos de la organizacin se coloca en una base de datos separada por una poblacin especfica de usuariosPor lo general se enfoca en una sola rea objetivo o lnea de negocios

Uso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones6.N 2007 by Prentice Hall40Uso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones

(Data werehose)6.N 2007 by Prentice Hall41Inteligencia de negocios: Herramientas para consolidar, analizar y dar acceso a extensas cantidades de datos para ayudar a los usuarios a tomar mejores decisiones de negociosPor ej.: Una empresa analiza los datos sobre sus clientes para construir un perfil de consumidor detallado e identificar a los clientes ms rentablesLas principales herramientas incluyen:Software para consultas e informes de base de datosProcesamiento analtico en lnea (OLAP)Minera de datosUso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones6.N 2007 by Prentice Hall42Uso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones

6.N 2007 by Prentice Hall43Procesamiento analtico en lnea (OLAP)Soporta el anlisis de datos multidimensionalesPermite ver los mismos datos utilizando mltiples dimensionesCada aspecto de la informacin (producto, precio, costo, regin o periodo) representa una dimensin diferentePor ej.: cuntos lavarropas vendi Garbarino en Junio / Agosto en las sucursales del noroeste del pas?OLAP permite obtener respuestas en lnea en un lapso de tiempo sumamente rpido a preguntas especficasUso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones6.N 2007 by Prentice Hall44Minera de datos: (Datamining)Ms orientada al descubrimiento de informacin que la OLAPEncuentra patrones y relaciones ocultas en robustas bases de datosInfiere reglas para predecir el comportamiento futuroLos patrones y reglas se utilizan para orientar la toma de decisiones y predecir el efecto de tales decisionesUno de los usos populares de la minera de datos es ofrecer anlisis detallados de patrones existentes en los datos de clientes para realizar campaas de marketing o para identificar clientes rentables.Uso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones6.N 2007 by Prentice Hall45Tipos de informacin que se pueden obtener de la minera de datosAsociaciones: ocurrencias enlazadas a un solo eventoSecuencias: eventos enlazados con el paso del tiempoClasificacin: reconoce patrones que describen el grupo al cual pertenece un elementoAgrupamiento: funciona de una manera semejante a la clasificacin cuando an no se han definido grupos; encuentra agrupamientos dentro de los datosPronsticos: emplea una serie de valores existentes para pronosticar qu otros valores habrUso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones6.N 2007 by Prentice Hall46Anlisis predictivoUtiliza tcnicas de minera de datos, datos histricos y suposiciones sobre condiciones futuras para predecir resultados de eventosPor ej.: la probabilidad de que un cliente responder a una oferta o comprar un producto especfico.La minera de datos vista como un reto para la proteccin de la privacidad individualSe usa para combinar informacin de muchas fuentes diversas para crear una imagen de datos detallada sobre cada uno de nosotros nuestros ingresos, nuestros hbitos de conducir, nuestras aficiones, nuestras familias y nuestros intereses polticosUso de bases de datos para mejorar el desempeo empresarial y la toma de decisiones6.N 2007 by Prentice Hall47Administracin de los recursos de datos:Establecimiento de una poltica de informacinPoltica de informacin: especifica las reglas de la organizacin para compartir, estandarizar la informacinAdministracin de datos: es responsable de las polticas y procedimientos especficos; gobierno de la informacinAdministracin de la base de datos: diseo y administracin de bases de datos responsable de definir, organizar, implementar y mantener la base de datos

Aseguramiento de la calidad de datos

Administracin de los recursos de datos6.N 2007 by Prentice Hall48SQL6.N 2007 by Prentice HallEsquema de Base de DatosAlumnosExamenesDepartamentosMaterias1MM1M11MCursaEfectuaPertenecePertenece6.N 2007 by Prentice HallDefinicin de Tablas

Claves Primarias6.N 2007 by Prentice Hall

Definicin de TablasClaves Secundarias6.N 2007 by Prentice HallSELECT tabla.columna, tabla.columna, ...FROM tabla1, tabla2WHERE {tabla1.columna = tabla2.columna} AND {condiciones1} and/or condiciones2} ..........ORDER BY {columnas} ASC/DECSELECT columna1, columna2, ...FROM tablaWHERE {condiciones1} and/or condiciones2} ..........ORDER BY {columnas} ASC/DECSintaxis Consulta en una sola tabla Sintaxis Consulta en mltiples tablas Sintaxis SQL6.N 2007 by Prentice HallEjemploMostrar el Legajo, Apellido del Alumno, Nombre de la materia que cursa y Nombre del departamento que pertenece la materia de los alumnos cuyo promedio es superior a 7 puntos.

SELECT ALUMNOS.apellido, MATERIAS.nombremater,DEPATAMENTOS.nombredeptoFROM ALUMNOS,DEPARTAMENTOS, MATERIAS WHERE ALUMNOS.nlegajo = MATERIAS.nlegajo AND MATERIAS.coddepto = DEPARTAMENTOS.coddepto AND ALUMNOS.promedio > 7;Tabla ALUMNOS

NLEGAJO APELLIDO PROMEDIO--- ------------ -------- 1 Velasquez 5 2 Perez 4 3 Dominguez 3 4 Gonzalez 10 ...

Tabla MATERIAS

NLEGAJO NOMBREMATER CODDEPTO--- -------------- --------- 50 Sistemas I 1 50 Contabilidad II 2... 50 Matematicas 3 50 Psicologa 4Tabla DEPARTAMENTOS

CODDEPTO NOMBREDEPTO--- -------------- 1 Informatica 2 Contable 3 Exactas 4 Sociales 5 Ciencias Empresarias 6 Ciencias Industriales......Ejemplo consulta en SQL6.N 2007 by Prentice HallIndique si la siguiente consulta est correcta de acuerdo a la siguiente consigna (Justifique la respuesta).Mostrar el apellido, domicilio y cdigo de carrera para aquellos alumnos de la carrera 01 y 02 que aprobaron al menos 10 materias. Correcta ( ) Incorrecta ( )SELECT Apellido, Domic, CodCarreraFROM Alumnos, MateriasWHERE MaterAprob >= 10 AND CodCarrera = 01 OR CodCarrera = 02;6.N 2007 by Prentice HallHoja1AlumnosExmenesMateriasNlegajoNmerico7NlegajoNmerico7CodMateriaNmerico3CodCarreraNmerico3CodMateriaNmerico3NlegajoNmerico7NombreCaracteres25FechaExamenDateNombreMaterCaracteres30ApellidoCaracteres25NotaNmerico2.2CodDeptoNmerico3DomicilioCaracteres25CodCarreraNmerico3LocalidadCaracteres25Cod. PostalCaracteres10PromedioNmerico2.2MaterAprobNmerico2DepartamentosCodDeptoNmerico3Nombre DeptoCaracteres30

Hoja2

Hoja3

Hoja1AlumnosExmenesMateriasNlegajoNmerico7NlegajoNmerico7NlegajoNmerico7CodCarreraNmerico3CodMateriaNmerico3CodMateriaNmerico3NombreCaracteres25FechaExamenDateNombreMaterCaracteres30ApellidoCaracteres25NotaNmerico2.2CodDeptoNmerico3DomicilioCaracteres25CodCarreraNmerico3LocalidadCaracteres25Cod. PostalCaracteres10PromedioNmerico2.2MaterAprobNmerico2DepartamentosCodDeptoNmerico3Nombre DeptoCaracteres30

Hoja2

Hoja3