Sei sulla pagina 1di 46

20350 BASES DE DATOS 1

Enric Mart i G`dia o Escola dEnginyeria Universitat Aut`noma de Barcelona o

Setiembre 2011

Versin corregida por Mireia Bellot o 1

TEMARIO
1. INTRODUCCION. CONCEPTOS BASICOS
Introduccin y deniciones o Componentes de un sistema de Bases de Datos Evolucin histrica o o Ventajas e inconvenientes de un sistema de BD

2. ARQUITECTURA
Arquitectura ANSI-SPARC El DBA i el SGBD Arquitectura back-end / front-end

3. DISENO. EL MODELO ENTIDAD-RELACION


Diseo de una Base de Datos n Modelo Entidad-Relacin o Modelo E-R extendido Criterios de diseo de un esquema E-R n n Diseo de un esquema E-R

4. MODELO DE BASES DE DATOS RELACIONAL


o Introduccin Estructura de datos Reglas de integridad Manipulacin de datos o Algebra Relacional 2

TEMARIO (ii)

5. DISENO DE UNA BASE DE DATOS


Fases de diseo de una BD n o a Captacin y anlisis de requerimientos n Diseo conceptual de la BD Diseo lgico n o n sico Diseo f

6. NORMALIZACION
Teor de la normalizacin a o Dependencia funcional Formas normales de Codd (1NF, 2NF, 3NF) Forma normal de Boyce-Codd (FNBC) Proceso de normalizacin o

7. NIVEL INTERNO
Acceso a la Base de Datos. Estructuras de almacenamiento Indexacin o Hashing Tcnicas de compresin e o Compresin diferencial y jerrquica o a o Codicacin de Human 3

