Vous êtes sur la page 1sur 52

BASE DE DATOS

Una base de datos es un conjunto estructurado de datos


coherentes
Coleccin disponible de
informacin
Definicin
Una base de datos es un conjunto estructurado de datos
coherentes
Coleccin organizada en
subconjuntos, en funcin de
relaciones entre las
diferentes informaciones
(estructura lgica)
Definicin
Una base de datos es un conjunto estructurado de datos
coherentes
No hay contradiccin entre los
datos ligados, no hay prdida de
informacin, aun sabiendo que
hay una utilizacin compartida
de los datos entre varios
usuarios
Definicin
Un Sistema de Gestin de Bases de Datos (SGBD) es un software
que permite manipular las bases de datos
Construir
Utilizar
Mantener
Reorganizar
Sistema de Gestin de Bases de Datos
Propiedades fundamentales
Independencia de los datos
Acceso eficiente a los datos
Integridad y seguridad de los datos
Administracin de los datos
Acceso concurrente y recuperacin en caso de crash
Los SGBD deben cumplir con las propiedades ACID para las transacciones:
Atomicity (Atomicidad: las transacciones son atmicas)
Consistency (Consistencia: una transaccin transforma un
estado consistente de la BD en otro)
Isolation (Aislamiento: las transacciones estn aisladas entre si)
Durability (Durabilidad: despus que una transaccin ha sido
confirmada ella persiste)
Definiciones
Esquema de una Base de Datos: Cuando una base de Datos es
diseada interesa definir una estructura para sta.
Esta estructura permanece esttica durante un gran perodo de
tiempo, aunque puede sufrir modificaciones ocasionales
Instancia: Es la informacin que en un determinado instante del
tiempo posee la base de datos y que cambia permanentemente
(excepto en algunos tipos de bases de BD particulares)
Definiciones
Usuario final: El que interacta con la base de datos,
por lo general a travs de aplicaciones e interfaces
Usuario especialista: El que disea y programa
aplicaciones para usuarios finales.
DBA (Database Administrator): El que administra la
base de datos. Qu hace?
Componentes funcionales de un SGBD
Metadatos o Diccionario de Datos (D.D): Contiene el esquema de la
B.D, los usuarios, los permisos de acceso, etc. Son datos sobre los
datos. Optimizador de consultas: Define el plan de ejecucin de
operaciones solicitadas por los usuarios, de tal manera que se lleven
a cabo de la manera ms eficiente posible
Manejador de transacciones: Controla el acceso y la concurrencia de
operaciones
Componentes funcionales de un SGBD
Manejador de almacenamiento tiene dos
componentes:
-Manejador de archivos recupera desde disco los
bloques que contienen la informacin solicitada por
una transaccin.
-Manejador de buffer mantiene en memoria
principal la informacin ms usada y decide cuando
llevar a disco alguno de sus bloques.
SGBD - Funciones
Soporta DML: Lenguaje para actualizacin,
almacenamiento y recuperacin de datos
Ofrece optimizacin en la bsqueda de la
informacin
Soporta DDL : Lenguaje para definir los datos
Metadatos (DD): Catlogo autodescriptivo,
informacin sobre los objetos existentes en el
sistema Datos sobre los datos
Ventajas de un SGBD
1. Reutilizacin de datos y programas
2. Control de redundancia
3. Estandarizacin
4. Consistencia (No hay redundancia)
5. Es posible equilibrar las cargas de los requerimientos (establecer
prioridades)
Ventajas de un SGBD
6. Integridad (Se cumplen las reglas establecidas)
7. Seguridad
8. Rapidez de desarrollo
9. Mantenimiento y reingeniera: cambios en la estructura de datos sin
cambiar los programas que los usan (hasta cierto punto)
Desventajas de un SGBD
1. Tamao
2. Susceptibilidad a fallas
3. Complejidad en la recuperacin a fallas
4. Puede llegar a trabajar en forma lenta debido a la cantidad de
verificaciones que debe hacer
Nivel de Visin
Externo
El ms cercano a los usuarios finales
Percepcin de la base de datos por parte de los usuarios finales
Tantas visiones como tipos de usuarios
Cada visin de usuario final se puede caracterizar como un
subesquema
Nivel de Visin
Cada visin puede proporcionar diferentes
representaciones de los mismos datos
Visin Vendedor
Fechas con formato:
(dd-mm-yy)
Visin Contador
Fechas con formato:
(yyyy-dd-mm)
BD
Nivel de Visin
Algunas visiones de usuario pueden incluir:
Datos Agrupados: Totales por Dpto.
Datos Derivados:
Sueldo total = bsico + comisin
Datos Calculados:
Edad de una persona (inferida a partir de su fecha de Nacimiento)
Nivel de Visin
Los conceptos de dato derivado y calculado podran usarse
indistintamente para significar, en general, que un dato se genera a
partir de otro(s)
Pueden haber a su vez datos agregados derivados, datos agregados
calculados etc.
Nivel Conceptual
Mediador entre los otros 2 niveles
Interesante para el usuario especialista
Se ocupa de los datos almacenados en la base de datos
fsica y las relaciones entre ellos
Descripcin semntica de los datos que conforman la
base de datos
Soporta a cada visin de usuario externa
Nivel Conceptual
Es una visin completa de todos los requerimientos y elementos
de inters para la organizacin
Debe incluir restricciones sobre los datos
La descripcin del nivel conceptual no debe tener detalles
dependientes del almacenamiento*
Tiene asociado un lenguaje de alto nivel
Nivel Fsico
Interno
Ms cercano a la mquina
Interesa al Administrador y al usuario Especialista
Esquema fsico: Descripcin y tipos de datos: tamao y precisin, tipos
de ndices y de estructuras de almacenamiento concretas que se
manejan, de acuerdo con un SGBD particular
Nivel Fsico
Describe cmo los datos son almacenados en trminos de estructuras de
datos particulares
Se encarga de:
- Reservar espacio para datos e ndices
- Compresin de datos
- Tcnicas de encriptamiento de datos
Independencia de los datos
Es uno de los objetivos de la arquitectura ANSI/SPARC
Permite modificar la definicin de un nivel sin afectar (en lo
posible) el nivel inmediatamente superior
Sin independencia de datos se requerira mucho esfuerzo
para cambiar las aplicaciones de tal forma que se adaptasen
a la nueva estructura de la base de datos.
Hay dos tipos: fsica y lgica
Independencia de los datos
Fsica: inmunidad que tienen los usuarios y las aplicaciones ante los
cambios en la forma de almacenar fsicamente los datos.
Conceptual o lgica: inmunidad que poseen los usuarios y las
aplicaciones ante los cambios en la estructura lgica de la base de
datos
Independencia Fsica
Se presenta entre el nivel conceptual y el nivel fsico
Un cambio en el esquema fsico (usar otras estructuras de
almacenamiento) no conduce a cambios en el esquema
conceptual
Ej. Cambio en la forma de almacenar un ndice: B+ por
Hashing, con qu propsito se hace un cambio de este
tipo?
Inmunidad del esquema conceptual ante cambios del
esquema fsico
Independencia Lgica
Se presenta entre el nivel de visin y el nivel conceptual
Significa que un cambio en el nivel conceptual no debe conllevar a un
cambio en el nivel de visin
Es ms difcil de lograr. Por qu?
Independencia Lgica
Algunos de los posibles cambios en el nivel conceptual:
Adicin de nuevos elementos (atributos, entidades etc.)
Eliminacin de elementos Puede afectar a los subesquemas
externos
Tendencias de los SGBD
Sistemas para el soporte para toma de decisiones (Data
Warehouse) y/o con capacidades deductivas y bases de datos
temporales
Manejar informacin multimedial: Imgenes, audio, videos
Bases de datos orientadas a objetos y objeto-relacionales
Manejar informacin georeferenciada: Sistemas de Informacin
Geogrficos (SIG)
Manejo de informacin documental: Motores de bsqueda,
sistemas para el manejo de documentos.
Bases de datos nativas para XML
NORMALIZACIN
La normalizacin es el proceso de organizar los datos en una
base de datos. Esto incluye la creacin de tablas y que
establece relaciones entre aquellas tablas segn reglas
diseadas para proteger los datos y hacer la base de datos
que es ms flexible al eliminar redundancia y dependencia
incoherente.
Los datos redundantes desperdician espacio en disco y crean
problemas de mantenimiento. Si es necesario cambiar datos
que aparecen en ms de un sitio, el cambio deber ser
exactamente igual en todos estos sitios. Por ejemplo, un
cambio de direccin de un cliente es mucho ms fcil de
implementar si los datos slo se almacenan en la tabla
Clientes y en ningn otro lugar de la base de datos.
Primera forma normal
Eliminar grupos repetidos en tablas individuales.
Crear una tabla diferente para cada conjunto de datos relacionados.
Identificar cada conjunto de datos relacionados mediante una clave
principal.
No utilizar varios campos en una nica tabla para almacenar datos
similares.
Segunda forma normal
Crear tablas independientes para conjuntos de valores que se
apliquen a varios registros.
Relacionar dichas tablas mediante una clave externa.
Los registros tan slo deben depender de la clave principal de una
tabla (si es necesario, puede ser una clave compuesta).
Tercera forma normal
Eliminar los campos que no dependan de la clave. Los valores de un
registro que no forman parte de la clave de dicho registro no pertenecen
a esa tabla. En general, siempre que el contenido de un grupo de
campos se puede aplicar a ms de un registro de la tabla, debe tener en
cuenta la posibilidad de incluir dichos campos en una tabla
independiente.
EXCEPCIN: No es prctico siempre cumplir la forma tercera normal
tericamente conveniente. Si tiene una tabla Clientes y desea eliminar
todas las posibles dependencias entre campos, debe crear tablas
independientes para ciudades, cdigos postales, representantes de
ventas, clases de clientes y cualquier otro factor que pueda aparecer
duplicado en varios registros. En teora, la normalizacin merece la pena.
Sin embargo, la utilizacin de un gran nmero de tablas pequeas puede
perjudicar el rendimiento o superar la capacidad de memoria y de
archivos abiertos del sistema.
Ver archivo que se adjunta: BD EJEMPLO DE NORMALIZACION.docx
En el mundo actual,
diversos tipos de personas,
en varios lugares a nivel
mundial, querrn compartir
un gran base de datos, estas
empresas que tienen la
finalidad de garantizar el
BASES DE DATOS DISTRIBUIDAS
compartimiento de los archivos de los usuarios optan por dividir
esta base de datos en unas ms pequeas denominados
fragmentos, los cuales se pueden colocar en distintas ubicaciones.
BASES DE DATOS DISTRIBUIDAS
Entonces llamamos base de datos distribuidas a los
fragmentos que se encuentran almacenados en lugares
distintos.
Estos sitios constan
con una computadora y
una DBMS (Sistema de
gestin de base de
datos), para administrar
la base local situada conectndose entre s aquellos
fragmentos de una base distribuida por medio de una red
de comunicacin.
Al momento de surgir una peticin de consulta de cualquier sitio,
el administrador general de la base de datos, analiza esta peticin
y determina qu tipo de base de datos distribuidas (fragmentos) se
puede necesitar.
Las bases de datos locales pueden conectarse fsicamente de
diversas formas:
BASES DE DATOS DISTRIBUIDAS
Red totalmente conectada
Red prcticamente conectada
Red con estructura de rbol
Red de estrella
Red de anillo
BASES DE DATOS DISTRIBUIDAS
Las principales diferencias entre estos tipos de
configuraciones podemos tener lo siguiente:
Costo de la instalacin: El costo de conectar
fsicamente las localidades del sistema
Costo de la comunicacin: El costo del tiempo y el
dinero que interviene en enviar un mensaje desde una
localidad a otra.
Fiabilidad: La frecuencia con que falla una lnea de
comunicacin o una localidad.
Disponibilidad: La posibilidad de acceder a la
informacin a pesar que podran existir los fallos en
algunas localidades o lneas de comunicacin.
CONSTRUCCIN DE UNA BASE DE DATOS DISTRIBUIDA
BASES DE DATOS DISTRIBUIDAS
Base distribuida
particionada: una
base de datos
global se divide en
tres partes (A, B,
C), donde cada
una de las bases
se almacena en
lugares diferentes.
CONSTRUCCIN DE UNA BASE DE DATOS DISTRIBUIDA
Base de datos
multiplicada y
distribuida: las bases
de datos se duplican en
cada sitio, con el
objetivo de reducir
costos de
comunicacin y
aumentar el
desempeo del
sistema, eliminando la
necesidad de la
transmisin de datos
en las diferentes
ubicaciones.
BASES DE DATOS DISTRIBUIDAS
Este sistema es raro por su costo de las replicas de
sus bases y el proceso de la actualizacin de los
datos
Distribucin de la base de datos
combinando replicas y
particiones: en la actualidad este
tipo de distribucin se emplea
con mayor frecuencia. El archivo
se divide basndose en el patrn
que usa, es decir los datos se
guardan en los lugares donde
puede ser accedido con ms
frecuencia, pero si requiere un
dato en ms de un sitio, este
fragmento puede estar
almacenado en cada uno de
estos sitios.
BASES DE DATOS DISTRIBUIDAS
CONSTRUCCIN DE UNA BASE DE DATOS DISTRIBUIDA
Ventajas de las bases de datos distribuidas.
BASES DE DATOS DISTRIBUIDAS
Compartimiento de datos: los usuarios de una base
pueden tener acceso a los datos de otra base. Por
ejemplo desde una oficina de una empresa matriz en el
caso del gerente puede tener acceso a los datos de
todos sus trabajadores y de otros tambin en una
empresa sucursal de la misma.
Autonoma: existe un administrador del sistema responsable
del nivel de seguridad global cada base tiene un cierto grado de
control, en cada base hay otro administrador local que puede
tener a llegar un cierto nivel de autonoma diferente
BASES DE DATOS DISTRIBUIDAS
Ventajas de las bases de datos distribuidas.
Disponibilidad: si en sistema de base de datos distribuidos llega a
fallar un fragmento los otros fragmentos pueden seguir
funcionando. Los datos tambin pueden llegar a duplicarse en los
fragmento llegando a encontrar los datos con ms facilidad.
BASES DE DATOS DISTRIBUIDAS
El sistema debe detectar el fallo y tomar medidas necesarias para reparar el fallo,
en este momento el sistema no debe utilizar la base daada, una vez arreglado el
fallo debe necesitar un mecanismo para integrarla al sistema de nuevo, pero con
menos complicaciones.
Ventajas de las bases de datos distribuidas.
BASES DE DATOS DISTRIBUIDAS
Desventajas de las bases de datos
distribuidas
Costo del desarrollo del software: sistema complejo para
mantener la coordinacin y estabilidad entre los fragmentos
provoca que este desarrollo sea costoso
Mayor probabilidad de errores: como las bases locales
funcionan en paralelo, es ms difcil asegurar el funcionamiento
correcto y los procedimientos de recuperacin de fallos del
sistema.
Mayor sobrecarga de procesamiento: el intercambio de
archivos, mensajes y la ejecucin de algoritmos que constituyen
el funcionamiento de las bases locales da como resultado una
sobrecarga que no se da en los sistemas centralizados.
BASES DE DATOS DISTRIBUIDAS
Desventajas de las bases de datos
distribuidas
Actualizacin de los datos duplicados: algunos datos pueden
estar duplicados en varios sitios, por lo tanto este tipo de
actualizacin se debe llegar a cabo en todos los lugares que exista
datos duplicados
Transparencia de ubicacin: la mayora de este tipo de sistemas
no alcanzan su completa transferencia de su ubicacin, por lo tanto
requieren de la ayuda del usuario, transfiriendo archivos para su
procesamiento local.
Optimizacin de los procesos de consulta: cuando existe una
consulta en un sistema distribuido, existe muchas manera de que
esta consulta se divida en subpreguntas para recuperar los datos
en las diferentes bases locales, este tiempo vara dependiendo de
la ruta donde este el procedimiento
Arquitectura Cliente-Servidor.
Vistas
Vistas
Esquema conceptual
Esquema Interno
Nivel
Externo
Nivel
Conceptual
Nivel
Interno
Correspondencia
Externo/Conceptual
Correspondencia
Conceptual/Interno
Arquitectura de tres esquemas.
BASES DE DATOS DISTRIBUIDAS
Como trabaja?
El cliente analiza una consulta de usuario y la descompone
en varias consultas de sitio independientes. Cada consulta
de sitio se enva al correspondiente sitio servidor.
Cada usuario procesa las consultas locales y enva la
relacin resultante al sitio cliente.
El sitio cliente cambia los resultados de las subconsultas
para producir el resultado de la consulta original realizada.
BASES DE DATOS DISTRIBUIDAS
Segmentaciones de aplicaciones
entre Cliente y el Servidor.
Segmentos
Replicado de datos.
Fragmentos de los datos
Transparencia
Disponibilidad.
Paralelismo incrementado.
Sobrecarga incrementada durante
la actualizacin.
Fragmentacin Horizontal.
Fragmentacin Vertical.
Transparencia de la fragmentacin.
Transparencia de la replica.
Transparencia de la ubicacin.
BASES DE DATOS DISTRIBUIDAS
Integracin de datos
Vs
Distribucin de datos.
Desde el punto de vista funcional y de organizacin de datos,
los sistemas de datos distribuidos estn divididos en dos
clases separadas, basados en dos filosofas:
SMBDD Homogneos.
SMBDD Heterogneos.
BASES DE DATOS DISTRIBUIDAS
Homogneos: tienen mltiples conexiones de datos, integra
mltiples recursos de datos, pero en lugar de almacenarlos
todos en un solo lugar los datos son distribuidos en varios
sitios comunicados por una red.
Heterogneas: es aquel que se caracteriza por maneja
diferentes sistemas manejadores de BD en nodos locales para
el uso de mltiples BD existentes. Tambin se le conoce como
sistema de manejo multibases de datos.
BASES DE DATOS DISTRIBUIDAS
Diagrama de Integracin, Distribucin.
Usuario
Global
Usuario
Global
Sistema
de BDD
Usuario
Locales
Usuario
Locales
SW de
manejo de
datos
SW de
manejo de
datos
SW de
manejo de
datos
BD
BD BD
BASES DE DATOS DISTRIBUIDAS
Funciones del Cliente.
Consultar.
Modificar.
Borrar.
Agregar.
Copiar.
Genera la vista del usuario.
Seguridad.
BASES DE DATOS DISTRIBUIDAS
Recibe peticiones.
Procesa.
Administra.
Maneja diferentes nodos.
Interpreta.
Enva informacin.
Seguridad.
Administra la Concurrencia.
Mantiene la Integridad.
Manejo de BD.
Funciones del Servidor.
BASES DE DATOS DISTRIBUIDAS
Tipos de servidores.
Servidor de archivos: se almacenan archivos y aplicaciones.
Servidor de BD: se almacenan las BD, tablas, ndices, etc.
Servidor de transacciones: que cumple procesa todas las
transacciones.
Servidor de Groupware: Utilizado para el seguimiento de
aplicaciones dentro de la red.
Servidores de objetos: estos son videos, imgenes, objetos
multimedia en general.
Servidores WEB. Se usan como una forma inteligente para
comunicacin entre empresas a travs de Internet.
BASES DE DATOS DISTRIBUIDAS

Vous aimerez peut-être aussi