Diseño Físico. yEl diseño físico de BD forma parte importante del ciclo de vida de un sistema de BDs. yConsiste en escoger las estructuras de almacenamiento.

Slides:



Advertisements
Presentaciones similares
IBD Clase 13.
Advertisements

INSTITUTO DE ESTUDIOS SUPERIORES DE CHIAPAS
SISTEMAS DE GESTIÓN DE BASES DE DATOS
integridad referencial
Arquitecturas de BD Modelo ANSI/SPARC
Sistemas de Gestión de Bases de Datos (SGBD’s)
Rocío Contreras Águila Primer Semestre 2010
Introducción a LAS Bases de Datos
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
“Tuning” Universidad Nacional Autónoma de México Bases de datos I
Elementos para Interpretar el Modelo Conceptual de Datos
Bases de Datos Introducción.
INTELIGENCIA ARTIFICIAL
Base de Datos Relacional.
1.1.2 Sistemas de información para la gestión y para la ayuda en la toma de decisiones. Los SI contribuyen activamente a la consecución de los objetivos.
Tema 8 : Sistemas relacionales Resumen Sobre el modelo relacional
Introducción a los Conceptos de Bases de Datos Docente: Ing. Marleny Soria Medina.
Diseño de Bases de Datos Distribuidas (1era Parte)
UNIDAD I Conceptos Básicos.
1 BD Activas: Motivación zLos SGBD convencionales son “pasivos”. Sólo ejecutan preguntas o transacciones realizadas por los usuarios o por los programas.
Bases de Datos Relacionales
Ing. Fabián Ruano.  Definición  Diferencias con BD Centralizadas.
Subconsultas Avanzadas
Optimización de Preguntas. Optimización de preguntas zOptimización: pregunta  plan costo ópt. costo = CPU + I/O + COMUNICACIONES zNecesario para responder.
Administración de Bases de Datos
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar.
Bases de Datos Relacionales.  Responsable Cátedra: Silvina Migani  JTP: Liliana Romera  Ayudante:
Administración de Bases de Datos
DISEÑO FÍSICO Especificación de estructuras de almacenamiento internas y caminos de acceso específicos para que las diversas aplicaciones que accedan a.
Universidad del Cauca – FIET – Departamento de Sistemas CAPITULO 11 Creando Vistas.
Inteligencia de Negocios Buenos Aires, mayo de 2009 U.T.N. – F.R.B.A. Prof: Ing. Pablo Cigliuti Ayud: Ing. Rafael Rizzo.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
 Se usan para acceder a tablas.  Una llave identifica únicamente un registro.  Identificador único, no puede tener el mismo valor en dos registros.
Bases de Datos Distribuidas
DISEÑO DE BASES DE DATOS
Consultas SQL (Base de Datos)
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
LENGUAJE SQL.
Expresiones algebraicas equivalentes
Departamento de Informática Universidad de Rancagua
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
PROCEDIMIENTOS ALMACENADOS Es una consulta almacenada en la base de datos en un servidor. Los P.A. Mejoran el Rendimiento Disminuyen el tráfico. Los P.A.
INTERFAS DE ACCES DISEÑO DE UNA BASE DE DATOS NOMBRE: OLIVARES MORALES ROGELIO DANIEL BAUTISTA CRUZ GRUPO: 307 EQUIPO: 05.
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
UNIVERSIDAD LATINA III. MANTENIMIENTO Y GESTIÓN DE LA INFORMACIÓN DE UNA BASE DE DATOS. E.I. L.E. Prof. Ramón Castro Liceaga.
Diseño de una base de datos y elementos básicos Integrantes: López Ponce de León José Efrén Velazquez Martínez Brenda Equipo:10Grupo:307.
INSTRUCCIONES Elaboración de la Presentación:
1 FUNDAMENTOS DE BASES DE DATOS SISTEMA GESTOR DE BASES DE DATOS (SGBD) Consiste en una colección de datos interrelacionados y un conjunto de programas.
Introducción a la Optimización de Consultas. Francisco Moreno.
UNIVERSIDAD LATINA II. FUNCIONES DEL ADMINISTRADOR.
Bases de Datos II BASES DE DATOS DISTRIBUIDAS
SQL Lenguaje Estructurado de Consulta MATERIA: diseñar sistemas de información ALUMNO: sarmiento flores Liliana Guadalupe GRUPO: 4° “A” TURNO: matutino.
Base de Datos.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
MSSQL SERVER CURSO BÁSICO 1. CONCEPTOS BASICOS DE SQL. DESCRIPCIÓN DEL CURSO. Sesión 3: Índices Uso, Creación, Tipos, Eliminación LENGUAJE DE CONSULTAS.
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
DISPARADORES Y SISTEMAS DE GESTION DE BASE DE DATOS DE SQL
Unidad 1. CONCEPTOS DE BASES DE DATOS
PARTICIPANTE: CAMACHO MAITE C.I T-01.
SQL es un estándar internacional para trabajar con bases de datos, que consta de dos partes: una parte para manipular datos y una parte para definir tipos.
DISEÑO DE BASES DE DATOS (modelos para el diseño)
Diccionario/Directorio de Datos
BASES DE DATOS CONCEPTOS BASICOS Elizabeth Maite Zarate Machaca “El tratamiento eficiente de la información al servicio del usuario”
BASES DE DATOS DISTRIBUIDAS M.C.C. María Guadalupe Villanueva Carrasco INGENIERIA EN SISTEMAS COMPUTACIONALES.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
Bases de datos II Universidad del Cauca Ing. Wilson Ortega.
Copyright  Oracle Corporation, All rights reserved. 12 Otros Objetos de la Base de Datos.
Omar Herrera Caamal Rigoberto Lizárraga Luis Cetina Luna.
Crear una tabla (create table - sp_tables - sp_columns - drop table) Para ver las tablas existentes creadas por los usuarios en una base de datos usamos.
Transcripción de la presentación:

