Download BASES DE DATOS Introducción

Document related concepts

Lenguaje de definición de datos wikipedia , lookup

Base de datos wikipedia , lookup

SQL wikipedia , lookup

Base de datos distribuida wikipedia , lookup

Transacción (base de datos) wikipedia , lookup

Transcript
BASES DE DATOS
Conceptos Básicos
Paulo César Acosta Lozano
[email protected]
301 497 2934 – 315 714 5518
Bases de datos I
Tecnológico San Agustín
1
Un poco de historia …
Sistemas de archivos:
 Surgieron a raíz de la necesidad de almacenamiento de la
información para su correspondiente reutilización
(persistencia)
Desventajas:
 Redundancia de los datos
 Los archivos están separados unos de otros
(no se pueden “combinar” fácilmente)
 Alto costo para la propagación de cambios
 Inconsistencia debido a actualizaciones simultáneas
Bases de datos I
2
Un poco de historia …
Procesamiento
de
Usuario del
Archivo de Clientes
Clientes
Archivo
de
Clientes
Procesamiento
de
Préstamos
Usuario del
Archivo de Préstamos
Archivo
de
Préstamos
Por cada préstamo se guarda la información
del cliente correspondiente: Redundancia
Bases de datos I
3
Un poco de historia …
¿Por qué surgieron los sistemas de Bases de
Datos?
 Necesidad de solucionar las debilidades de los
sistemas de archivos
 Capacidades:





Bases de datos I
Manejo de persistencia
Soporte por lo menos de un modelo de datos
Soporte de un lenguaje de alto nivel que permita
manipular y definir la estructura de la información
Control de acceso
Evitar inconsistencias al compartir la información
4
… Antes
Dpto. Personal
Empleados
Dpto. Ventas
Clientes
Ventas
Dpto. Contabilidad
Cuentas
Inventario
Personal
Ventas
Contabilidad
Bases de datos I
… Ahora
SGBD
BASE DE DATOS
Empleados
Clientes
Ventas
Inventario
Cuentas
5
Definición

Una base de datos es un conjunto
estructurado de datos coherentes
Colección disponible de
información
Bases de datos I
6
Definición

Una base de datos es un conjunto
estructurado de datos coherentes
Colección organizada en
subconjuntos, en función de
ligas y de relaciones entre las
diferentes informaciones
(estructura lógica)
Bases de datos I
7
Definición

Una base de datos es un conjunto
estructurado de datos coherentes
No hay contradicción entre los
datos ligados, no hay pérdida de
información, aun sabiendo que
hay una utilización compartida
de los datos entre varios
usuarios
Bases de datos I
8
Definición

Un Sistema de Gestión de Bases de
Datos (SGBD) es un software que
permite manipular las bases de datos
•Construir
•Utilizar
•Mantener
•Reorganizar
Bases de datos I
9
Sistema de Gestión de Bases de Datos

Propiedades fundamentales






Independencia de los datos (OJO es muy importante)
Acceso eficiente a los datos
Integridad y seguridad de los datos
Administración de los datos
Acceso concurrente y recuperación en caso de « crash »
Los SGBD deben cumplir con las propiedades ACID para las
transacciones:
Atomicity (Atomicidad: las transacciones son atómicas)
Consistency (Consistencia: una transacción transforma
un estado consistente de la BD en otro)
Isolation (Aislamiento: las transacciones están aisladas
entre si)
Durability (Durabilidad: después que una transacción ha
sido confirmada ella persiste)
Bases de datos I
10
Algunas definiciones

Esquema de una Base de Datos: Cuando una base de
Datos es diseñada interesa definir una estructura para ésta.
Esta estructura permanece “estática” durante un gran período
de tiempo, aunque puede sufrir modificaciones ocasionales

Instancia: Es la información 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)
Bases de datos I
11
Algunas definiciones



Usuario final: El que interactúa con la base de
datos, por lo general a través de aplicaciones e
interfaces
Usuario especialista: El que diseña y programa
aplicaciones para usuarios finales.
DBA (Database Administrator): El que
administra la base de datos. ¿Qué hace?
Bases de datos I
12
Funciones y componentes principales de un
SGBD
Peticiones
Peticiones
Esquemas
externos
DML planeadas
DML No planeadas
Procesador
DML
Procesador
Lenguaje
Consulta
Peticiones
compiladas
Procesador
DDL
Optimizador
Esquemas y
transformaciones
DDL: lenguaje de definición de datos
DML: lenguaje de manipulación de datos
Peticiones
optimizadas
Manejador de transacciones
Manejador de almacenamiento
Bases de datos I
Datos
y
Metadatos
Base de datos
Universidad Nacional de Colombia
Fuente: “Introducción a los
sistemas de bases de
datos” C.J. Date
13
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. Almacena la información que permite la
traducción entre los 3 niveles de la Arquitectura ANSI/SPARC*
Optimizador de consultas: Define el plan de ejecución de
operaciones solicitadas por los usuarios, de tal manera que se
lleven a cabo de la manera más eficiente posible
Manejador de transacciones:
Controla el acceso y la
concurrencia de operaciones
*Se verá mas adelante en el curso
Bases de datos I
14
Componentes funcionales de un SGBD

Manejador de almacenamiento tiene dos
componentes:
-Manejador de archivos  recupera desde disco
los bloques que contienen la información solicitada
por una transacción.
-Manejador de buffer  mantiene en memoria
principal la información más usada y decide cuando
llevar a disco alguno de sus bloques.
Bases de datos I
15
SGBD - Funciones

Soporta DML: Lenguaje para actualización,
almacenamiento y recuperación de datos



Ofrece optimización en la búsqueda de la
información
Soporta DDL : Lenguaje para definir los datos
Metadatos (DD): Catálogo autodescriptivo,
información sobre los objetos existentes en el
sistema  Datos sobre los datos
Bases de datos I
16
Ventajas de un SGBD
1.
2.
3.
4.
5.
Reutilización de datos y programas
Control de redundancia
Estandarización ¿En qué sentido?
Consistencia (No hay redundancia)
Es posible equilibrar las cargas de los
requerimientos (establecer prioridades)
Bases de datos I
17
Ventajas de un SGBD
6.
7.
8.
9.
Integridad (Se cumplen las reglas
establecidas  ¿Por quién?)
Seguridad
Rapidez de desarrollo
Mantenimiento y reingeniería: cambios en la
estructura de datos sin cambiar los
programas que los usan (hasta cierto punto)
Bases de datos I
18
Desventajas de un SGBD
1.
2.
3.
4.
Tamaño
Susceptibilidad a fallas (Discutible)
Complejidad en la recuperación a fallas
(Discutible)
Puede llegar a trabajar en forma “lenta”
debido a la cantidad de verificaciones que
debe hacer
Bases de datos I
19