tema1-sp

46
 20350 BASES DE DATOS 1 Enric Marı i G`odia Escola d’Enginyeria Universitat Aut` onoma de Barcelona Setiembre 2011 Versi´ on corregida por Mireia Bellot 1

Transcript of tema1-sp

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 1/46

 

20350

BASES DE DATOS 1

Enric Martı i Godia

Escola d’Enginyeria

Universitat Autonoma de Barcelona

Setiembre 2011

Version corregida por Mireia Bellot

1

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 2/46

 

TEMARIO

1. INTRODUCCION. CONCEPTOS BASICOS• Introduccion y definiciones

• Componentes de un sistema de Bases de Datos

• Evolucion historica

• 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

• Diseno de una Base de Datos

• Modelo Entidad-Relacion• Modelo E-R extendido

• Criterios de diseno de un esquema E-R

• Diseno de un esquema E-R

4. MODELO DE BASES DE DATOS RELACIONAL

• Introduccion

• Estructura de datos

• Reglas de integridad

• Manipulacion de datos

– Algebra Relacional

2

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 3/46

 

TEMARIO (ii)

5. DISENO DE UNA BASE DE DATOS

• Fases de diseno de una BD

• Captacion y analisis de requerimientos

• Diseno conceptual de la BD

• Diseno logico

• Diseno fısico

6. NORMALIZACION

• Teorıa de la normalizacion

• Dependencia funcional

• Formas normales de Codd (1NF, 2NF, 3NF)

• Forma normal de Boyce-Codd (FNBC)

• Proceso de normalizacion

7. NIVEL INTERNO

• Acceso a la Base de Datos.

• Estructuras de almacenamiento

– Indexacion

– Hashing

• Tecnicas de compresion

– Compresion diferencial y jerarquica

– Codificacion de Huffman

3

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 4/46

 

Bibliografia

• A. Silberschatz, H.F. Korth, S. Sudarshan, Funda-

mentos de Bases de Datos, 3a edicion, McGraw-

Hill , 2006.

• T. M. Connolly, C. E. Begg, Sistemas de Bases de

Datos, 4a edicion, Pearson-Addison-Wesley , 2005.

• P.Rob, C.Coronel, Sistemas de Bases de Datos.Diseno, implementacion y administracion, Thom

son, 2004.

• D.M. Kroenke, Procesamiento de Bases de Datos

8a edicion, Pearson-Prentice Hall , 2003.

• C.J. Date, Introduccion a los Sistemas de Bases

de Datos, 7a edicio, Prentice Hall , 2001.

• A. de Miguel, P. Martınez, E. Castro, et al., Diseno

de Bases de Datos. Problemas resueltos, Ra-

Ma, 2001.

• G.W. Hansen, J.V. Hansen, Diseno y administra-

cion de Bases de datos, 2a edicion, Prentice Hall ,

1997.

• M. Marques, J.I. Aliaga, S. Garciıa, G. Quintana,

SQL y desarrollo de aplicaciones en ORACLE

8, Col. ”Treball d’Informatica i Tecnologia”, 9,

Universitat Jaume I , 2001.

4

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 5/46

 

TEMA 1

INTRODUCCION.

CONCEPTOS BASICOS

1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 . D e fi n i c i o n e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3. Componentes de un Sistema de Base de Datos . 9

4. Evolucion historica . . . . . . . . . . . . . . . . . . . . . . . . . . 23

5. Ventajas de un Sistema de Bases de Datos . . . . 29

6. Inconvenientes de un Sistema de BD . . . . . . . . . 42

5

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 6/46

 

Introduccion

Sistema de Base de Datos: Sistema de ar-

chivo por computador.

• Se almacena un conjunto de archivos de datos.

• Operaciones que un usuario puede realizar sobre losarchivos:

– 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

6

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 7/46

 

Ejemplo: Base de Datos con un unico archivo: CAVA

ENT VINO PRODUCTOR ANO BOT LISTO

2 Chardonnay Buena Vista 98 1 013 Chardonnay Louis Martini 99 5 00

6 Chardonnay Chappellet 97 4 0111 Jo Riesling Jekel 99 10 0212 Jo Riesling Buena Vista 97 1 0216 Jo Riesling Sattus 97 1 9921 Fume Blancg Ch. St. Jean 98 4 0122 Jo Riesling Rob. Mondavi 97 2 00

