bd - semana 1

48
Servicios Web - Introducción Bases de datos – Diseño de bases de datos Bases de Datos Introducción | SGBD | Ventajas | Desventajas Presenta: Ismael Rafael Ponce Medellín Agosto 2014

Upload: kamui002

Post on 27-Jul-2015

1.151 views

Category:

Education


1 download

TRANSCRIPT

Page 1: BD - Semana 1

Servicios Web - IntroducciónBases de datos – Diseño de bases de datos

Bases de Datos

Introducción | SGBD | Ventajas | Desventajas

Presenta: Ismael Rafael Ponce Medellín

Agosto 2014

Page 2: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Introducción

• ¿Qué son?

• ¿Dónde se usan?

• ¿Por qué usarlas?

• ¿Quiénes las usan?

2

Page 3: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

¿Dato o información? (1/2)

• Dato– Es una representación simbólica.– Por sí sólo, no tiene significado.– Ej: 1984

• ¿Es un año? • ¿Es un código?

3

Page 4: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

¿Dato o información? (2/2)

• Información– Son datos procesados e interpretables.– Característica: tiene significado (semántica).– Ej: El código del grupo es A114.

4

Page 5: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Formas de almacenar información

• Bases de datos• Tesauros• Diccionarios• Ontologías• Texto plano

5

Page 6: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Sistema de información

• Conjunto de componentes que interactúan con el objetivo de almacenar, recuperar y procesar datos e información para crear nueva información.

• Los componentes de un SI son software y hardware, pero es fundamental el rol de las personas.

• Ej: Primeros SI ¡Censos Babilonicos año 3800 a.c.!

6

Page 7: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Construcción de un sistema de información

7

Page 8: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Sistema de archivos (1/2)

• Definición:– Conjunto de programas para manipular y acceder a datos.– Sistema que define y maneja sus propios datos.

8

Page 9: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Sistema de archivos (2/2)

• Desventajas:– Dependencia de datos.

• Actualización complicada. Cualquier modificación, implica modificar el código.• Difícil acceso a los datos.

– Redundancia de datos - Inconsistencias.– Consultas fijas.– Formatos de archivos incompatibles.– Aislamiento de los datos.

9

Page 10: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Base de datos

• Una Base de Datos (BD) es un conjunto de datos relacionados entre sí.

• Software enfocado al manejo de grandes volúmenes de datos.• No se debe confundir la Base de Datos con el Sistema Gestor

de Base de Datos (SGBD o DBMS).• Típicamente, se les representa con el siguiente símbolo:

10

Page 11: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Elementos de un sistema de BD

• Hardware. Máquinas en las que se almacenan las BDs.

• Software. Es el sistema gestor de bases de datos. El encargado de administrar las bases de datos.

• Datos. Incluyen los datos que se necesitan almacenar y los metadatos (datos que sirven para describir lo que se almacena).

• Usuarios. Personas que manipulan los datos del sistema.

11

Page 12: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Procesos involucrados

• Definición de una BD.– Descripción o definición de las estructuras de datos y restricciones

que tendrá una base.

• Construcción de una BD.– Proceso de carga de los datos en la base.

• Manipulación de una BD.– Proceso de explotación de la base (recuperación y modificación de los

datos almacenados).

12

Page 13: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Niveles de abstracción

• Físico. – Se refiere al hardware donde se implementa.

• Lógico. – Se refiere a los datos que se almacenan y cómo se relacionan entre sí.

• Vistas. – Se refiere a la parte que se desea mostrar.

13

Page 14: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Estructura de la BD (1/2)

• Estructura lógica. – Indica la composición y distribución teórica de la base de datos. – Sirve para que las aplicaciones puedan utilizar los elementos de la BD

sin saber realmente cómo se están almacenando. – Es una estructura que permite idealizar a la base de datos. – Sus elementos son objetos, entidades, nodos, relaciones y enlaces,

mismos que no tienen presencia real física del sistema. – Para acceder a los datos tiene que haber una posibilidad de traducir la

estructura lógica en la estructura física.

14

Page 15: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Estructura de la BD (2/2)

• Estructura física. – Es la estructura de los datos tal cual se almacenan en las unidades de

disco. – La correspondencia entre la estructura lógica y la física se almacena en

la base de datos (en los metadatos).

15

Page 16: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

SGBD (1/3)• Sistema Gestor de Bases de Datos (DBMS, Database

Management System).

• Aplicación que permite a los usuarios la definición, creación y mantenimiento de una BD.

• Conjunto de programas que permiten manipular y acceder a datos.

• Proporciona acceso controlado a la BD.

16

Page 17: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

SGBD (2/3)• Objetivo:

– Proporcionar al usuario una visión abstracta de los datos y de los diversos servicios que permite.

– Además deben mantener la seguridad de la información almacenada pese a la caída del sistema.

