Вы находитесь на странице: 1из 43

1.

INTRODUCCIN A LOS
SISTEMAS DE BASES DE DATOS

1
INTRODUCCIN

Objetivo: Presentar una breve introduccin a los principios de los


sistemas de bases de datos.

Un Sistema Gestor de Base de Datos (SGBD) consiste en una


coleccin de datos interrelacionados y un conjunto de programas para
acceder a dichos datos. La coleccin de datos, normalmente
denominada base de datos, contiene informacin relevante para una
empresa.

El objetivo principal de un SGBD es proporcionar una forma de


almacenar y recuperar la informacin de una base de datos de
manera que sea tanto practica como eficiente.

2
Aplicaciones y
Propsito de los Sistemas de Base de Datos

Ejemplos de Aplicaciones
Propsito (Comercial)
Efectuar cargos o abonos en las cuentas.
Aadir cuentas nuevas.
Calcular el saldo de las cuentas.
Generar los extractos mensuales.
Otros

Guardar la informacin de la organizacin en un sistema de


procesamiento de archivos tiene una serie de inconvenientes
importantes.

3
Diversos archivos con estructura diferente.
Varios lenguajes de programacin diferente.
Informacin duplicada en varios lugares (archivos).
Inconsistencia de los datos.

Dificultad en el Acceso de los datos

Entornos de procesamiento de archivos convencionales no


permiten recuperar los datos necesarios de una forma prctica y
eficiente. Hacen falta sistemas de recuperacin de datos mas
adecuados para el uso general.

4
Aislamiento de los datos
Como los datos estn dispersos en varios archivos y los archivos
pueden estar en diferentes formatos es difcil escribir nuevos
programas de aplicacin para recuperar los datos
correspondientes.

Problemas de Integridad de datos

Los valores de los datos almacenados en la base de datos deben


satisfacer ciertos tipos de restricciones de consistencia. Sin
embargo cuando se aaden nuevas restricciones es difcil
cambiar los programas para hacer que se cumplan.

5
Problemas de Atomicidad

Los sistemas informticos como cualquier otro dispositivo mecnico


o elctrico, esta sujeto a fallo. En muchas aplicaciones es crucial
asegurar que si se produce algn fallo, los datos se restauren al
estado consistente que exista antes de fallo.

Anomalas en el acceso concurrente

Para aumentar el rendimiento global del sistema y obtener una


respuesta mas rpida, muchos sistemas permiten que varios
usuarios actualicen los datos simultneamente.

6
Problemas de Seguridad

No todos los usuarios de un sistema de bases de datos deben


poder acceder a todos los datos.

7
VISIN DE LOS DATOS

Unas de las principales finalidades de los sistemas de bases de


datos es ofrecer a los usuarios una visin abstracta de los datos .
Es decir el sistema oculta ciertos detalles del modo en que se
almacenan y mantienen los datos.

8
ABSTRACCIN DE DATOS

La necesidad de eficiencia ha llevado a los diseadores a


usar estructuras de datos complejas para la representacin
de los datos en la base de datos.

Los desarrolladores ocultan esa complejidad a los usuarios


mediantes varios niveles de abstraccin para simplificar la
interaccin de los usuarios con el sistema.

9
NIVELES DE ABSTRACCIN

10
EJEMPLARES Y ESQUEMAS

Un ejemplar es la coleccin total de datos almacenada en la


base de datos en un momento dado.

El esquema es el diseo general de la base de datos. Segn


ORACLE, es la definicin de un conjunto de objetos (archivo
de datos, tablespaces, tablas, vistas, ndices, otros) que
pertenecen a un usuario X en la base de datos. Se divide
fsico, lgico y de vistas.

11
MODELOS DE DATOS

Es una coleccin de herramientas conceptuales que


describen los datos, sus relaciones, su semntica, y las
restricciones de consistencia.
Los modelos de datos permiten describir el diseo de las
bases de datos en sus distintos niveles fsico, lgico y de
vistas.
Relacional
Entidad- relacin
Orientado a Objetos
Semiestructurados

12
LENGUAJE DE BASE DE DATOS

