tema 11 bases de datos - cartagena99.com 11.pdf · • la operación sobre una base de datos se...

21
Tema 11 B d d Bases de datos Fundamentos de Informática

Upload: lamtuyen

Post on 25-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Tema 11B d dBases de datos

Fundamentos de Informática

Índice

• Evolución• Tipos de modelos de datos y SGBD• El modelo relacional y el Diseño de una Base deEl modelo relacional y el Diseño de una Base de Datos

• Operaciones básicas: consulta inserción y borradoOperaciones básicas: consulta, inserción y borrado. SQL.

2Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Evolución1

3Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Evolución de los dispositivos de almacenamiento

• Archivos: almacenan un conjunto de registrosCONCEPTO CONTENIDO CAMPOS

Nombre:Nº de Empleado:

Edad:

Juan López1300938

CAMPO NOMBCAMPO NEMPLECAMPO EDAD

CONCEPTO CONTENIDO CAMPOS

Edad:. . . . . . . . .

38. . . . . .

CAMPO EDAD. . . . . . . . .

Juan López 13009 38 . . . . . . . . . . . . . . .NOMB NEMPLE EDAD

REGISTRO

J. López 13009 38 . . . . . . . . . . . . . . .B Ll 15783 27B. Llaneza 15783 27 . . . . . . . . . . . . . .A. Molina 158123 31 . . . . . . . . . . . . . . .F. Gómez 16111 43 . . . . . . . . . . . .

ARCHIVO

4Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datosBD - Introducción4

L. López 16234 22 . . . . . . . . . . . . . . .M. Sanz 16641 33 . . . . . . . . . . . . . . .

Evolución de los dispositivos de almacenamiento• Los sistemas de archivos evolucionan.

– Fichas.13009 JUAN LÓPEZ 38 . . . . . .

– CintasCintas

FICHERO 13009 Juan López 38 . . . . . .

Registro 1 Registro 2 Registro 3

Acceso secuencial: Para acceder a un registro hay que pasar antes por los 

p

g y q p pprecedentes

Para modificar (actualizar) un archivo hay que escribirlo de nuevo enteroNo es posible realizar procesos concurrentes sobre el mismo archivo

5Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

No es posible realizar procesos concurrentes sobre el mismo archivo

Evolución de los dispositivos de almacenamiento• Los sistemas de almacenamiento de  archivos evolucionan.

– Discos.SECTOR PISTA REGISTROS

CILINDRO

ACCESO DIRECTO A UN REGISTRO

REGISTROS SOBRE-ESCRIBIBLES

6Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Evolución de los archivos a las bases de datos• Programación tradicional: Los datos manejados por las aplicaciones se 

almacenaban en archivos tradicionales, gestionados a través de métodos de acceso de los Sistemas Operativos. Las aplicaciones dependen del p p palmacenamiento físico de los datos.

Programa de aplicación 1 Fichero 1 Peticiones dependientes delg p

SO

Fichero 2Programa de aplicación 2

Programa de aplicación 3

Peticiones dependientes del método de acceso a ficheros del sistema operativo.

• Actualmente: Centralizar la gestión y control de los datos a través de un software especifico y común a todas las aplicaciones (SGBD)

Programa de aplicación 3

p y p ( )

Peticiones sencillas i d di d l

Programa de aplicación 1

SO

Fichero 1

SGBDindependientes de los métodos de acceso a ficheros.

Fichero 2Programa de aplicación 2

Programa de aplicación 3Interface

7Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

query’s

Evolución de los archivos a las bases de datosImportancia de las bases de datos:

• Surgen debido a las necesidades de manipular grandes cantidades de datos, tanto desde programas como por usuarios finales.

• BD’s : Colección de datos relacionados entre sí, gestionados a través de un software específico (SGBD).

• SGBD: Software que centraliza e integra el control sobre las Bases de Datos, independizando los datos de los programas en sí.

SGBD: Sistema Gestor de Bases de Datos

Proporciona los Servicios de Datos

B d D t C j t d hi ti d SGBD

8Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Bases de Datos: Conjunto de archivos gestionado por un SGBD

Evolución de los archivos a las bases de datos

Características de los Sistemas de BD’s• Independencia entre datos y programas• Independencia entre datos y programas.

• Se facilita la gestión de los datos:– Fácil uso para usuarios y programadores.– Visión lógica de los datos. Relaciones, tablas, atributos– Accesible mediante lenguajes sencillos y potentes.Accesible mediante lenguajes sencillos y potentes.

• Redundancia mínima => Garantiza la integridad de los datos.

• Control de concurrencias a los datos.

• Protección de datos ante accesos no autorizados.

