Vous êtes sur la page 1sur 11

20/05/2010

SISTEMA DE BASE DE
DATOS
SISTEMA DE BASE  Dato .- Conjunto de hechos
DE DATOS o partes de información
determinada. Es la
representación de un
hecho.
 Base .- Sistema o conjunto
de procedimientos
organizados para manipular
datos.
20-may-10 MAE. Enrique Salazar Meza 1 20-may-10 MAE. Enrique Salazar Meza 2

SISTEMA DE BASE DE SISTEMA DE BASE DE


DATOS DATOS
 Procesamiento de datos .- Manipulación  Sistema de Base de Datos .- Consiste de
de datos a través de varios procedimientos una base de datos almacenada en un
que alteran su contenido o presentación. computador y de un conjunto de programas
 Base de Datos .- Depósito de datos para manejar esos datos.
interrelacionados de interés y valor para
los usuarios del sistema.

20-may-10 MAE. Enrique Salazar Meza 3 20-may-10 MAE. Enrique Salazar Meza 4

SISTEMA DE BASE DE SISTEMA DE BASE DE


DATOS DATOS
 Componentes de un  Software : DBMS (Database Management
Sistema de Base de System).
Datos :  Datos : Información del usuario.
– Hardware
– Software
– Datos
 Hardware : DASD
(Direct Access Storage
Device).
20-may-10 MAE. Enrique Salazar Meza 5 20-may-10 MAE. Enrique Salazar Meza 6

1
20/05/2010

SISTEMA ADMINISTRADOR SISTEMA ADMINISTRADOR


DE BASE DE DATOS DE BASE DE DATOS
 Database Management System (DBMS) .- – Manejar los datos de acuerdo a peticiones de
Sistema que maneja las bases de datos y los usuarios
presenta facilidades para definir estructuras – Mantener la integridad y seguridad de los
de datos y provee de operaciones para datos
transformar dichas bases. – Registrar el uso de la base de datos
 Funciones principales de un DBMS :
– Crear y organizar la base de datos
– Establecer y mantener las trayectorias de
acceso a la base de datos
20-may-10 MAE. Enrique Salazar Meza 7 20-may-10 MAE. Enrique Salazar Meza 8

SISTEMA ADMINISTRADOR ENFOQUES PARA OBTENER


DE BASE DE DATOS INFORMACIÓN
PETICIONES
DEL
 Dos enfoques :
USUARIO
– Enfoque tradicional
– Enfoque de base de datos
SISTEMA
DBMS OPERTATIVO

BASE
DE
DATOS

20-may-10 MAE. Enrique Salazar Meza 9 20-may-10 MAE. Enrique Salazar Meza 10

ENFOQUES PARA OBTENER ENFOQUES PARA OBTENER


INFORMACIÓN INFORMACIÓN
 Enfoque tradicional o de programas de – Uso de diferentes lenguajes de programación
aplicación o de tercera generación : – Redundancia de datos
– Tiene sus propios archivos – Inconsistencia de datos
– Tiene muy poca relación con otros programas – Problemas de integridad
de aplicación – Dificultad para accesar datos
– Proceso de captura de datos y reportes muy – Aislamiento de datos
especializados – Múltiples usuarios
– Datos diferentes de aplicación en aplicación – Problemas de seguridad
– Costoso proceso de búsqueda, clasificación y
20-may-10
unión de archivos
MAE. Enrique Salazar Meza 11 20-may-10 MAE. Enrique Salazar Meza 12

2
20/05/2010

ENFOQUES PARA OBTENER ENFOQUES PARA OBTENER


INFORMACIÓN INFORMACIÓN
 Enfoque de base de datos : – Proveer un ambiente
– Estandarización de atributos de los datos conveniente y
eficiente para
– Estandarización de los valores de los atributos almacenar y
– Estandarización de la representación de los recuperar datos
datos – Proveer
– Asociar datos comunes independencia de
– Sincronización en la actualización de archivos datos
– Minimizar redundancia de datos – Almacenamiento de
todo tipo de
20-may-10 MAE. Enrique Salazar Meza 13 20-may-10
información
MAE. Enrique Salazar Meza 14

ENFOQUES PARA OBTENER


NIVELES DE ABSTRACCIÓN
INFORMACIÓN
– Seguridad contra daños físicos y accesos no  Abstracción : Es la
autorizados habilidad que se tiene
– Control en ambiente multiusuario para ignorar detalles y
– Control centralizado de datos concentrarse en
propiedades generales
y comunes de un
conjunto de objetos.