17

Page 18: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

SGBD (3/3)

18

Page 19: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Herramientas de un SGBD

• Para la creación y especificación de los datos y la estructura de la BD.

• Para administrar y crear la estructura física.

• Para la manipulación de los datos (añadir, modificar, suprimir o consultar).

• De recuperación en caso de desastre.

• Para la creación de copias de seguridad.

• Para la gestión de la comunicación de la BD.

19

Page 20: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Funciones de un SGBD (1/3)

• Función de descripción. – Sirve para describir los datos, sus relaciones y sus condiciones de

acceso e integridad. – Se utiliza un lenguaje de definición de datos o DDL.

– Create Table(Nombre:string, sueldo:real,…)– Create Index…, etc.

20

Page 21: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Funciones de un SGBD (2/3)

• Función de descripción. – El resultado de la compilación de sentencias DDL es un conjunto de

tablas que se almacenan en un archivo especial llamado diccionario de datos o directorio.

Directorio de datos.– Archivo que contiene metadatos (datos sobre datos). – Este archivo se consulta antes de leer o modificar los datos reales en el

sistema de BD.

21

Page 22: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Funciones de un SGBD (3/3)

• Función de manipulación. – Permite buscar, añadir, suprimir y modificar datos de la base de

datos. – El SGBD proporciona un lenguaje de manipulación de datos (DML).

• Función de control. – Incorpora las funciones que permiten una buena comunicación con la

base de datos. – Proporciona al DBA los procedimientos necesarios para realizar su

labor.

22

Page 23: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Categorías de Usuarios (1/2)

• Usuarios finales. – Utilizan datos de la BD para su trabajo cotidiano (que no tiene por qué

tener que ver con la informática).– Normalmente no utilizan la base de datos directamente.

• Desarrolladores. – Analistas y programadores encargados de generar aplicaciones para

los usuarios finales.

23

Page 24: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Categorías de Usuarios (2/2)

• Administradores. – Llamados DBA (Data Base Administrator), se encargan de gestionar las

bases de datos:• De proporciona mecanismos de seguridad, mantenimiento y

actualizaciones.• De especificar ligaduras de integridad.

24

Page 25: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Interacción Usuario – SGBD (1/3)

1. El proceso lanzado por el usuario llama al SGBD indicando la porción de la base de datos que se desea tratar.

2. El SGBD traduce la llamada a términos del esquema lógico de la base de datos. – Accede al esquema lógico comprobando derechos de acceso y la

traducción física.

3. El SGBD obtiene el esquema físico.

4. El SGBD traduce la llamada a los métodos de acceso del Sistema Operativo (SO) que permiten acceder a los datos requeridos.

25

Page 26: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Interacción Usuario – SGBD (2/3)

5. El SO accede a los datos tras traducir las órdenes dadas por el SGBD.

6. Los datos pasan del disco a una memoria intermedia o buffer.– En ese buffer se almacenarán los datos según se vayan recibiendo.

7. Los datos pasan del buffer al área de trabajo del usuario (ATU) del proceso del usuario.

8. El SGBD devuelve indicadores en los que manifiesta si ha habido errores o advertencias a tener en cuenta. – Si las indicaciones son satisfactorias, los datos de la ATU serán

utilizables por el proceso de usuario.

26

Page 27: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Interacción Usuario – SGBD (3/3)

27

Page 28: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Tablas y relaciones

• Tabla:– Define la estructura de un archivo.– Se compone de campos y tipos.

• Relaciones:– Enlaces usados para ligar dos o más tablas.

28

Page 29: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

¿Por qué usar bases de datos?

• ¿Qué se haría si no se puede usar ?– Desarrollar programas con lenguajes de propósito general.

• ... y ésto que problemas trae ?– Más trabajo para manipular y acceder a los datos.– Productividad, costos, calidad.– Inconsistencia de datos.– Seguridad en datos.

29

Page 30: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Ventajas de las BD (1/3)

• Independencia de los datos, los programas y procesos. – Esto permite modificar los datos sin modificar el código de las

aplicaciones.

• Menor redundancia. – No hace falta tanta repetición de datos (sólo los buenos diseños de

datos tienen poca redundancia).

• Integridad de los datos. – Mayor dificultad de perder los datos o de realizar incoherencias con

ellos.

30

Page 31: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Ventajas de las BD (2/3)

• Mayor seguridad en los datos. – Al limitar el acceso a ciertos usuarios.

• Datos más documentados. – Gracias a los metadatos que permiten describir la información de la

base de datos.

• Menor espacio de almacenamiento. – Gracias a una mejor estructuración de los datos.

31

Page 32: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Ventajas de las BD (3/3)

• Acceso más eficiente a los datos. – La organización de los datos produce un mejor rendimiento y

compartición.

32

Page 33: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