En un sistema de base de datos se proporciona un lenguaje de


definicin de datos para especificar el esquema de la base de datos
y un lenguaje de manipulacin de datos para expresar las consultas
y las modificaciones de las base de datos

Tipos de Acceso en un Lenguaje de Manipulacin:


La recuperacin de la informacin almacenada en la base de datos
La insercin de la informacin nueva en la base de datos
El borrado de la informacin de la base datos
La modificacin de la informacin almacenada en la base de datos.

Tipo de Lenguaje de manipulacin:


Procedimentales:
Declarativos (no procedimentales)

13
Un Lenguaje de Definicin de Datos se usa para especificar mas
propiedades de los datos, adems los esquemas de base de datos se
especifican mediante un conjunto de definiciones expresadas
mediante este lenguaje.

La estructura de almacenamiento y los mtodos de acceso usados por


el sistema de base de datos especifican mediante un conjunto de
instrucciones en un tipo especial de LDD denominando lenguaje de
almacenamiento y definicin de datos. Los valores de los datos
almacenados en la base de datos deben satisfacer ciertas
restricciones de consistencia.

En el sistema de base de datos se concentra en las restricciones de


integridad que pueden comprobarse con una sobrecarga minina:

Restricciones de dominio.
Integridad referencial.
Asertos.
Autorizacin.
14
Base de Datos Relacionales

Base de datos relacionales se basen en modelo relacional y se usan


un conjunto de tabla para representar tanto los datos como las
relaciones entre ellos.

Tablas tiene varias columnas, y cada columna tiene un nombre nico.


Lenguaje de definicin de datos ofrece un LDD elaborado que permite
definir tablas, restricciones de integridad, asertos.
create table cuenta
(
numero_cuentas varchar(24),
Saldo integer
)

15
Acceso a la base de Datos desde los
programas de aplicacin
Los programas de aplicacin son programas que se usan para
interactuar de esta manera con las base de datos.
Para tener acceso a la base de datos, las instrucciones deben
ejecutar desde el lenguaje que se est utilizando. Hay dos maneras
para acceso.

Proporcionando una interfaz de programas de aplicacin (conjunto


de procedimiento) que se pueda usar para enviar instrucciones
lenguaje de manipulacin de datos y lenguaje de definicin de datos
a la base de datos y recuperar los resultados.

El estndar de conectividad abierta de base datos(ODBC, Open Data


Base Connectivity)
Extendiendo la sintaxis del lenguaje anfitrin para que incorpore las
llamadas LMD dentro del programa del lenguaje anfitrin.
16
DISEO DE BASE DE DATOS

Creado para la gestin de grandes cantidades de informacin, que no


existen aisladamente que a su vez forman parte del funcionamiento de
alguna entidad, cuando el producto final de esta informacin es
obtenida de algn dispositivo servicio.

17
PROCESO DE DISEO

El primer paso es documentar y definir los requisitos de datos de los


usuarios, como resultado del levantamiento de requerimientos.

El siguiente paso es la seleccin de un modelo de datos, con el cual se


confecciona un esquema conceptual de la base de datos, ofreciendo
una visin general de la empresa.

A continuacin se revisa a detalle los requisitos para evitar


redundancias y posibles conflictos llevndonos una obligada edicin
del esquema conceptual donde se agregan o eliminan conceptos.

18
PROCESO DE DISEO

Luego de un correcto esquema de conceptos se establece la


descripcin, es decir atributos de datos y relaciones entre s. Mediante
distintos modelos.
Modelo de Entidad Relacin.

Modelo de Normalizacin.

Finalmente se relaciona el esquema conceptual con el modelo de


implementacin de datos del sistema de base de datos que se va a
usar. Y se especifican caractersticas fsicas de la base de datos.

19
MODELO ENTIDAD - RELACIN

Esta basado en una percepcin del mundo real que consiste en un


conjunto entidades, y las relaciones entre esos objetos.

Entidad es un objeto del mundo real que es distinguible de otros


objetos.
Las entidades se describen en las bases de datos mediante un
conjunto de atributos.
Una relacin es una asociacin entre varias entidades.