20-may-10 MAE. Enrique Salazar Meza 15 20-may-10 MAE. Enrique Salazar Meza 16

NIVELES DE ABSTRACCIÓN NIVELES DE ABSTRACCIÓN


 Tres niveles de abstracción :  Nivel Físico .- Nivel más
– Nivel Físico, Nivel Interno bajo de abstracción,
– Nivel Lógico, Nivel Conceptual describe la organización
– Nivel de Vista, Nivel Externo, Nivel de física de la base de datos
Usuario e incluye una descripción
de cómo se almacenan los
datos y de las vías de
acceso que están
disponibles para
20-may-10 MAE. Enrique Salazar Meza 17 20-may-10
optimizar el rendimiento. 18
MAE. Enrique Salazar Meza

3
20/05/2010

NIVELES DE ABSTRACCIÓN NIVELES DE ABSTRACCIÓN


 Nivel Conceptual .- Es una abstracción del  Nivel de Vistas .- Es una porción de la base
mundo real, es la representación de una de datos conceptual. Es el nivel más alto
organización. de abstracción.

20-may-10 MAE. Enrique Salazar Meza 19 20-may-10 MAE. Enrique Salazar Meza 20

NIVELES DE ABSTRACCIÓN INSTANCIAS Y ESQUEMAS


 Esquema de la base de datos .- La
organización lógica de la base de datos.
– Intención es sinónimo de esquema.
– Vista es sinónimo de subesquema.
 Instancia .- El grupo de datos almacenados
en un determinado instante.

20-may-10 MAE. Enrique Salazar Meza 21 20-may-10 MAE. Enrique Salazar Meza 22

INDEPENDENCIA DE
INSTANCIAS Y ESQUEMAS
DATOS
 Lenguajes de programación :  Independencia de datos .- Es la habilidad
– Esquema ==> tipo de variables que se tiene para modificar la definición de
– Instancia ==> datos un esquema en un nivel de abstracción sin
afectar la definición de un esquema en el
siguiente nivel superior.
 Existen dos niveles de independencia :
– Independencia en el nivel físico
– Independencia en el nivel lógico

20-may-10 MAE. Enrique Salazar Meza 23 20-may-10 MAE. Enrique Salazar Meza 24

4
20/05/2010

INDEPENDENCIA DE INDEPENDENCIA DE
DATOS DATOS
 Independencia en el nivel físico .-  Función de mapeado .- Declaración que
Modificar el esquema físico sin obligar a establece la correspondencia entre objetos
que se modifique el esquema conceptual. conceptuales y objetos de almacenamiento.
 Independencia en el nivel conceptual .- Es
la habilidad para modificar el esquema
conceptual evitando la modificación de los
programas de aplicación.

20-may-10 MAE. Enrique Salazar Meza 25 20-may-10 MAE. Enrique Salazar Meza 26

LENGUAJES DE BASES DE LENGUAJES DE BASES DE


DATOS DATOS
 Lenguaje DDL (Data Definition Language)  Query .- Consulta para
.- Conjunto de instrucciones para definir o recuperar datos
redefinir el esquema de la base de datos, almacenados.
crear vistas, definir restricciones de  Lenguaje DCL (Data
integridad. Control Language) .-
 Lenguaje DML (Data Manipulation Permite controlar los
Language) .- Permite el acceso a los datos accesos y las respectivas
para consulta, actualizaciones, inserciones autorizaciones sobre los
y eliminaciones. datos.
20-may-10 MAE. Enrique Salazar Meza 27 20-may-10 MAE. Enrique Salazar Meza 28

LENGUAJES DE BASES DE USUARIOS DE BASE DE


DATOS DATOS
 Host Languages .- Lenguaje ordinario de  Usuario .- El que manipula información.
tercera generación que permite incluir  Clasificación desde el punto de vista del
instrucciones DML. acceso a la base de datos :
– Método : el Lenguaje Utilizado
• lenguaje de consulta
• lenguaje anfitrión
– Modo :
• Batch
• En Línea
20-may-10 MAE. Enrique Salazar Meza 29 20-may-10 MAE. Enrique Salazar Meza 30

5
20/05/2010

USUARIOS DE BASE DE USUARIOS DE BASE DE


DATOS DATOS
– Tipo : – Programadores de Aplicación : interactúan a
• Estático través de DML o lenguajes anfitriones.
• Dinámico – Usuarios Sofisticados : interactúan a través de
 Otra clasificación : DDL.
– Usuarios Finales :
interactúan a través de los
programas de aplicación.

