2. Introducción
Las bases de datos y su tecnología están teniendo un mayor impacto con el creciente
uso de los computadores. En realidad las bases de datos desempeñan un papel
fundamental en casi todas las áreas donde se utilizan computadoras, incluyendo
negocios, ingeniería, medicina, leyes, educación y biblioteconomía, etc.
Una base de datos es una colección de datos relacionados. Por datos, se quiere decir
que son hechos conocidos que pueden registrarse y que tienen un significado
implícito, pudiendo ser éstos: magnitudes numéricas, nombres o conjuntos de
símbolo, frases o incluso imágenes, sonidos, colores. Los datos por sí mismos no nos
permiten la adaptación de la decisión más conveniente por que no captan los
conocimientos necesarios.
El término base de datos suele ser restrictivo. Una base de datos tiene las siguientes
propiedades implícitas:
3. Una base de datos representa algunos aspectos del
mundo real, en ocasiones denominado minimundo o
Universo del discurso(UdD)
Una base de datos es una colección de datos relacionados con
significado inherente
Una base de datos se diseña, construye y puebla con datos para
propósito específico. Está destinada a un grupo de usuarios
concreto y tiene algunas aplicaciones preconcebidas en las
cuales están interesados dichos usuarios.
Una base de datos informatizada puede crearse y mantenerse
mediante un conjunto de programas de aplicación diseñados
específicamente para dicha tarea o bien mediante un sistema
de gestión de base de datos.
4. Definición de una base de datos
Es un conjunto de datos estructurados no redundante, organizados
independientemente de su utilización y su implementación en
maquina, accesibles en tiempo real y compatibles con usuarios
concurrentes con necesidad de información diferente y no
predicable en tiempo.
5. Objetivos de los sistemas de BD
• Redundancia de datos.
• Inconsistencia de datos.
• Dificultad para tener acceso a los datos.
• Aislamiento de los datos. (Varios arch.)
• Anomalías del acceso concurrente.
• Problemas de seguridad.
• Problemas de integridad.
6. ¿Que es un SGDB o DBMS?
• Consiste en una colección de datos
interrelacionados y un conjunto de
programas para acceder a estos datos.
• La colección de datos normalmente se llama
base de datos.
• Contiene información de una empresa
determinada.
7. Objetivo primordial de un
DBMS
• Es la de proporcionar un entorno que sea a
la vez conveniente y eficiente para ser
utilizado al extraer y almacenar información
de la base de datos.
• Los sistemas de base de datos están
diseñados para gestionar grandes bloques de
información.
8. Que implica esta gestión de
datos?
• Implica la definición de las estructuras para
el almacenamiento de información.
• Proveer mecanismos para la gestión de la
información.
• Mantener la seguridad de la información
almacenada.
9. Ejemplo de un SGBD
• Considerése una
empresa bancaria que
tiene cuentas de
ahorro de sus clientes
en archivos de
sistemas permanentes
en el banco.
• Tienen un programa
para hacer cargos o
abonos de la cuenta.
• Pro. Añadir una nueva
cuenta.
• Pro. P. Obtener saldo
de una cuenta.
• Generar estados
mensuales.
10. Estructura del sistema global
• Los componentes funcionales de un SGBD son:
– Gestor de archivos
– Gestor de base de datos.
– Procesador de consultas.
– Precompilador de DML
– Compilador de DML.
• Las estructuras de datos del sistema físico:
– Archivo de datos.
– Diccionario de datos.
– Índices
11. Almacenamiento en disco
Archivos
de datos
Diccionario
de datos
gestor
de archivos
gestor
de archivos
Codigo obj.
De prog. De aplic.
Precompilador
De LMD
Procesador
De consultas
Compilador
de LDD
Planificacion
de BD
Consulta
Programadores
de aplicación
Interfaces
de aplicación
Sistema de
Gestion de
Base de datos
Estructura
Del sistema
User left Programer User most Administ
12. Abstracción de datos:
Existen diferentes niveles de abstracción para
simplificar la interacción de los usuarios con el
sistema, estos son:
•Nivel físico, describe como se almacena los datos.
Describe en detalle la estructura.
•Nivel conceptual. Describe que datos y la relación
entre ellos.
•Nivel de visión. Describe sólo parte de la BD es el
más alto.
13. Nivel físico.
• Es la representación del nivel más bajo de
abstracción, en éste se describe en detalle la
forma en como de almacenan los datos en
los dispositivos de almacenamiento(por
ejemplo, mediante señaladores o índices
para el acceso aleatorio a los datos).
14. Nivel conceptual.
• El siguiente nivel más alto de abstracción, describe que datos son almacenados
realmente en la base de datos y las relaciones que existen entre los mismos,
describe la base de datos completa en términos de su estructura de diseño. El nivel
conceptual de abstracción lo usan los administradores de bases de datos, quienes
deben decidir qué información se va a guardar en la base de datos.
• Consta de las siguientes definiciones:
• Definición de los datos: Se describen el tipo de datos y la longitud de campo todos
los elementos direccionables en la base. Los elementos por definir incluyen
artículos elementales (atributos), totales de datos y registros conceptuales
(entidades).
• Relaciones entre datos: Se definen las relaciones entre datos para enlazar tipos de
registros relacionados para el procesamiento de archivos múltiples.
• En el nivel conceptual la base de datos aparece como una colección de registros
lógicos, sin descriptores de almacenamiento. En realidad los archivos conceptuales
no existen físicamente. La transformación de registros conceptuales a registros
físicos para el almacenamiento se lleva a cabo por el sistema y es transparente al
usuario.
•
15. Nivel de visión.
• Nivel más alto de abstracción, es lo que el usuario final puede visualizar del sistema terminado,
describe sólo una parte de la base de datos al usuario acreditado para verla. El sistema puede
proporcionar muchas visiones para la misma base de datos.
La interrelación entre estos tres niveles de abstracción se ilustra en la siguiente figura.
16. Niveles de abstracción de datos.
Vista n
Vista 2
Vista 1 ....
Nivel conceptual
Nivel físico
18. Módulo gestor de datos almacenados del SGBD. Controla el
acceso a la información del SGBD almacenada en el disco, bien
sea parte de la base de datos o del catálogo. Las líneas
punteadas y los círculos rotulados A, B, C, D, y E en la Figura
ilustran accesos que están bajo el control de este gestor de datos
almacenados. Este último puede emplear servicios básicos del
SO para transferir los datos de bajo nivel entre el disco y la
memoria principal del computador pero controla otros aspectos
de la transferencia de datos, como el manejo de los búferes en la
memoría principal. Una vez que los datos estén en dichos
búferes de la memoria principal, podrán ser procesados por
otros módulos del SGBD o por los programas de aplicación.
19. Compilador de LDD. Este componente procesa las definiciones de
esquemas especificadas en el LDD, almacena las descripciones de
los esquemas (metadatos) en el catálogo del SGBD.
Procesador de base de datos en tiempo de ejecución. Se encarga
de los accesos al catálogo durante la ejecución; recibe operaciones
de obtención o de actualización y las ejecuta sobre la base de
datos. El acceso al disco se tiene mediante el gestor de datos
almacenados.
Compilador de consultas. Maneja las consultas de alto nivel que
se introducen interactivamente. Analiza la sintaxis y compila la
consulta o la interpreta creando el código de acceso a la base de
datos, y luego genera llamadas al procesador en tiempo de
ejecución para ejecutar dicho código.
20. Cargos vinculados a un SGBD
Administrador de bases de datos
Diseñador de bases de datos
Usuarios finales
Analistas de sistemas y programadores
Diseñadores e implementadores del SGBD
Creadores de herramientas
Operadores y personal de mantenimiento
21. Administrador de bases de datos
Se encarga de autorizar el acceso a la base de datos, de
coordinar y vigilar su empleo, y de adquirir los recursos
necesarios de software y hardware.
Diseñador de bases de datos
Antes de implementar la base de datos identifica los datos
que se almacenarán y elige las estructuras apropiadas para
representar y almacenar dichos datos.
Cargos y Funciones vinculados a un SGBB
22. Usuarios finales
Son quienes tiene acceso a la base de datos para consultarla,
actualizarla y generar informes.
Este es el rol que más frecuentemente desempeña el Técnico
en Administración con relación de las Bases de Datos.
Cargos y Funciones vinculados a un SGBB
(cont.)
23. Analistas de sistemas y programadores
Los analistas y programadores para implementar las
especificaciones del sistema deben conocer a la perfección todas
las capacidades del SGBD. El Técnico en Administración que
integra un equipo de desarrollo interactúa con los analistas y
programadores.
Diseñadores e implementadores del SGBD
Se encargan de diseñar e implementar los módulos e interfaces
del SGBD en forma de paquetes de software.
Cargos y funciones vinculados a un SGBB
(cont.)
24. Creadores de herramientas
Desarrollan e implementar paquetes para diseñar bases de
datos, vigilar el rendimiento, proporcionar interfaces de
lenguaje natural o de gráficos, elaborar prototipos, realizar
simulaciones y generar datos de prueba.
Operadores y personal de mantenimiento
Tienen a su cargo el funcionamiento y mantenimiento reales
del entorno de hardware y software del sistema de base de
datos.
Cargos y funciones vinculados a un SGBB
(cont.)
25. Características deseables en un
SGBD
1. Restricción de los accesos no autorizados
2. Control de la redundancia
3. Almacenamiento persistente de objetos y estructuras de
datos de programas
4. Inferencias en la base de datos mediante reglas de
deducción
5. Suministro de múltiples interfaces con los usuarios
6. Representación de vínculos complejos entre los datos
26. Cumplimiento de las restricciones de integridad
Respaldo y recuperación
Potencial para imponer normas
Menor tiempo de creación de aplicaciones
Flexibilidad
Disponibilidad de información actualizada
Economías de escala
Características deseables en un SGBD
(cont.)
28. ¿Qué es modelo de datos?
Es una colección de herramientas conceptuales para
describir los datos, las relaciones que existen entre
ellos, semántica asociada a los datos y restricciones
de consistencia.
Los modelos de datos se dividen en tres grupos:
• Modelos lógicos basados en objetos.
• Modelos lógicos basados en registros.
• Modelos físicos de datos.
29. Modelos lógicos basados en
objetos
• Se usan para describir datos en los niveles
conceptual y de visión, es decir, con este modelo
representamos los datos de tal forma como
nosotros los captamos en el mundo real, tienen
una capacidad de estructuración bastante flexible y
permiten especificar restricciones de datos
explícitamente. Existen diferentes modelos de este
tipo, pero el más utilizado por su sencillez y
eficiencia es el modelo Entidad-Relación.
30. Modelos lógicos basados en registros.
• Se utilizan para describir datos en los niveles conceptual y
físico.
Estos modelos utilizan registros e instancias para representar
la realidad, así como las relaciones que existen entre estos
registros (ligas) o apuntadores. A diferencia de los modelos de
datos basados en objetos, se usan para especificar la estructura
lógica global de la base de datos y para proporcionar una
descripción a nivel más alto de la implementación.
• Los tres modelos de datos más ampliamente aceptados son:
• Modelo Relacional
• Modelo de Red
• Modelo Jerárquico
31. Modelos lógicos basados en
objetos.
Se usan para describir datos en los niveles
conceptual y de visión. Proporciona
capacidaad de estructuración flexible y
permite especificar restricciones de datos
explícitamente.
32. Modelo Orientado a Objetos
• Al igual que el modelo E-R el modelo orientado a objetos se basa en una
colección de objetos. Un objeto contiene valores almacenados en variables
instancia dentro del objeto. A diferencia de los modelos basados a registros,
estos valores son objetos por si mismos, así los objetos contienen objetos a un
nivel de anidamiento de profundidad arbitraria. Un objeto también contiene
partes de código que operan sobre el objeto. Estas partes se llaman métodos.
• Los objetos que contienen los mismos tipos de valores y los mismos métodos
se agrupan en clases, una clase puede ser vista como una definición de tipo
para objetos, esta combinación de datos y código en una definición de objeto
es parecida al concepto de tipos de datos en un lenguaje de programación.
• La única forma en la que un objeto puede acceder a los datos de otro objeto es
invocando a un método de ese otro objeto, esto se llama envío de u mensaje al
objeto. Así la interfaz de llamada de los métodos de un objeto de fine su parte
visible externamente. La parte interna del objeto (las variables de instancia y
el código de método) no son visibles externamente el resultado es dos niveles
de abstracción de datos.
33. El modelo entidad-relación
• El modelo entidad relación (E-R) se basa en
una percepción de un mundo real que
consiste en una colección de objetos básicos
llamados entidades, y relaciones entre estos
objetos.
• Una Entidad: es un objeto que es
distinguible de otros objetos por medio de
un conjunto específico de atributos.
34. • EL Atributo: son las características asociadas al
objeto.
• Una Relación: es una asociación entre varias
entidades.
• Conjunto de entidades: entidades del mismo
tipo.
• Conjunto de relaciones: relaciones del mismo
tipo.
35. • El modelo E-R represente ciertas
restricciones a las que deben ajustarse lo
contenidos de una BD. Una restricción
importante es la de cardinalidad de
asignación, que expresa el número de
entidades a las que puede asociarse otra
entidad mediante un conjunto de relación.
36. • La estructura lógica global de una BD puede
expresarse gráficamente por el diagrama E-R:
• Rectángulos: representan conjunto de
entidades.
• Elipses: representan atributos.
• Rombos: representan relaciones entre
conjuntos de entidades.
• Líneas: que conectan atributos a conjuntos de
entidades conjuntos de entidades a relaciones.
38. El modelo orientado a objetos
• Al igual que el anterior, se
basa en una colección de
objetos.
• Un objeto contiene valores
almacenados en variables
instancia dentro del objeto,
estos valores son objetos por
si mismos (objetos anidados a
nivel arbitrario a otros
objetos).
• Un objeto también tiene partes
de código que operan sobre el
objeto. Estas partes se llaman
métodos.
• Los objetos que contienen los
mismos tipos de valores y los
mismos métodos se agrupan en
clases. Una clase puede ser
vista como una definición de
tipo para objetos.
39. El modelo relacionnal
• El modelo relacional presenta los datos
y las relaciones entre los datos mediante
una colección de tablas, cada una de las
cuales tiene un número de columnas
con nombres únicos.
40. Ejemplo BD Relacional
N
o
m
b
re C
a
lle C
iu
d
a
d N
ú
m
e
ro
L
o
w
e
ly
S
h
iv
e
r
S
h
iv
e
r
H
o
d
g
e
s
H
o
d
g
e
s
M
a
p
le
N
o
rrth
N
o
rth
S
id
e
h
ill
S
id
e
h
ill
Q
u
e
e
n
s
B
ro
n
x
B
ro
n
x
B
ro
o
k
ly
n
B
ro
o
k
lin
9
0
0
5
5
6
6
4
7
8
0
1
6
4
7
N
ú
m
e
ro S
a
ld
o
9
0
0
5
5
6
6
4
7
8
0
1
5
5
1
0
0
0
0
0
1
0
5
3
6
6
1
0
5
3
3
41. El modelo de red
• Los datos en el modelo de red se representan
mediante colecciones de registros y las
relaciones entre los datos se representan
mediante enlaces, los cuales pueden verse
como punteros. Los registros en la BD se
organizan como colecciones de grafos
arbitrarios.
43. El modelo jerárquico
• El modelo jerárquico
es similar al modelo
de red en el sentido de
que los datos y las
relaciones entre los
datos se representan
mediante registros y
enlaces,
respectivamente.
• Se diferencia del
modelo de red en que
los registros están
organizados como
colecciones de árboles
en vez de grafos
arbitrarios.
45. Modelo físico de datos
• Se usan para describir datos en el nivel más
bajo. A diferencia de los modelos lógicos
de datos, hay muy pocos modelos físicos en
uso. Los más conocidos son:
– Modelo unificador.
– Memoria de elementos.
46. Lenguaje de definición de datos
• Un esquema de BD se especifica por medio de
un conjunto de definiciones que se expresan
mediante un lenguaje especial llamado lenguaje
de definición de datos (data definition language
(DDL)). El resultado de la compilación de
sentencias de DDL es un conjunto de tablas las
cuales se almacenan en un archivo especial
llamado diccionario de datos (o directorio).
47. Lenguaje de manipulación de
datos
• En los niveles de abstracción de datos se aplican
no sólo a la definición o estructuración de datos,
sino también a la manipulación de datos. Por
manipulación de datos queremos decir a:
– La recuperación de información almacenada en la BD.
– La inserción de información nueva en la BD.
– La supresión de información de la BD.
– La modificación de datos almacenados en la BD.
48. • Los DML procedimentales requieren que el
usuario especifique qué datos se necesitan y
cómo obtenerlos.
• Los DML no procedimentales requieren que el
usuario especifique qué datos se necesitan sin
especificar cómo obtenerlos. Normalmente son
más sencillos de aprender y usar. Sin embargo,
estos lenguajes pueden generar código que no
sea eficiente como los procedimentales.
• DML es sinónimo de lenguajes de consultas.
49. I. Administrador de BD
• Funciones de un DBA:
– Definición de esquema
– Definición de la estructura de almacenamiento y del
método de acceso.
– Modificación del esquema y de la organización
física.
– Concesión de autorización para el acceso a los datos.
– Especificación de las restricciones de integridad.
50. Ejercicios
• Cuales son las principales diferencias entre
un sistema de procesamiento de archivos y
un sistema de gestión de base de datos?
• Listar varios SGDB
• Listar los pasos principales que necesitan
tomarse al establecer una base de datos para
una empresa determinada.