20
DIAGRAMA ENTIDAD - RELACIN

Atributos Relacin Entidades

21
NORMALIZACIN

El objetivo es generar un esquema de relaciones que permita almacenar


informacin sin redundancias innecesarias, pero que tambin permita
recuperar informacin fcilmente.

El enfoque es:
Disear esquemas que se hallan en la forma normal

implementar dependencias funcionales

Se desea evitar:
Repetir informacin

Imposibilidad de representar determinada informacin.

22
MODELO DE DATOS RELACIONAL
ORIENTADO A OBJETOS

El modelo orientado a objetos se puede observar como una extensin del


modelo E-R con las nociones de encapsulacin, mtodos (funciones) e
identidad de objeto. Combina las caractersticas del modelo de datos
orientado a objetos y el modelo de datos relacional.

23
MODELOS DE DATOS
SEMIESTRUCTURADOS

Los modelos de datos Los modelos de datos semiestructurados permiten la


especificacin de datos donde los elementos de datos individuales del
mismo tipo pueden tener diferentes conjuntos de atributos. Esto es
diferente de los modelos de datos mencionados anteriormente.

24
GESTOR DE ALMACENAMIENTO

Es un mdulo de programa que proporciona la interfaz entre los datos


de bajo nivel en la base de datos y los programas de aplicacin y
consultas emitidas al sistema, El gestor de almacenamiento es
responsable de la interaccin con el gestor de archivos.

25
GESTOR DE AUTORIZACIN E INTEGRIDAD

Comprueba que se satisfagan las restricciones de integridad y la


autorizacin de los usuarios para acceder a los datos.

26
GESTOR DE TRANSACCIONES
Asegura que la base de datos quede en un estado consistente a pesar
de los fallos del sistema, y que las ejecuciones de transacciones
concurrentes ocurran si conflictos.

El objetivo de la gestin de transacciones es asegurar las propiedades


de atomicidad y durabilidad es responsabilidad del propio sistema de
bases de datos.

Gestiona la reserva de espacio de almacenamiento de disco y las


estructuras de datos usadas para representar la informacin
almacenada en disco.

27
GESTOR DE LA MEMORIA INTERMEDIA

Es responsable de traer los datos del disco de almacenamiento a


memoria principal y decidir qu datos tratar en memoria cach. Es una
parte crtica del sistema de bases de datos, ya que permite que la base
de datos maneje tamaos de datos que son mucho mayores que el
tamao de la memoria principal.

28
ESTRUCTURAS DE DATOS UTILIZADAS COMO
PARTE DE LA IMPLEMENTACIN FSICA DEL
SISTEMA

Archivos de datos, que almacenan la base de datos en s.


Diccionario de datos, que almacena metadatos acerca de la
estructura de la base de datos, en particular, el esquema de la
base de datos.
ndices, que proporcionan acceso rpido a elementos de datos
que tienen valores particulares.

29
PROCESADOR DE CONSULTAS

Intrprete del LDD, que interpreta las instrucciones del LDD y


registra las definiciones en el diccionario de datos.
Compilador del LMD, que traduce las instrucciones del LMD en un
lenguaje de consultas a un plan de evaluacin que consiste en
instrucciones de bajo nivel que entiende el motor de evaluacin de
consultas.
Motor de evaluacin de consultas, que ejecuta las instrucciones
de bajo nivel generadas por el compilador del LMD.

30
TRANSACCIONES
Es una coleccin de operaciones que se lleva a cabo como una nica
funcin lgica en una aplicacin de bases de datos. Cada transaccin
es una unidad de atomicidad y consistencia
Atomicidad: las transacciones deben ejecutarse por completo o no
ocurrir para nada.

Consistencia: la ejecucin de una transaccin debe preservar en todo


momento la consistencia de la base de datos.

Aislamiento: la ejecucin de una transaccin no debe afectar la


ejecucin de otra transaccin. Cada transaccin debe ejecutarse de
forma independiente a las otras.

Durabilidad: los datos y resultados de una transaccin deben persistir,


a pesar de la posibilidad de fallo del sistema.