Utilid d d d i i t ió d b d d t (b k t

9Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

• Utilidades de administración de bases de datos (backups, restores, auditorias,…)

Tipos de modelos de datos y SGBD2 Tipos de modelos de datos y SGBD2

10Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Tipos modelos de datos y de SGBD.Existen distintos modelos de datos en función de cómo sea la organización de los mismos y que determina el Sistema Gestor d B d D t tili

MODELOS DE DATOS

de Base de Datos que se vaya a utilizar.

Jerárquico (segmento, árbol)

Relacional (Ej: DB2 de IBM, Accesss, …) (entidades, relaciones)

En Red (Ej: CODASYL) (registro, fichero ,set)

O i d bjOrientadas a objetos

Modelo multidimensional

11Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Modelo multidimensional

Modelo relacional y Diseño de BD3 Modelo relacional y Diseño de BD3

12Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Modelo Relacional• En 1970, E.F. Codd de IBM presentó el modelo de datos relacional.

• Es de los más utilizados para almacenar datos de operación.• Conceptos básicos:

ENTIDADAlgo (persona, animal, cosa, hecho…) que puede ser descrito mediante una serie de características CadaENTIDAD descrito mediante una serie de características. Cada uno de los posibles valores se denomina ocurrencia de la entidad.

RELACIÓNRepresenta asociaciones entre las diferentes entidades, de acuerdo con las decisiones de gestión del negocio a modelizar.

ATRIBUTO

Nombre, Longitud,Identificador con el que se referencia a cada característica de una entidad.

13Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

, g ,Tipo, Clave,...

Modelo Relacional

DIAGRAMADIAGRAMA

EMITE PEDIDOCLIENTE SERVICIO

Nº-CLIENTE (#) Nº-CLIENTE (#) COD-SERVICIO(#)N CLIENTE (#)NOMBRE

DOMICILIO

N CLIENTE (#)COD-SERVICIO(#) TIPO

CLASETARIFA

REPOSITORIOREPOSITORIO

14Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Modelo Relacional y Diseño de la BD• En el desarrollo de una aplicación, entre otras tareas, hay que realizar el 

Diseño de la Base de Datos, que consiste en:• Definir su contenido• Definir su contenido• Definir su estructura

• Para el Diseño de la Base de datos se realiza:1. Diseño lógico, estructuras lógicas de datos visibles para los programas, 

donde se debe decidir• qué entidades existen y qué atributos tienen• qué relaciones entre entidades se van a manejar en la aplicación.

2 Diseño físico estructuras físicas de los datos2. Diseño físico, estructuras físicas de los datos• Qué ficheros e índices se van a utilizar • En cada fichero, qué tabla se va a almacenar, es decir, cuáles son 

los atributos que tendrá cada uno de los registros almacenados en el fichero. 

• Se ha de evitar tener datos redundantes.

15Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

• Se utiliza la Normalización para realizar el diseño lógico de la base de datos

Operaciones básicas4 Operaciones básicas4

16Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

Operaciones básicas sobre una Base de Datos• La operación  sobre una base de datos se realiza a través del software que 

controla la base de datos: el SGBD (Sistema Gestor de Base de Datos) 

Peticiones sencillas independientes de los

Programa de aplicación 1

SO

Fichero 1

Fi h 2Programa de aplicación 2

SGBDp

métodos de acceso a ficheros.

Fichero 2g p

Programa de aplicación 3Interface query’s

• En los SGBD relacionales, el lenguaje de consulta estándar que se utiliza es el SQL (Structured Query Language, Lenguaje de consulta estructurado).

query s

• El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales permitiendo gran variedad de operaciones 

é t últi l i difi ó b i ten éstos últimos: seleccionar, modificar, crear ó borrar registros.

• Algunos SGBD que utilizan SQL son, por ejemplo: DB2, Oracle, Informix, MySQL, 

17Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

¿Y con lo que sé de C?5 ¿Y con lo que sé de C?5

18Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

¿Y con lo que sé de C?¿Tendríamos alguna manera de trabajar con Bases de datos con lo que sabemos 

hasta ahora, sin usar un SGBD y SQL?Pues síPues sí …

• Lo más lógico sería utilizar ficheros binarios.• Para cada fichero binario, se decide qué estructura tiene cada registro. • En distintos ficheros, se guarda la información de las entidades y relaciones de la 

aplicación. p• Para “recuperar” información, se puede acceder a varios ficheros a la vez, 

relacionando la información de registros de distintos ficheros.

19Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

¿Y con lo que sé de C?Por ejemplo:

typedef struct avion{

Estructura de cada ocurrencia del fichero “aviones.dat”

int identificador; /* ID único utilizado en el otro archivo */char modelo[20]; /* Tipo de avión, por ejemplo "Boeing 747‐400" */int plazas; /* Número máximo de pasajeros */int velocidad; /* Velocidad en km/h */int velocidad; /  Velocidad en km/h  /

}T_AVION;typedef struct recorrido{ Estructura de cada ocurrencia del fichero “recorridos.dat”

int num_vuelo; /* Número de vuelo */char origen[4]; char destino[4]; int avion asignado; /* Identificador del avión asignado al recorrido */int avion_asignado; /  Identificador del avión asignado al recorrido  /int dia; /* Dia de la semana*/int num_pasajeros; /* Número de pasajeros en este vuelo */

} T_RECORRIDO;La función para mostrar toda la información de los vuelos previstos, incluyendo la información sobre el avión asignado y el grado de ocupación del avión, tendrá que acceder primero al fichero “recorridos.dat” y para cada recorrido, buscar en el fichero “aviones.dat” 

20Departamento de Sistemas InformáticosEscuela Técnica Superior de Ingeniería ICAI

Tema 11:  Bases de datos

la ocurrencia del avión con ese identificador y obtener sus datos.

Escuela Técnica Superior de Ingeniería ICAIAlberto Aguilera 2528015 MadridTel +34 91 542 28 00Tel +34 91 542 28 00Fax + 34 91 542 31 76Iwww.icai.upcomillas.es

www.upcomillas.es