Diseño Físico

yEl diseño físico de BD forma parte importante del ciclo de vida de un sistema de BDs. yConsiste en escoger las estructuras de almacenamiento y caminos de acceso que x1) cumplan los objetivos del sistema x2) proporcionen un balance óptimo entre el rendimiento (tiempos de respuesta de transacciones, número de transacciones por minuto...) y el costo (espacio utilizado, reorganizaciones de datos...). yNo existen metodologías para realizar el diseño físico. Es muy dependiente del SGBD concreto.

Diseño Físico: Recopilar información. zPor cada op. (preg. SQL) con la BD indicar: xTipo: INSERT, SELECT, UPDATE, DELETE xTablas que se van a acceder (cardinalidad) xCondiciones de selección (selectividad de cada una) xCondiciones de combinación-join (selectividad) xAtributos a ser proyectados / modificados xFrecuencia esperada de que se realice la operación. xRestricciones importantes de ejecución (si las hay) zRegla 80-20: El 80% del procesamiento se realiza por el 20% de las transacciones.

Reconsiderar algunas de las claves utilizadas zLas claves escogidas deben asegurar que no haya elementos repetidos. zA veces se asignan códigos que toman valores numéricos sucesivos: 1,2,3,... zProblema: esto puede implicar realizar consultas con varios joins. zSi es posible hay que intentar usar claves con significado siempre que aseguren la unicidad.

Desnormalización yEl proceso de normalización consiste en dividir una tabla R en R1 y R2 si R=R1 R1.K=R2.K R2 xEvita redundancia y anomalías (ins./bor./mod.) xProblema: Para obtener R hay que hacer el join ySi (casi) siempre que se recuperan los valores de R1 se utilizan también los de un mismo atributo(s) R2.Atr, entonces se puede añadir el atributo R2.Atr a la tabla R1 --> (No estaría en 3FN!!) xHay que controlar que no haya anomalías xHabrá redundancia pero estará controlada xSe evitará ejecutar joins (según las frecuencias def.)

Particionamiento horizontal  Si existe tabla R =  C1 (R) U... U  Cn (R) donde muchas operaciones con la BD son con  Ci (R) algunos atributos son inaplicables (NULL) según Ci entonces cada  Ci (R) se guarda en una tabla y se define una vista sobre R (¿diseño lógico? ¿físico?)  En general si una operación  Ci (R) es muy frecuente, con Ci muy selectivo y R muy grande: almacenar  Ci (R) en una tabla S hay que controlar la redundancia / integridad (triggers) –inconveniente: inserciones en S o R (ver frecuencias) los programas deberán usar la nueva tabla S si después se suprime tabla S --> crear vista para S –para mantener indep. física. Esto sí es diseño físico !!

Particionamiento vertical ySi existe una tabla R (A1,...An,B1,...Bm) donde xmuchas de las operaciones afectan sólo a atributos A1,...,An y muy pocas veces a atributos B1,...Bm xesas operaciones son muy frecuentes xR(..Ai,...,Bj...) es mucho más grande que R(..Ai...) yEntonces almacenar R(...Ai...) en una tabla S xcontrolar redundancia / integridad. Fácil si hay mecanismo de triggers. Si no, controlar la parte de las aplicaciones que insertan / modifican R. xinconveniente: las inserciones en R(...Ai...). Hay que valorar su frecuencia para ver si merece la pena.

Precomputar joins en tablas ySi existe una consulta R1 R2... Rn que se ejecuta frecuentemente, cuyo coste es elevado (los joins son costosos) y donde cada relación Ri no se actualiza frecuentemente entonces se puede crear una tabla donde se almacene el resultado de dicha consulta. xHabrá que controlar recomputar dicha consulta 1) Utilizando triggers cada vez que cambie algún Ri o bien 2) Ejecutando periódicamente algunos scripts (ej. a las noches). Se puede si no es obligatorio que la consulta devuelva los valores más actuales. xValorar: frecuencia de cambios en Ri, tamaño del resultado, tiempo de ejecución de la consulta inicial

Organización física para tablas zSi un atributo se usa a menudo para recuperar tuplas en orden o para hacer joins entonces se define como clave primaria o como índice cluster (si no puede ser clave). ¡¡Sólo UNO!! yalgunos SGBD permiten almacenar tablas juntas (en un mismo cluster). Útil para ejecutar joins (alternativa a desnormalizar) zSi hay otros atributos que se usan en condiciones de selección o en joins entonces se definen como índices. yconveniente si se seleccionan pocas tuplas ( 100 tuplas) zSi la tabla se actualiza con gran frecuencia hay que definir un número mínimo de índices (coste de actual.) zSi un atributo se usa frecuentemente para selecciones del tipo A=c o en joins y no para recuperar por orden de A, entonces definirlo como hash (si SGBD permite)

Conclusiones zRealizar el diseño físico inicial xObtener información de las operaciones esperadas xResolver operaciones con mayores restricciones (aplicando algunos de los métodos explicados) xResolver el resto de las opers. sin perjudicar a otras añadir índices para favorecer consultas perjudica a operaciones de inserción / borrado zReplantearse continuamente dicho diseño (Tunning) xanalizar/auditar el sistema actual xtomar nuevas decisiones (añadir/borrar índices o tablas (crear vistas y triggers si es necesario)