Bibliograa
A. Silberschatz, H.F. Korth, S. Sudarshan, Fundamentos de Bases de Datos, 3a edicin, McGrawo Hill, 2006. T. M. Connolly, C. E. Begg, Sistemas de Bases de Datos, 4a edicin, Pearson-Addison-Wesley, 2005. o P.Rob, C.Coronel, Sistemas de Bases de Datos. Diseo, implementacin y administracin, Thomn o o son, 2004. D.M. Kroenke, Procesamiento de Bases de Datos, 8a edicin, Pearson-Prentice Hall, 2003. o C.J. Date, Introduccin a los Sistemas de Bases o de Datos, 7a edici, Prentice Hall, 2001. o nez, E. Castro, et al., Diseo n A. de Miguel, P. Mart de Bases de Datos. Problemas resueltos, RaMa, 2001. G.W. Hansen, J.V. Hansen, Diseo y administran cin de Bases de datos, 2a edicin, Prentice Hall, o o 1997. e a, M. Marqus, J.I. Aliaga, S. Garci G. Quintana, SQL y desarrollo de aplicaciones en ORACLE 8, Col. Treball dInform`tica i Tecnologia, 9, a Universitat Jaume I, 2001.
4

TEMA 1
INTRODUCCION. CONCEPTOS BASICOS

1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 o 2. Deniciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3. Componentes de un Sistema de Base de Datos . 9 4. Evolucin histrica . . . . . . . . . . . . . . . . . . . . . . . . . . 23 o o 5. Ventajas de un Sistema de Bases de Datos . . . . 29 6. Inconvenientes de un Sistema de BD . . . . . . . . . 42

Introduccin o Sistema de Base de Datos: Sistema de archivo por computador.


Se almacena un conjunto de archivos de datos. Operaciones que un usuario puede realizar sobre los archivos:
ANADIR nuevos archivos a la base de datos INSERTAR datos nuevos en los archivos existentes CONSULTAR datos de los archivos existentes ACTUALIZAR datos en los archivos existentes BORRAR datos de los archivos existentes ELIMINAR archivos de la base de datos

Ejemplo: Base de Datos con un nico archivo: CAVA u


ENT 2 3 6 11 12 16 21 22 VINO Chardonnay Chardonnay Chardonnay Jo Riesling Jo Riesling Jo Riesling Fume Blancg Jo Riesling PRODUCTOR Buena Vista Louis Martini Chappellet Jekel Buena Vista Sattus Ch. St. Jean Rob. Mondavi ANO 98 99 97 99 97 97 98 97 BOT 1 5 4 10 1 1 4 2 LISTO 01 00 01 02 02 99 01 00

Observaciones:
Archivos TABLAS Filas de la tabla TUPLAS, REGISTROS Columnas de la tabla ATRIBUTOS, CAMPOS Lenguaje de interaccin con los datos: SQL (Structured Query o Language)

Instrucciones de manipulacin del lenguaje: o


CONSULTA:
SELECT VINO,ENT,PRODUCTOR FROM CAVA WHERE LISTO=91 --> atributos,campos --> tabla --> condicion

Resultado:
VINO Chardonnay Chardonnay Fume Blancg ENT 2 6 21 PRODUCTOR Buena Vista Chappellet Ch. St. Jean

INSERCION:
INSERT INTO CAVA VALUES (53,Pinot Noir,Saintsbury,87,1,93)

Resultado:
ENT 2 3 6 11 12 16 21 22 53 VINO Chardonnay Chardonnay Chardonnay Jo Riesling Jo Riesling Jo Riesling Fume Blancg Jo Riesling Pinot Noir PRODUCTOR Buena Vista Louis Martini Chappellet Jekel Buena Vista Sattus Ch. St. Jean Rob. Mondavi Sainstbury ANO 98 99 97 99 97 97 98 97 87 BOT 1 5 4 10 1 1 4 2 1 8 LISTO 01 00 01 02 02 99 01 00 93

ACTUALIZACION:
UPDATE CAVA SET BOT=4 WHERE ENT=3

Resultado:
ENT 2 3 6 11 12 16 21 22 VI Chardonnay Chardonnay Chardonnay Jo Riesling Jo Riesling Jo Riesling Fume Blancg Jo Riesling PRODUCTOR Buena Vista Louis Martini Chappellet Jekel Buena Vista Sattus Ch. St. Jean Rob. Mondavi ANY 98 99 97 99 97 97 98 97 BOT 1 4 4 10 1 1 4 2 LISTO 01 00 01 02 02 99 01 00

BORRADO:
DELETE FROM CAVA WHERE ENT=2

Resultado:
ENT 3 6 11 12 16 21 22 VINO Chardonnay Chardonnay Jo Riesling Jo Riesling Jo Riesling Fume Blancg Jo Riesling PRODUCTOR Louis Martini Chappellet Jekel Buena Vista Sattus Ch. St. Jean Rob. Mondavi ANY 99 97 99 97 97 98 97 BOT 5 4 10 1 1 4 2 9 LISTO 00 01 02 02 99 01 00

Ejemplo: Base de Datos con diversos archivos: LIGA BALONCESTO


Campos Num Eq Jornada Camp Nom Eq Num Jug Cap Eq Nom Jug Tel Jug Adr Jug Falt Jug Punt Jug Temp Jug Tipo Numrico e Numrico e Numrico e Carcter a Numrico e Numrico e Carcter a Carcter a Carcter a Numrico e Numrico e Numrico e Longitud 3 2 3 16 3 3 16 7 24 2 3 3 Signicado Nmero de Equipo. u Jornada de la liga. Nmero de Equipo propietario del u Campo donde se juega el partido. Nombre del Equipo. Nmero del Jugador. u Nmero del Jugador capitn. u a Nombre del Jugador Telfono del Jugador. e Direccin del Jugador. o Nmero de faltas del Jugador. u Nmero de Puntos del Jugador. u Tiempo jugado por el Jugador.

TABLAS:
PARTIDO (Num Eq, Jornada, Camp) EQUIPO (Num Eq, Nom Eq, Cap Eq) JUGADOR (Num Jug, Nom Jug, Num Eq, Tel Jug, Adr Jug) PUNTUACION (Num Jug, Jornada, Falt Jug, Punt Jug, Temp Jug)

10

Tablas Liga de Baloncesto:

PREGUNTAS:
Obtener el NOMBRE del capitn del equipo AUTONOMA. a Cuantos partidos ha jugado el equipo AUTONOMA en su campo?. Cuantos minutos ha jugado el capitn del equipo CENTRAL a durante toda la liga?. Cul ha sido el resultado del partido AUTONOMA-POLITECa NICA, jugado en el campo del equipo AUTONOMA?.

11

Deniciones Sistema de Base de Datos:


Sistema informtico diseado para almacenar, manipular a n datos y para permitir recuperarlos cuando sea necesario y de la manera que sea necesaria. (Date) Coleccin de datos interrelacionados, almacenados conjuno tamente sin redundancias perjudiciales o innecesarias, la nalidad de las cuales es la de ser utilizadas por una o ms a aplicaciones de la mejor manera posible. Los datos se guardan de forma independiente de los programas que las utilizan. Se utilizan mtodos bien determinados para incluir nuevos e datos y para modicar o extraer los que ya habian. (Martin)

12

Componentes de un Sistema de Base de Datos


Sistema de Base de Datos. Formado por 4 componentes: Hardware Software Usuarios Base de Datos

13

HARDWARE
Componentes: Almacenamiento secundario (discos magnticos, pe o ticos, dispositivos de E/S, redes).
IMPORTANTE LA CAPACIDAD Y EL TIEMPO DE ACCESO

Memoria RAM para almacenar datos y cdigo que o permiten ejecutar las transacciones SQL.
IMPORTANTE LA CAPACIDAD Y EL TIEMPOS DE ACCESO

CPU. La velocidad y capacidad de la CPU es poco determinante par realizar transacciones SQL, usualmente de poco clculo (clculos aritmticos). a a e

14

SOFTWARE
Sistema Gestor de Base de Datos (SGBD) (Data Base Management System - DBMS) Situado entre la BD f sica y los usuarios. Componente software ms importante. a Objetivos:
Gestionar las peticiones de los usuarios Insertar archivos y datos nuevos Consultar datos Actualizar datos Borrar datos Eliminar archivos o a Presentar una visin de ms alto nivel de la Base de Datos, visin ms independente del Hardware y del Sistema Operao a tivo, mediante tablas, atributos y un lenguaje de manipulacin o de datos (usualmente SQL). Proteccin de los datos: o respecto otros usuarios. en acceso y actualizacin concurrente. o

Otros componentes software:


Utilidades (manipulacin cheros, informacin de estado, etc.). o o Herramientas para desarrollar aplicaciones. 15

USUARIOS
Tres tipos diferentes de usuarios: 1. Usuario nal
Interacta con el sistema mediante terminales on line. u Accede a la BD mediante aplicaciones e interf cies orientadas por mens hechos por los programadores de apliu caciones. Interf cies orientadas por mens: u o Facilitan la interaccin con el usuario. No contemplan todas las amplias posibilidades del lenguaje de consulta.

2. Programador de aplicaciones
Disea e implementa aplicaciones en lenguajes de pron gramacin (C, PASCAL, COBOL, PL/I, etc.) para los o usuarios nales. Aplicaciones realizan transacciones a la Base de Datos mediante cdigo SQL dentro de los cheros fuente de la o aplicacin C, PASCAL, COBOL, PL/I, etc. o

3. Administrador de Base de Datos (Data Base Administrator - DBA)


Encargado del mantenimiento de la informacin y la eso tructura de la Base de Datos. u ticas de servicios y de Congura el SGBD segn las pol acceso de datos que se decidan. 16

BASE DE DATOS
Componente ms importante del Sistema de Base de a Datos. Importante su correcta estructuracin y el mantenimiento o de su contenido. Aspectos a tener en cuenta: 1. Caracter sticas de los datos 2. Tipos de datos 3. Entidades e interrelaciones (diseo Modelo Entin dad/Relacin) o 4. Tablas y referencias (implementacin Modelo Relao cional)

17

1. Caracter sticas de los datos


Dos caracter sticas importantes de los datos:
INTEGRADAS: La Base de Datos (BD) vista como la unicacin o de diferentes datos, eliminando posibles redundancias. Ejemplo: Tablas Empleats, Inscripci o

No es necesario poner el campo Departamento en la relacin o Inscripcin o COMPARTIDAS: Diferentes usuarios pueden acceder a los mismos datos y utilizarlos con nalidades diferentes (posiblemente con acceso concurrente). Cada usuario ver los datos y las interpretar de forma difea a rente. Ejemplo: Tabla Empleats

Campo Departament en la relacin Empleats utilizado de forma o diferente por el departamento de personal (nmina, categor o a) o de educacin (edad, formacin del empleado). o o 18

2. Tipos de datos
Dos tipos importantes: Datos Persistentes: Datos contenidos a la BD. Datos Transitorios: Datos que se interrelacionan con la BD pero que no pertenecen a ella. Dos tipos:
Datos de Entrada: Informacin que entra por primera vez o en el Sistema. Puede llegar a formar parte de la BD (insercin, actualizacin de informacin). o o o Informacin que se quiere insertar a la BD. o Informacin que se da para hacer una consulta. o Datos de Salida: Mensajes y resultados que provienen del Sistema. Informacin que proviene de los datos persistentes del o Sistema.

Segn la clasicacin anterior, u o Base de Datos: Conjunto de datos persistentes que representan la realidad de una empresa o organizacin o que se quiere modelar.

19

3. Entidades e interrelaciones
Muy importantes para realizar el diseo de una Base de n Datos. Entidades: Cualquier objeto distinguible que se ha de representar en la Base de Datos. Interrelaciones: Vinculan diferentes entidades (usualmente dosinterrelacin binaria) en ambos sentio dos. Asocia un valor de una entidad con un valor de la otra entidad (interrelacin binaria). o Entidades e interrelaciones llevan asociadas propiedades, datos asociados.

Ejemplo: Compa fabricante de maquinaria de donde na se guarda informacin sobre las siguientes entidades: o
Proyectos (mquinas que se construyen) a Piezas de los proyectos Proveedores de las piezas Empleados Departamentos Almacenes Lugares 20

Cierto proveedor suministra ciertes piezas Cierta pieza es suministrada por ciertos proveedores

Interrelacin permite resolver cuestiones del tipo: o


Dado un proveedor Dada una pieza Encontrar las piezas correspondientes Encontrar los proveedores correspondientes

Tipos de interrelaciones:
(a) Interrelacin con la misma entidad o (b) Ms de una interrelacin entre 2 entidades a o (c) Interrelacin ternaria o

21

(a) Interrelacin con la misma entidad o


Pueden existir interrelaciones binaries con la misma entidad. Organizacin jerrquica de datos. o a Una pieza puede estar compuesta de otras piezas. Ejemplo: Frontisa formada por un bis y una tapa.

(b) Ms de una interrelacin entre 2 entia o dades


Cada interrelacin que relaciona dos entidades tiene un o signicado diferente.

22

(c) Interrelacin ternaria o


Interrelacin entre tres entidades. o Ejemplo: (proveedor, piezas, proyectos) Ciertos proveedores suministran ciertas piezas a ciertos proyectos NO ES EQUIVALENTE A:
PROVEEDORES suministran PIEZAS Se utilizan PIEZAS en PROYECTOS PROYECTOS reciben subministros de PROVEEDORES

Interrelaciones anteriores son BINARIAS.

23

Ejemplo: Interrelacin o PEPE suministra LLAVES INGLESAS en el proyecto EUREKA suministra ms informacin (menos incertidumbre) que a o las interrelaciones:
PEPE sumistra LLAVES INGLESAS Se utilizan LLAVES INGLESAS en el proyecto EUREKA PEPE es proveedor del proyecto EUREKA a algun proyecto Z para algn proveedor SX u para alguna pieza P Y

De las interrelaciones anteriores no podemos inferir que


Z = EUREKA SX = PEPE P Y = LLAVES INGLESAS

Inferencia falsa: TRAMPA DE CONEXION

24

Propiedades
Campos de informacin asociados a entidades o a intero relaciones. A ENTIDADES:

A INTERRELACIONES: Pieza P4 se encuentra en el almacen M8 Propiedad asociada Cantidad de piezas almacenadas


25

4. Tablas y referencias
Transformar las entidades e interrelaciones en tablas y referencias para convertir la estructura de datos al modelo relacional, modelo implementado en la mayor de SGDB actuales como ACCESS, a ORACLE, INFORMIX.

Aplicar consultas SQL sobre la estructura relacional:


1. Nmero de las piezas que suministra el proveedor S1 por el u proyecto Eureka. 2. Nmero de los proectos que dirige el empleado Pepe Pinto, u en los que los suministradores son de Sabadell. 3. Nmero de piezas P5 que se encuentran en los almacenes de u la Seu de Urgell. 4. Nmero de los empleados del departamento de diseo que u n participan en el proyecto Eureka. 26

Evolucin histrica o o
Evolucin de las Bases de Datos ha estado un intento de o organizar la informacin en computadores de la forma o ms eciente posible. a Cinco etapas histricas: o 1. Funciones de acceso a cheros en cdigo mquina o a (60s) 2. Independencia chero lgico-chero f o sico (70s) 3. Primeros sistemas de Bases de Datos (80s) 4. Independncia lgica y f e o sica de las datos (90s) 5. Internet y sistemas distribuidos (actualidad)

27

1. Funciones de acceso a cheros en cdigo o mquina (60s) a

Organizacin de cheros secuencial (cinta magntica). o e Procesamiento batch (ujo de ejecucin decidido antes de la o compilacin del programa). o Software: Operaciones E/S denidas en direcciones mquina a ($F4ED$). Lenguajes: mquina y ensamblador. a Programador ha de especicar la estructura f sica de los datos (bytes). Cambio de los datos Cambio del cdigo ensamblador. o o Estructura de datos pensada para una sola aplicacin. Dicultad para compartir datos a otras aplicaciones REDUNDANCIA 28

2. Independencia chero lgico-chero f o sico (70s)

Procesamiento en interactivo (ujo de ejecucin del programa o decidido en tiempo de ejecucin). o Software: Sistema de cheros, funciones de acceso a chero (open, close, read, write) y lenguajes de programacin (Paso cal, Fortran, Cobol, C). Separacin entre la organizacin f o o sica (chero f sico) y lgica o (chero lgico). o Estructuras de cheros: Secuencial Indexado (acceso directo) o Datos estructurados por una sola aplicacin REDUNDANCIA Formato registro lgico = formato registro f o sico. 29

3. Primeros sistemas de Bases de Datos (80s)

Formato registro lgico = formato registro f o sico. o o Sistema orientado a comparticin de datos Disminucin de redundancia. Necesidad de controles de integridad y seguridad debido al accesos compartido entre diferentes usuarios. Almacenamiento f sico independiente de programas de aplicacin. o Construccin de nuevos cheros lgicos sobre los mismos o o datos f sicos. Necesidad de un conocimiento profundo de la estructura f sica por parte de los programadores de aplicaciones. o Modicacin de la estructura fsica de los datos afecta a la aplicacin, pues la obliga a recompilar el programa para camo biar los links a la estructura f sica. 30

4. Independncia lgica y f e o sica de los datos (90s)

Independencia entre los datos lgicos y los datos f o sicos. Modicacin de la estructura de f o sica de los datos no afecta a las aplicaciones. Aparece la gura del administrador de la Base de Datos. Necesidad de controles de integridad y seguridad debido al accso compartido entre diferentes usuarios. e o Faciliades en la migracin de los datos a diferentes sistemas y formatos. Versatilidad: Posibilidad de realizar preguntas a la Base de Datos inicialmente no previstas. 31

5. Internet y sistemas distribuidos (2000s)

Distribuir los datos en lugares alejados geogrcamente (sisa temas distribuidos). Utilizacin de Internet como protocolo de comunicacin entre o o Bases de Datos distribuidas. Aplicaciones con php, HTML, cgi, etc. junto con un Sistema de Bases de Datos para hacer las consultas (MySQL, Oracle, etc.) Aplicaciones de compra y pago por Internet, mvil, PDA, etc. o Problema de la condencialidad de los datos por la red. Miner a de datos (Data Mining). 32

Ventajas de un Sistema de Bases de Datos


La centralizacin de las datos en un Sistema de BD le o conere ciertas ventajas respecto los sistemas de cheros tradicionales: (a) Reducir la redundancia de datos (b) Garantizar la integridad de los datos (c) Estandarizacin de los datos o (d) Controles de Seguridad (e) Maximizar el rendimiento del sistema (f) Independencia de los datos

33

(a) Reducir la redundancia de datos


Redundncia: Aparece sobre todo en sistemas de ora ganizacin tradicionales donde cada aplicacin tiene sus o o propios cheros. Presenta dos problemas: Ocupacin innecesaria de disco o Posible fuente de inconsistencia en el caso de no propagar las modicaciones NO OBSTANTE, a veces interesa tener informacin duo plicada en diferentes lugares para mantener el acceso en caso de aver del sistema f a sico. Reducir redundancia elimina INCONSISTENCIA

34

Inconsistencia
Cuando se obtienen diferentes valores de la misma informacin. o Consecuencia de mantener redundancia no controlada. Ejemplo: Dos tablas que tienen como propiedad el nombre de cliente: Clientes y Facturas. Si se modica la propiedad en una tabla y en la otra no INCONSISTENCIA
Si NO HAY REDUNDANCIA NO HABRA INCONSISTENCIA Si la redundancia es controlada Consistencia BD desde (mediante DBMS) punto de vista usuario PROPAGACION DE ACTUALIZACIONES (insercin, modicacin, eliminacin) o o o

Aplicar automticamente modicaciones a otras tablas a a partir de la modicacin en una tabla. o

EN REALIDAD, existen pocos sistemas con redundancia controlada y propagacin de actualizaciones, por el o retardo en el tiempo de respuesta de las transacciones.
35

(b) Garantizar la integridad de los datos


INTEGRIDAD: Asegurar que la informacin en la Base o de Datos sea correcta. FALTA DE INTEGRIDAD: Puede venir dada por:
1. Inconsistencia 2. Valores incoherentes: Jornada de trabajo diaria de 400 horas Fecha de 30 de febrero Edad de 150 aos n

Control centralizado de los datos:


A cada atributo de la Base de Datos se le asocia el conjunto de valores permitidos (dominio). DBMS vericar que en las transacciones de insercin y aca o tualizacin los valores que se quieren poner en el atributo se o ajustan al dominio denido.

INTEGRIDAD:
Importante en sistemas multiusuario. Generacin de informacin inconsistente o errnea puede suo o o poner un peligro importante para usuarios que consulten informacin, pues puede dar lugar a toma de decisiones equivo ocadas.

EN GENERAL, sistemas de BD son en la mayor dea cientes en controles de integridad.


36

(c) Estandarizacin de los datos o


Como el DBA tiene control centralizado de la BD, puede garantizar el cumplimiento de las NORMAS PARA LOS DATOS:
Normas de la empresa Normas del departamento Normas de la industria (produccin) o Normas de documentacin o

NORMALIZACION DE LOS DATOS: Conveniente para: Intercambio de informacin o Migracin de datos entre sistemas o Compartir y comprender la informacin (documeno tacin de los datos) o

37

(d) Controles de Seguridad


DBA (Data Base Administrator): Tiene jurisdiccin y o control sobre los datos. Puede garantizar: Asegurar y controlar el acceso a la Base de Datos por los canales apropiados (via SGBD-DBMS). Denir controles de seguridad para cuando se quiera acceder a informacin delicada. Establecer cono troles para cada tipo de acceso:
Consulta o Modicacin Actualizacin o Borrado

Controles para el acceso concurrente a los datos.

La centralizacin de los datos obliga a establecer cono troles de seguridad.

38

(e) Maximizar el rendimiento del sistema


Centralizacin de los datos o Requerimientos generales del sistema Premisas conocidas por el DBA

DBA puede estructurar los datos de forma que las transacciones ms importantes y ms utilizadas se realicen ms a a a rapidamente que otras transacciones menos usuales. Objetivo: Aumentar el rendimiento global del sistema Medidas de rendimiento: Nmero de transacciones por unidad de tiempo u Tiempo de respuesta de una transaccin t o pica Grado de ocupacin de los dispositivos (disco, reo des, etc.)

39

(f) Independencia de los Datos


Objectivo principal de las Bases de Datos. Ventaja de las ms importantes de las BD. a Independncia de los datos: Caracter e stica de immunidad de las aplicaciones ante cambios en la estructura de almacenamiento y tcnicas de acceso. e CASO OPUESTO: Aplicaciones dependientes de los datos: Aplicaciones orientadas a lenguajes de tercera generacin (C, Pascal, Cobol, etc.). o Organizacin de los datos (cheros) dependiente o de los requerimentos de la aplicacin o Conocimiento de la organizacin de los datos y las o tcnicas de accso forman parte integral de la lgica e e o y el cdigo de la aplicacin. o o formato registro Lgico = formato registro F o sico Aplicacin en la cual es imposible alterar la organio zacin f o sica de los datos sin afectar la aplicacin o (editar y compilar programa).
40

En sistemas de Bases de Datos no es conveniente tener aplicaciones dependientes de los datos por dos razones importantes: 1. Cada aplicacin requiere una vista diferente de los o mismos datos
Ejemplo: Saldo cliente (dato) Vista por una aplicacin en PESETAS o Vista por otra aplicacin en EUROS o Dato (saldo) guardada en un UNICO FORMATO. DBMS controla la conversin quan haga falta. o

2. DBA ha de tener libertad para modicar la estructura de almacenamiento y las tcnicas de acceso e para mejorar el rendimiento, sin haber de modicar las aplicaciones ya existentes
Las siguientes modicaciones no han de comportar cambios en las aplicaciones Aadir nuevos atributos o campos de informacin a la n o base de datos Nuevos dispositivos de almacenamiento Cambiar la estructura de la Base de datos

41

ASPECTOS DE LA ESTRUCTURA DE LA BASE DE DATOS MODIFICABLES SIN ALTERAR LAS APLICACIONES Set aspectes: 1. Representacin de datos alfanumricos o e
Formatos ASCII, EBCDIC. Hay que implementar algoritmos de conversin que utilizar el DBMS. o a

2. Representacin de datos numricos o e


Forma: Aritmtica (decimal) o carcteres e a Base: Binaria, decimal Escala: Punto jo, punto otante Modo: Real, complejo Precisin (nmero de d o u gitos)

3. Unidades para los datos numricos e


Pulgadas, cm, m. Hay que implementar algoritmos de conversin que utilizar el DBMS. o a 42

4. Codicacin de los datos o


Asignacin de cdigos a la informacin. Aumenta la capacidad de o o o compresin de almacenamento. o Ejemplo: Tabla de personal universitario Camp: Situacin, CHAR(10) o Valores: "Estudiante" "Profesor " "PAS "

CON CODIFICACION: Campo: Situaci, CHAR(1) o Valores 1 2 3 Signicado Estudiante Profesor PAS

43

5. Materializacin de los Datos o


Forma de obtener las ocurrencias (valores) de los datos. Dos formas: 1. DIRECTO: No hay clculo aadido para obtener los datos a n acceso a un atributo lgico acceso a un campo f o sico 2. INDIRECTO: Requiere clculo adicional para obtener infora macin. Estos datos no pueden ser modicados directamente o por el usuario. acceso a un atributo lgico acceso a diversos campos o f sicos Ejemplo: Campos Cantidad total de piezas, Promedio de pesos de las piezas requieren ser calculados en el momento en el cual se consultan.

6. Estructura de Ficheros
Fichero f sico puede ser: sico Contenido en UNA o VARIAS unitades de disco f ORDENADO por cadenas de apuntadores o por diferentes ndices, o NO ORDENADO Tipos de acceso: SECUENCIAL, INDEXADO, HASHING

44

7. Estructuras de los registros almacenados


Dos estrategias: COMBINAR registros f sicos

Registro lgico subconjunto de campos del registro o f sico SEPARAR registros f sicos

Divisin permite almacenar informacin menos accesible o o o menos necesaria en dispositivos (discos magnticos) ms e a lentos. 1 Registro lgico n registros f o sicos 45

Inconvenientes de un Sistema de Base de Datos


La importancia de los datos para gestin o toma de o decisiones, junto con las capacidades del sistema de BD presuponen que se cone en estos sistemas para obtener la informacin. o NO OBSTANTE, se han de tener en cuenta ciertos inconvenientes que pueden presentar estos sistemas:
Pueden surgir problemas de integridad y seguridad si no existe un buen control de la BD. Es necesario hardware adicional par garantizar acceso concurrente rapidez en el acceso de los datos lo que supone un alto coste econmico si se quiere una cierta o eciencia. Acceso concurrente puede dar lugar a DEADLOCK, lo que provoca una bajada de rendimiento muy signicativa. Errores en el sistema de BD (datos, aplicaciones, DBMS) pueden dar resultados errneos, pudiendo provocar la adopcin o o de decisiones importantes errneas, con las correspondientes o prdidas. e SGBD-DBMS: Programa muy complejo, importante y determinante para garantizar la consistencia y validez de los datos. Requiere ser muy testeado. 46

Potrebbero piacerti anche