Observaciones:

• Archivos → TABLAS

• Filas de la tabla → TUPLAS, REGISTROS

• Columnas de la tabla → ATRIBUTOS, CAMPOS

• Lenguaje de interaccion con los datos: SQL (Structured Query Language )

7

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 8/46

 

Instrucciones de manipulacion del lenguaje:

CONSULTA:

SELECT VINO,ENT,PRODUCTOR --> atributos,campos

FROM CAVA --> tabla

WHERE LISTO=91 --> condicion

Resultado:

VINO ENT PRODUCTOR

Chardonnay 2 Buena VistaChardonnay 6 ChappelletFume Blancg 21 Ch. St. Jean

INSERCION:

INSERTINTO CAVAVALUES (53,’Pinot Noir’,’Saintsbury’,87,1,93)

Resultado:

ENT VINO PRODUCTOR ANO BOT LISTO

2 Chardonnay Buena Vista 98 1 01

3 Chardonnay Louis Martini 99 5 006 Chardonnay Chappellet 97 4 0111 Jo Riesling Jekel 99 10 0212 Jo Riesling Buena Vista 97 1 0216 Jo Riesling Sattus 97 1 9921 Fume Blancg Ch. St. Jean 98 4 0122 Jo Riesling Rob. Mondavi 97 2 0053 Pinot Noir Sainstbury 87 1 93

8

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 9/46

 

ACTUALIZACION:

UPDATE CAVA

SET BOT=4WHERE ENT=3

Resultado:

ENT VI PRODUCTOR ANY BOT LISTO

2 Chardonnay Buena Vista 98 1 013 Chardonnay Louis Martini 99 4 006 Chardonnay Chappellet 97 4 01

11 Jo Riesling Jekel 99 10 0212 Jo Riesling Buena Vista 97 1 0216 Jo Riesling Sattus 97 1 9921 Fume Blancg Ch. St. Jean 98 4 0122 Jo Riesling Rob. Mondavi 97 2 00

BORRADO:

DELETE

FROM CAVAWHERE ENT=2

Resultado:

ENT VINO PRODUCTOR ANY BOT LISTO

3 Chardonnay Louis Martini 99 5 006 Chardonnay Chappellet 97 4 0111 Jo Riesling Jekel 99 10 0212 Jo Riesling Buena Vista 97 1 0216 Jo Riesling Sattus 97 1 9921 Fume Blancg Ch. St. Jean 98 4 0122 Jo Riesling Rob. Mondavi 97 2 00

9

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 10/46

 

Ejemplo: Base de Datos con diversos archivos: LIGABALONCESTO

Campos Tipo Longitud Significado

Num Eq Numerico 3 Numero de Equipo.Jornada Numerico 2 Jornada de la liga.Camp Numerico 3 Numero de Equipo propietario del

Campo donde se juega el partido.

Nom Eq Caracter 16 Nombre del Equipo.Num Jug Numerico 3 Numero del Jugador.Cap Eq Numerico 3 Numero del Jugador capitan.Nom Jug Caracter 16 Nombre del JugadorTel Jug Caracter 7 Telefono del Jugador.Adr Jug Caracter 24 Direccion del Jugador.Falt Jug Numerico 2 Numero de faltas del Jugador.Punt Jug Numerico 3 Numero de Puntos del Jugador.Temp Jug Numerico 3 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

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 11/46

 

Tablas Liga de Baloncesto:

PREGUNTAS:

• Obtener el NOMBRE del capitan del equipo AUTONOMA.

• Cuantos partidos ha jugado el equipo AUTONOMA en sucampo?.

• Cuantos minutos ha jugado el capitan del equipo CENTRALdurante toda la liga?.

• Cual ha sido el resultado del partido AUTONOMA-POLITEC-NICA, jugado en el campo del equipo AUTONOMA?.

11

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 12/46

 

Definiciones

Sistema de Base de Datos:

• Sistema informatico disenado para almacenar, manipulardatos y para permitir recuperarlos cuando sea necesario yde la manera que sea necesaria. (Date )

• Coleccion de datos interrelacionados, almacenados conjun-