31
RECUPERACIN DE FALLOS

Detectar los fallos del sistema y restaurar la base de datos


al estado que exista antes de que ocurriera el fallo.

Su funcin es controlar la interaccin entre las


transacciones concurrentes para asegurar la consistencia
de la base de datos.

32
33
ARQUITECTURA DE LAS BASES DE DATOS

Los sistemas de base de datos pueden estar centralizados o ser del


tipo cliente-servidor, en los que una maquina servidora ejecuta el
trabajo en nombre de maquinas clientes.

La mayor parte de los usuarios de los sistemas de bases de datos no


esta presente en el lugar fisico en que se encuentra el sistema de base
de datos, sino que se conectan a el a travez de una red.

Las aplicaciones de bases de datos suelen dividirse en dos o tres


partes.
ARQUITECTURA DE DOS CAPAS

En la arquitectura de dos capas, la aplicacin se divide en un


componente que reside en la maquina cliente, que llama a la
funcionalidad del sistemas de base de datos en la maquina
servidora mediante instrucciones del lenguaje de consultas. Los
estndares de interfaces de programas de aplicacin como ODBC y
JDBC se usan para la interaccin entre el cliente y el servidor.
ARQUITECTURA DE TRES CAPAS

Arquitectura de tres capas, la maquina cliente acta simplemente como


una parte visible al usuario y no contiene ninguna llamada directa a la
base de datos.

Las aplicaciones de tres capas resultan ms adecuadas en aplicaciones


de gran tamao y para las aplicaciones Web
USUARIOS Y ADMINISTRADORES DE BASE DE
DATOS
Uno de los objetivos principales de las bases de datos es recuperar
informacin de la base de datos y almacenar en ella informacin nueva.

En general esto incluye:

Recuperabilidad: Crear y probar Respaldos

Integridad: Verificar ayudar a la verificacin en la integridad de datos

Seguridad: Definir y/o implementar controles de acceso a los datos


USUARIOS Y ADMINISTRADORES DE BASE DE DATOS

Disponibilidad: Asegurarse del mayor tiempo de


encendido
Desempeo: Asegurarse del mximo desempeo incluso
con las limitaciones
Desarrollo y soporte a pruebas: Ayudar a los
programadores e ingenieros a utilizar eficientemente la
base de datos
USUARIOS DE BASE DE DATOS

Usuarios Normales
Programadores de aplicaciones
Usuarios sofisticados
Usuarios especializados
ADMINISTRADOR DE BASE DATOS

Sus funciones principales son:

Definicin de esquema:
Es el esquema original de la base de datos se crea escribiendo un
conjunto de definiciones que son traducidas por el compilador de DDL a
un conjunto de tablas que son almacenadas permanentemente en el
diccionario de datos.

Definicin de la estructura de almacenamiento del mtodo de


acceso:
Estructuras de almacenamiento y de acceso adecuados se crean
escribiendo un conjunto de definiciones que son traducidas por el
compilador del lenguaje de almacenamiento y definicin de datos
ADMINISTRADOR DE BASE DATOS

Concesin de autorizacin para el acceso a los datos:


Permite al administrador de la base de datos regular las partes de las
bases de datos que van a ser accedidas por varios usuarios.

Especificacin de limitantes de integridad:


Es una serie de restricciones que se encuentran almacenados en una
estructura especial del sistema que es consultada por el gestor de base
de datos cada vez que se realice una actualizacin al sistema.
HISTORIA DE LOS SISTEMAS DE BASE DE DATOS

Las Dcadas ms importantes:


En los principios de la dcada de 1980 las bases de datos relacionales
llegaron a competir con los sistemas de bases de datos jerrquicas y de
red incluso en el rea de rendimiento.
En la dcada de 1980, el modelo relacional ha conseguido el reinado
supremo entre todos los modelos de datos.
Principios de la dcada de 1990. El lenguaje SQL se dise
fundamentalmente para las aplicaciones de ayuda a la toma de
decisiones, que son intensivas en consultas.
Finales de la dcada de 1990. El principal acontecimiento fue el
crecimiento explosivo de World Wide Web.
43