20-may-10 MAE. Enrique Salazar Meza 31 20-may-10 MAE. Enrique Salazar Meza 32

DBA DBA
 DataBase Administrator .- Controla y  Funciones :
maneja la base de datos. – Definición de esquemas
 Perfil : – Definición de estructuras de almacenamiento y
– Experiencia en DBMS métodos de acceso
– Diseño de base de datos – Modificación del esquema y de la
organización física
– Sistemas Operativos
– Otorgar autorizaciones de acceso
– Hardware y Software
– Restricciones de integridad
– Buena comunicación verbal y escrita
– Conocimiento de la empresa
20-may-10 MAE. Enrique Salazar Meza 33 20-may-10 MAE. Enrique Salazar Meza 34

ARQUITECTURA DE ARQUITECTURA DE
SISTEMA DE BASE DE SISTEMA DE BASE DE
DATOS DATOS
 Un sistema de base de datos está – Database Manager .- Provee del enlace
compuesto de módulos que tienen a su requerido entre los datos almacenados y las
cargo algunas de las responsabilidades del vistas en el nivel físico. Sus funciones :
• Aplicar medidas de seguridad (restricciones de
sistema global. acceso)
 Los componentes son : • Detectar fallas del sistema y restaurar la base de
– Manipulador de Archivos .- maneja la datos
asignación de almacenamiento en disco y las • Participar en el control de la concurrencia y de
integridad
estructuras de datos.
• Controlar el almacenamiento, recuperación y
actualización de los datos
20-may-10 MAE. Enrique Salazar Meza 35 20-may-10 MAE. Enrique Salazar Meza 36

6
20/05/2010

ARQUITECTURA DE ARQUITECTURA DE
SISTEMA DE BASE DE SISTEMA DE BASE DE
DATOS DATOS
– Procesador de Consulta : Traduce las – Compilador DDL :
sentencias en lenguaje de consultas a Traduce las
instrucciones de bajo nivel que el database sentencias DDL en
manager pueda entender. Además optimiza la un conjunto de
sentencia tablas conteniendo
– Precompilador DML : Traduce las sentencias metadatos
DML insertadas en un programa a llamadas de  Metadato : dato
procedimientos, todo desarrollado bajo un sobre otro dato.
lenguaje anfitrión

20-may-10 MAE. Enrique Salazar Meza 37 20-may-10 MAE. Enrique Salazar Meza 38

TRANSACCIÓN TRANSACCIÓN
 Es una unidad de trabajo que la base de  Rollback .- No se aceptan los cambios
datos procesa y que la lleva de un estado hechos a nivel de transacción. Indica
consistente a otro. terminación fallida de la transacción.
 Comienza con un “begin transaction” y
termina con un “commit” o “rollback”.
 Commit .- Acepta todos los cambios hecho
a nivel de transacción. Indica la
terminación exitosa de una transacción.

20-may-10 MAE. Enrique Salazar Meza 39 20-may-10 MAE. Enrique Salazar Meza 40

TRANSACCIÓN TRANSACCIÓN
 Propiedades :
– Atómica : la transacción es ejecutada
completamente, no se admite ejecución parcial
– Permanente : los resultados de una transacción
ejecutada no pueden perderse ni por fallas de
software ni de hardware
– Serializable : los resultados de transacciones
concurrentes deben ser equivalentes a la
ejecución serial de las mismas

20-may-10 MAE. Enrique Salazar Meza 41 20-may-10 MAE. Enrique Salazar Meza 42

7
20/05/2010

TRANSACCIÓN TRANSACCIÓN
 Concurrencia .- Una o más transacciones  Granularidad .- Tamaño o porción de la
accesando a la base de datos a la vez. base de datos que se bloquea.
 Bloqueo .- Mecanismo o técnica para  Bloqueo y Notificación .- El bloqueo no
controlar la concurrencia. Bloquea permite que los datos requeridos por un
pequeñas porciones de la base de datos. usuario le sean dados si es que dichos
datos han sido previamente obtenidos por
otro. El sistema notifica al usuario que los
datos han sido modificados por otro
usuario.
20-may-10 MAE. Enrique Salazar Meza 43 20-may-10 MAE. Enrique Salazar Meza 44

TRANSACCIÓN TRANSACCIÓN
 Fases de una transacción :  Deadlock .- Problema lógico que puede