tamente sin redundancias perjudiciales o innecesarias, la fi-nalidad de las cuales es la de ser utilizadas por una o masaplicaciones de la mejor manera posible.

Los datos se guardan de forma independiente de los progra-mas que las utilizan.

Se utilizan metodos bien determinados para incluir nuevosdatos y para modificar o extraer los que ya habian. (Martin)

12

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 13/46

 

Componentes de un

Sistema de Base de Datos

Sistema de Base de Datos. Formado por 4 compo-nentes:

• Hardware

• Software

• Usuarios

• Base de Datos

13

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 14/46

 

HARDWARE

Componentes:

• Almacenamiento secundario (discos magneticos, op-ticos, dispositivos de E/S, redes).

↓IMPORTANTE LA CAPACIDAD Y EL TIEMPO DE ACCESO

• Memoria RAM para almacenar datos y codigo quepermiten ejecutar las transacciones SQL.

↓IMPORTANTE LA CAPACIDAD Y EL TIEMPOS DE ACCESO

• CPU. La velocidad y capacidad de la CPU es pocodeterminante par realizar transacciones SQL, usual-mente de poco calculo (calculos aritmeticos).

14

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 15/46

 

SOFTWARE

Sistema Gestor de Base de Datos (SGBD) (DataBase Management System - DBMS )

Situado entre la BD fısica y los usuarios.

Componente software mas importante.

Objetivos:

• Gestionar las peticiones de los usuarios

– Insertar archivos y datos nuevos

– Consultar datos

– Actualizar datos

– Borrar datos

– Eliminar archivos

• Presentar una vision de mas alto nivel de la Base de Datos,vision mas independente del Hardware y del Sistema Opera-tivo, mediante tablas, atributos y un lenguaje de manipulacionde datos (usualmente SQL).

• Proteccion de los datos:

– respecto otros usuarios.

– en acceso y actualizacion concurrente.

Otros componentes software:

• Utilidades (manipulacion ficheros, informacion de estado, etc.).

• Herramientas para desarrollar aplicaciones.

15

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 16/46

 

USUARIOS

Tres tipos diferentes de usuarios:

1. Usuario final

• Interactua con el sistema mediante terminales on line .

• Accede a la BD mediante aplicaciones e interfıcies orien-tadas por menus hechos por los programadores de apli-caciones.

• Interfıcies orientadas por menus:

– Facilitan la interaccion con el usuario.

– No contemplan todas las amplias posibilidades del len-guaje de consulta.

2. Programador de aplicaciones

• Disena e implementa aplicaciones en lenguajes de pro-gramacion (C, PASCAL, COBOL, PL/I, etc.) para losusuarios finales.

• Aplicaciones realizan transacciones a la Base de Datosmediante codigo SQL dentro de los ficheros fuente de laaplicacion C, PASCAL, COBOL, PL/I, etc.

3. Administrador de Base de Datos (Data Base Ad-

ministrator - DBA)• Encargado del mantenimiento de la informacion y la es-

tructura de la Base de Datos.

• Configura el SGBD segun las polıticas de servicios y deacceso de datos que se decidan.

16

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 17/46

 

BASE DE DATOS

Componente mas importante del Sistema de Base deDatos.

Importante su correcta estructuracion y el mantenimientode su contenido.

Aspectos a tener en cuenta:

1. Caracterısticas de los datos

2. Tipos de datos

3. Entidades e interrelaciones (diseno – Modelo Enti-dad/Relaci´ on)

4. Tablas y referencias (implementacion – Modelo Rela-cional )

17

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 18/46

 

1. Caracterısticas de los datos

Dos caracterısticas importantes de los datos:

INTEGRADAS: La Base de Datos (BD) vista como la unificacionde diferentes datos, eliminando posibles redundancias.

Ejemplo: Tablas Empleats, Inscripcio

No es necesario poner el campo Departamento en la relacionInscripcion

COMPARTIDAS: Diferentes usuarios pueden acceder a los mis-

mos datos y utilizarlos con finalidades diferentes (posible-mente con acceso concurrente).

Cada usuario vera los datos y las interpretara de forma dife-rente.

Ejemplo: Tabla Empleats

Campo Departament en la relacion Empleats utilizado de formadiferente por el departamento de personal (nomina, categorıa)o de educacion (edad, formacion del empleado).