¿Por qué no usarlas?

• Alto costo en inversión:– HW / SW / Capacitación técnica.

• Costo de administración.

• Cuando no se justifica usar SGBD:– Muy pocos datos.– Datos muy estables.– No hay acceso concurrente.

33

Page 34: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Desventajas de las BD

• Requiere personal calificado.

• Implantación larga y difícil.

• Ausencia de estándares reales. – Excesiva dependencia hacia los sistemas comerciales del mercado. – Aunque una buena parte de esta tecnología es aceptada como

estándar.

34

Page 35: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Niveles ANSI/SPARC

• Desde el ANSI (Instituto de Estándares Americano) se creo una sección llamada SPARC.

• Se dedica a estándares de sistemas de información.

• Propusieron tres niveles de abstracción en las bases de datos.

35

Page 36: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Niveles ANSI/SPARC

36

Page 37: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Niveles ANSI/SPARC

• Esquema externo. – Visión de la base de datos que ofrece cada aplicación. – Lógicamente es distinta en cada aplicación. – Representan vistas concretas de la base de datos.

• Esquema conceptual. – Representación teórica de los datos y de sus relaciones. – Representa la lógica de la base de datos.

• Esquema físico. – Representa los datos según son almacenados en el medio físico.

37

Page 38: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Independencia Lógico/Física

• Independencia física de los datos. – Aunque se añadan o cambien discos, otro hardware u otros cambios

relacionados con la física de la base de datos, el esquema conceptual permanece invariable.

• Independencia lógica de los datos. – Significa que aunque se modifique el esquema conceptual, la vista

que poseen las aplicaciones (los esquemas externos) no serán afectados.

38

Page 39: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Integridad referencial

• Actualización en cascada.

• Eliminación en cascada.

39

Page 40: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Modelos de datos (1/3)

• Modelo. – Es un esquema mental (conceptual) en el que se intentan reproducir

las características de una realidad específica.

• Modelo de datos.– Colección de herramientas conceptuales usadas para describir datos,

su semántica, sus relaciones, integridad y consistencia.– Intentan reproducir una información real que se desea almacenar en

un sistema informático.

40

Page 41: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Modelos de datos (2/3)

• Esquema es una descripción específica en términos de un modelo de datos. – El conjunto de datos representados por el esquema forma la BD.

• Ejemplar: Colección de información almacenada en la BD. Ej:– Int num esquema

Clientenombre textoCalle numérico

– num = 32 ejemplarClientenombre OswaldoCalle 32

41

Page 42: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Modelos de datos (3/3)

• Un Modelo de Datos permite expresar :– Estructuras. Elementos de los problemas.

• CURSOS(nro_curso, nombre, horas).

– Restricciones. Reglas que deben cumplir los datos para que la base sea considerada válida. • ( c CURSOS ) (c.horas < 120)∀ ∈

– Operaciones. Insertar, borrar y consultar la BD.• Insert into CURSOS (1911,”FBD”,90)

42

Page 43: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Clasificación de los Modelos de Datos (1/3)

• Mundo real. – Contiene la información tal cual la percibimos como seres humanos.

• Esquema conceptual. – Representa el modelo de datos de forma independiente al SGBD.

• Esquema canónico (o de base de datos). – Representa los datos en un formato más cercano al de la

computadora.

43

Page 44: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Clasificación de los Modelos de Datos (2/3)

• Esquema interno. – Representa los datos según el modelo concreto de un SGBD.

• Base de datos física. – Los datos tal cual son almacenados en disco.

44

Page 45: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Clasificación de los Modelos de Datos (3/3)

45

Page 46: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Tipos de modelos de datos

• Modelos lógicos basados en objetos.– Modelo Entidad-Relación.– Modelo orientado a objetos.– Modelo de datos semántico.– Modelo de datos funcional.

46

Page 47: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

• Modelos lógicos basados en registros.– Modelo relacional.– Modelo de red.– Modelo jerárquico.

• Modelos físicos.

Propietario Inmueble

Clave Nombre Domicilio … Clave_ I

Clave_ I Domicilio …

47

Page 48: BD - Semana 1

Servicios Web - IntroducciónDiseño de bases de datos – Introducción

Bibliografía• An introduction to database system, Chris J. Date, Addison Wesley.• Marqués Mercedes, Bases de datos, Universitat Jaume I, ISBN: 978-84-

693-0146-3, Licencia Creative Commons, 2011. Capítulo 1.• Sánchez J., Principios sobre Bases de Datos Relacionales, Licencia Creative

Commons, 2004. Disponible en http://www.jorgesanchez.net/bd/. Última visita agosto 2014.

• Sánchez J., Diseño Conceptual de Bases de Datos, , Licencia Creative Commons, 2004. Disponible en http://www.jorgesanchez.net/bd/. Última visita agosto 2014.

48