– Fase de lectura : pare leer uno o más valores surgir siempre que dos o más procesos
– Fase de cálculo : puede producir un conjunto contendientes desean ejercer controles
de escritura exclusivos sobre recursos comunes.
– Fase de escritura  Ejemplo :
 Instrucciones de bloqueo : locking y – El proceso A obtiene el control exclusivo del
unlocking. recurso 1
– El proceso B obtiene el control exclusivo del
recurso 2
20-may-10 MAE. Enrique Salazar Meza 45 20-may-10 MAE. Enrique Salazar Meza 46

TRANSACCIÓN TRANSACCIÓN
– El proceso A pide el recurso 2, pero debe U1 U2
esperar en una cola hasta que B lo libere
– El proceso B pide el recurso 1, pero debe
esperar en una cola hasta que A lo libere A B

1 2

20-may-10 MAE. Enrique Salazar Meza 47 20-may-10 MAE. Enrique Salazar Meza 48

8
20/05/2010

TRANSACCIÓN TRANSACCIÓN
 Condiciones para el Deadlock :
– Concurrencia : los procesos aspiran el control
exclusivo de más de un recurso
– Mantenimiento : un proceso mantiene
controlado de forma exclusiva los recursos
hasta que no los necesita
– Espera : los procesos esperan en cola los
nuevos recursos, mientras mantienen recursos
ya asignados a ellos

20-may-10 MAE. Enrique Salazar Meza 49 20-may-10 MAE. Enrique Salazar Meza 50

SEGURIDAD SEGURIDAD
 Claves de acceso .- Técnica
 La base de datos debe ser protegida de más común para controlar el
accesos no autorizados y de alteraciones acceso a datos.
accidentales.  Log .- Archivo especial que
 Técnicas : puede contener :
– Claves de acceso (passwords) – fecha y hora de acceso
– Monitoreo de operaciones (logs) – identificación del usuario
– Validación de entradas – nombre de la aplicación
– Técnicas de codificación (encryption) – terminal usada
– Uso de vistas (views) – tipo de acceso
20-may-10 MAE. Enrique Salazar Meza 51 20-may-10 MAE. Enrique Salazar Meza 52

SEGURIDAD SEGURIDAD
 Validación de entradas .- Técnica para  Vistas .- son útiles para la seguridad, pues
prevenir alteraciones irregulares de los restringen el acceso a información.
datos verificando condiciones impuestas a
los mismos. Por ejemplo : rango de
valores, tipos de datos.
 Encriptar .- Cambiar un caracter por otro u
otros caracteres.

20-may-10 MAE. Enrique Salazar Meza 53 20-may-10 MAE. Enrique Salazar Meza 54

9
20/05/2010

DICCIONARIO DE DATOS MODELOS DE DATOS


 Conjunto de tablas que se
utilizan para proporcionar  Modelo de Datos .- Es un grupo de
soporte y documentación conceptos utilizados para describir : datos,
de la base se datos. relaciones entre datos, significado y
 Su contenido : restricciones de datos.
– Usuarios  Provee de :
– Descripción de datos – medios formales para representar información
– Programas y esquemas – medios formales para manipular dicha
– Facilidades de apoyo representación
– Datos de rendimiento
20-may-10 MAE. Enrique Salazar Meza 55 20-may-10 MAE. Enrique Salazar Meza 56

MODELOS DE DATOS MODELOS DE DATOS


 Propósitos : – Independencia física : implementar
– Elemento de representación de la arquitectura requerimientos funcionales y requerimientos
de un sistema de base de datos de rendimiento
– Herramienta para verificar si una base de datos – Independencia lógica : implementar
está correctamente implementada requerimientos individuales y requerimientos
globales
– Referencia para el desarrollo de técnicas de
diseño de bases de datos – Referencia para evaluación y comparación de
sistemas de administración de base de datos
– Referencia para desarrrollar lenguajes de bases
de datos
20-may-10 MAE. Enrique Salazar Meza 57 20-may-10 MAE. Enrique Salazar Meza 58

MODELOS DE DATOS MODELOS DE DATOS


 Modelo Jerárquico .- Está basado en la idea  Modelo de Redes .- Representa entidades
que una gran parte del mundo real puede mediante registros y campos mediante
ser organizado y visualizado como una atributos, al igual que el modelo
estructura jerárquica. Un nodo puede tener Jerárquico. Un nodo puede tener varios
un único padre. padres.

20-may-10 MAE. Enrique Salazar Meza 59 20-may-10 MAE. Enrique Salazar Meza 60

10
20/05/2010

SISTEMA DE BASE
DE DATOS

20-may-10 MAE. Enrique Salazar Meza 61

11