18

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 19/46

 

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: Informacion que entra por primera vezen el Sistema. Puede llegar a formar parte de la BD(insercion, actualizacion de informacion).

Informacion que se quiere insertar a la BD.

Informacion que se da para hacer una consulta.

Datos de Salida: Mensajes y resultados que provienen delSistema.

Informacion que proviene de los datos persistentes delSistema.

Segun la clasificacion anterior,

Base de Datos: Conjunto de datos persistentes querepresentan la realidad de una empresa o organizacionque se quiere modelar.

19

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 20/46

 

3. Entidades e interrelaciones

Muy importantes para realizar el diseno de una Base deDatos.

Entidades: Cualquier objeto distinguible que se ha derepresentar en la Base de Datos.

Interrelaciones: Vinculan diferentes entidades (usual-mente dos–interrelaci´ on binaria) en ambos senti-dos.

Asocia un valor de una entidad con un valor de laotra entidad (interrelacion binaria).

Entidades e interrelaciones llevan asociadas propiedades,datos asociados.

Ejemplo: Companıa fabricante de maquinaria de dondese guarda informacion sobre las siguientes entidades :

• Proyectos (maquinas que se construyen)

• Piezas de los proyectos

• Proveedores de las piezas

• Empleados

• Departamentos

• Almacenes

• Lugares

20

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 21/46

 

* Cierto proveedor suministra ciertes piezasCierta pieza es suministrada por ciertos proveedores

Interrelacion permite resolver cuestiones del tipo:

Dado un proveedor → Encontrar las piezas correspondientesDada una pieza → Encontrar los proveedores correspondient

Tipos de interrelaciones:

(a) Interrelacion con la misma entidad

(b) Mas de una interrelacion entre 2 entidades

(c) Interrelacion ternaria

21

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 22/46

 

(a) Interrelacion con la misma entidad

Pueden existir interrelaciones binaries con la misma en-tidad. Organizacion jerarquica de datos.

Una pieza puede estar compuesta de otras piezas.

Ejemplo: Frontisa formada por un bis y una tapa.

(b) Mas de una interrelacion entre 2 enti-dades

Cada interrelacion que relaciona dos entidades tiene un

significado diferente.

22

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 23/46

 

(c) Interrelacion ternaria

Interrelacion entre tres entidades.

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

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 24/46

 

Ejemplo: Interrelacion

PEPE suministra LLAVES INGLESAS en el proyecto EUREKA

suministra mas informacion (menos incertidumbre) quelas interrelaciones:

PEPE sumistra → a algun proyecto Z 

LLAVES INGLESAS 

Se utilizan LLAVES INGLESAS  → para algun proveedor SX

en el proyecto EUREKA

PEPE es proveedor del proyecto  → para alguna pieza PY  

EUREKA

De las interrelaciones anteriores no podemos inferir que

• Z  = EUREKA

• SX = PEPE 

• PY   = LLAVES INGLESAS 

Inferencia falsa: TRAMPA DE CONEXION

24

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 25/46

 

Propiedades

Campos de informacion asociados a entidades o a inter-relaciones.

A ENTIDADES:

A INTERRELACIONES:

Pieza P4 se encuentra en el almacen M8 

↓ Propiedad asociada

Cantidad de piezas almacenadas

25

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 26/46

 

4. Tablas y referenciasTransformar las entidades e interrelaciones en tablas y referencias

para convertir la estructura de datos al modelo relacional, modeloimplementado en la mayorıa de SGDB actuales como ACCESS,

ORACLE, INFORMIX.

Aplicar consultas SQL sobre la estructura relacional:

1. Numero de las piezas que suministra el proveedor S1 por elproyecto Eureka.

2. Numero de los proectos que dirige el empleado Pepe Pinto,en los que los suministradores son de Sabadell.

3. Numero de piezas P5 que se encuentran en los almacenes dela Seu de Urgell.

4. Numero de los empleados del departamento de diseno queparticipan en el proyecto Eureka.

26

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 27/46

 

Evolucion historica

Evolucion de las Bases de Datos ha estado un intento deorganizar la informacion en computadores de la forma

mas eficiente posible.

Cinco etapas historicas:

1. Funciones de acceso a ficheros en codigo maquina(60’s)

2. Independencia fichero logico-fichero fısico (70’s)

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

4. Independencia logica y fısica de las datos (90’s)

5. Internet y sistemas distribuidos (actualidad)

27

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 28/46

 

1. Funciones de acceso a ficheros en codigo

maquina (60’s)

• Organizacion de ficheros secuencial (cinta magnetica).

• Procesamiento batch (flujo de ejecucion decidido antes de lacompilacion del programa).

• Software: Operaciones E/S definidas en direcciones maquina($F4ED$).

• Lenguajes: maquina y ensamblador.

• Programador ha de especificar la estructura fısica de los datos(bytes).

• Cambio de los datos → Cambio del codigo ensamblador.

• Estructura de datos pensada para una sola aplicacion.Dificultad para compartir datos a otras aplicaciones

⇓REDUNDANCIA

28

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 29/46

 

2. Independencia fichero logico-fichero fısico

(70’s)

• Procesamiento en interactivo (flujo de ejecucion del programadecidido en tiempo de ejecucion).

• Software: Sistema de ficheros, funciones de acceso a fichero(open, close, read, write ) y lenguajes de programacion (Pas-cal, Fortran, Cobol, C).

• Separacion entre la organizacion fısica (fichero fısico) y logica(fichero logico).

• Estructuras de ficheros:

– Secuencial

– Indexado (acceso directo)

• Datos estructurados por una sola aplicacion ⇒ REDUNDAN-CIA

• Formato registro logico = formato registro fısico.

29

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 30/46

 

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

• Formato registro logico = formato registro fısico.

• Sistema orientado a comparticion de datos ⇒ Disminucion deredundancia.

• Necesidad de controles de integridad y seguridad debido alaccesos compartido entre diferentes usuarios.

• Almacenamiento fısico independiente de programas de apli-cacion.

• Construccion de nuevos ficheros logicos sobre los mismos

datos fısicos. Necesidad de un conocimiento profundo de laestructura fısica por parte de los programadores de aplica-ciones.

• Modificacion de la estructura fısica de los datos afecta a laaplicacion, pues la obliga a recompilar el programa para cam-biar los links a la estructura fısica.

30

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 31/46

 

4. Independencia logica y fısica de losdatos (90’s)

• Independencia entre los datos logicos y los datos fısicos.

• Modificacion de la estructura de fısica de los datos no afectaa las aplicaciones.

• Aparece la figura del administrador de la Base de Datos.

• Necesidad de controles de integridad y seguridad debido al

acceso compartido entre diferentes usuarios.

• Faciliades en la migracion de los datos a diferentes sistemasy formatos.

• Versatilidad: Posibilidad de realizar preguntas a la Base deDatos inicialmente no previstas.

31

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 32/46

 

5. Internet y sistemas distribuidos (2000’s)

• Distribuir los datos en lugares alejados geograficamente (sis-temas distribuidos).

• Utilizacion de Internet como protocolo de comunicacion entreBases de Datos distribuidas.

• Aplicaciones con php, HTML, cgi, etc. junto con un Sistemade Bases de Datos para hacer las consultas (MySQL, Oracle,

etc.)

• Aplicaciones de compra y pago por Internet, movil, PDA, etc.

• Problema de la confidencialidad de los datos por la red.

• Minerı a de datos (Data Mining).

32

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 33/46

 

Ventajas de un

Sistema de Bases de Datos

La centralizacion de las datos en un Sistema de BD leconfiere ciertas ventajas respecto los sistemas de ficherostradicionales:

(a) Reducir la redundancia de datos

(b) Garantizar la integridad de los datos

(c) Estandarizacion de los datos

(d) Controles de Seguridad

(e) Maximizar el rendimiento del sistema

(f) Independencia de los datos

33

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 34/46

 

(a) Reducir la redundancia de datos

Redundancia: Aparece sobre todo en sistemas de or-ganizacion tradicionales donde cada aplicacion tiene suspropios ficheros. Presenta dos problemas:

• Ocupacion innecesaria de disco

• Posible fuente de inconsistencia en el caso de nopropagar las modificaciones

NO OBSTANTE, a veces interesa tener informacion du-plicada en diferentes lugares para mantener el acceso encaso de averıa del sistema fısico.

Reducir redundancia ⇒ elimina INCONSISTENCIA

34

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 35/46

 

Inconsistencia

Cuando se obtienen diferentes valores de la misma in-formacion.

Consecuencia de mantener redundancia no controlada.

Ejemplo: Dos tablas que tienen como propiedad elnombre de cliente: Clientes y Facturas.

• Si se modifica la propiedad en una tabla y en la otrano

⇓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

(insercion, modificacion, eliminacion)

Aplicar automaticamente modificaciones a otras tablasa partir de la modificacion en una tabla.

EN REALIDAD, existen pocos sistemas con redundan-cia controlada y propagacion de actualizaciones, por elretardo en el tiempo de respuesta de las transacciones.

35

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 36/46

 

(b) Garantizar la integridad de los datos

INTEGRIDAD: Asegurar que la informacion en la Basede 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 anos

Control centralizado de los datos:

• A cada atributo de la Base de Datos se le asocia el conjuntode valores permitidos (dominio).

• DBMS verificara que en las transacciones de insercion y ac-tualizacion los valores que se quieren poner en el atributo seajustan al dominio definido.

INTEGRIDAD:

• Importante en sistemas multiusuario.

• Generacion de informacion inconsistente o erronea puede su-

poner un peligro importante para usuarios que consulten in-formacion, pues puede dar lugar a toma de decisiones equiv-ocadas.

EN GENERAL, sistemas de BD son en la mayorıa defi-cientes en controles de integridad.

36

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 37/46

 

(c) Estandarizacion de los datos

Como el DBA tiene control centralizado de la BD, puedegarantizar el cumplimiento de las NORMAS PARALOS DATOS:

• Normas de la empresa

• Normas del departamento

• Normas de la industria (produccion)

• Normas de documentacion

NORMALIZACION DE LOS DATOS: Convenientepara:

• Intercambio de informacion

• Migracion de datos entre sistemas

• Compartir y comprender la informacion (documen-tacion de los datos)

37

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 38/46

 

(d) Controles de Seguridad

DBA (Data Base Administrator ): Tiene jurisdiccion ycontrol sobre los datos. Puede garantizar:

• Asegurar y controlar el acceso a la Base de Datos

por los canales apropiados (via SGBD-DBMS).

• Definir controles de seguridad para cuando se quieraacceder a informacion delicada. Establecer con-troles para cada tipo de acceso:

– Consulta

– Modificacion

– Actualizacion

– Borrado

• Controles para el acceso concurrente a los datos.

La centralizacion de los datos obliga a establecer con-troles de seguridad.

38

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 39/46

 

(e) Maximizar el rendimiento del sistema

Centralizacion de los datos → Premisasconocidas

Requerimientos generales del sistema → por el DBA

DBA puede estructurar los datos de forma que las transac-ciones mas importantes y mas utilizadas se realicen masrapidamente que otras transacciones menos usuales.

⇓Objetivo: Aumentar el rendimiento global del sistema

Medidas de rendimiento:

• Numero de transacciones por unidad de tiempo

• Tiempo de respuesta de una transaccion tıpica

• Grado de ocupacion de los dispositivos (disco, re-des, etc.)

39

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 40/46

 

(f) Independencia de los Datos

Objectivo principal de las Bases de Datos.

Ventaja de las mas importantes de las BD.

Independencia de los datos: Caracterıstica de immu-nidad de las aplicaciones ante cambios en la estructurade almacenamiento y tecnicas de acceso.

CASO OPUESTO: Aplicaciones dependientes de losdatos:

• Aplicaciones orientadas a lenguajes de tercera ge-neracion (C, Pascal, Cobol, etc.).

• Organizacion de los datos (ficheros) dependientede los requerimentos de la aplicacion

Conocimiento de la organizacion de los datos y lastecnicas de acceso forman parte integral de la logicay el codigo de la aplicacion.

• formato registro Logico = formato registro Fısico

• Aplicacion en la cual es imposible alterar la organi-zacion fısica de los datos sin afectar la aplicacion(editar y compilar programa).

40

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 41/46

 

En sistemas de Bases de Datos no es conveniente tener

aplicaciones dependientes de los datos por dos razonesimportantes:

1. Cada aplicacion requiere una vista diferente de losmismos datos

Ejemplo: Saldo cliente (dato)

• Vista por una aplicacion en PESETAS

• Vista por otra aplicacion en EUROS

Dato (saldo) guardada en un UNICO FORMATO. DBMScontrola la conversion quan haga falta.

2. DBA ha de tener libertad para modificar la estruc-

tura de almacenamiento y las tecnicas de accesopara mejorar el rendimiento, sin haber de modi-ficar las aplicaciones ya existentes

Las siguientes modificaciones no han de comportar cambiosen las aplicaciones

• Anadir nuevos atributos o campos de informacion a labase de datos

• Nuevos dispositivos de almacenamiento

• Cambiar la estructura de la Base de datos

41

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 42/46

 

ASPECTOS DE LA ESTRUCTURA DE LA BASE DE DATOSMODIFICABLES SIN ALTERAR LAS APLICACIONES

Set aspectes:

1. Representacion de datos alfanumericos

• Formatos ASCII, EBCDIC.

Hay que implementar algoritmos de conversion que utilizara el DBMS.

2. Representacion de datos numericos

• Forma: Aritmetica (decimal) o caracteres

• Base: Binaria, decimal

• Escala: Punto fijo, punto flotante

• Modo: Real, complejo

• Precision (numero de dıgitos)

3. Unidades para los datos numericos

• Pulgadas, cm, m.

Hay que implementar algoritmos de conversion que utilizara el DBMS.

42

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 43/46

 

4. Codificacion de los datos

Asignacion de codigos a la informacion. Aumenta la capacidad decompresion de almacenamento.

Ejemplo: Tabla de personal universitario

• Camp: Situacion, CHAR(10)

• Valores:

"Estudiante""Profesor "

"PAS "

CON CODIFICACION:

• Campo: Situacio, CHAR(1)

Valores Significado

1 Estudiante2 Profesor

3 PAS

43

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 44/46

 

5. Materializacion de los Datos

Forma de obtener las ocurrencias (valores) de los datos.

Dos formas:

1. DIRECTO: No hay calculo anadido para obtener los datos

acceso a un atributo logico ≡ acceso a un campo fısico

2. INDIRECTO: Requiere calculo adicional para obtener infor-macion. Estos datos no pueden ser modificados directamentepor el usuario.

acceso a un atributo logico ≡ acceso a diversos camposfısicos

Ejemplo: Campos Cantidad total de piezas, Promedio de pesos

de las piezas requieren ser calculados en el momento en elcual se consultan.

6. Estructura de Ficheros

Fichero fısico puede ser:

• Contenido en UNA o VARIAS unitades de disco fısico

• ORDENADO por cadenas de apuntadores o por diferentesındices, o NO ORDENADO

• Tipos de acceso: SECUENCIAL, INDEXADO, HASHING

44

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 45/46

 

7. Estructuras de los registros almacenados

Dos estrategias:

• COMBINAR registros fısicos

– Registro logico ⇒ subconjunto de campos del registrofısico

• SEPARAR registros fısicos

– Division permite almacenar informacion menos accesible omenos necesaria en dispositivos (discos magneticos) maslentos.

– 1 Registro logico ⇒ n registros fısicos

45

5/11/2018 tema1-sp - slidepdf.com

http://slidepdf.com/reader/full/tema1-sp 46/46

 

Inconvenientes de un

Sistema de Base de Datos

La importancia de los datos para gestion o toma dedecisiones, junto con las capacidades del sistema de BDpresuponen que se confie en estos sistemas para obtenerla informacion.

NO OBSTANTE, se han de tener en cuenta ciertosinconvenientes que pueden presentar estos sistemas:

• Pueden surgir problemas de integridad y seguridad si no existeun 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 economico si se quiere una ciertaeficiencia.

• Acceso concurrente puede dar lugar a DEADLOCK, lo queprovoca una bajada de rendimiento muy significativa.

• Errores en el sistema de BD (datos, aplicaciones, DBMS)pueden dar resultados erroneos, pudiendo provocar la adopcionde decisiones importantes erroneas, con las correspondientesperdidas.

• SGBD-DBMS: Programa muy complejo, importante y deter-minante para garantizar la consistencia y validez de los datos.Requiere ser muy testeado.

46