Fundamentos de BD - Unidad 1 Sistemas Gestores de BD
1. FUNDAMENTOS DE BASE DE DATOS
Unidad I: Sistemas Gestores de Base de Datos
Este material está desarrollado para la asignatura Fundamentos de Base de Datos, de la carrera de Ingeniería en
Sistemas Computacionales, plan de estudios ISIC-2010-224.
2. FUNDAMENTOS DE BASE DE DATOS
Competencia
Identificar la arquitectura, los usuarios, niveles de abstracción y
lenguajes de un sistema gestor de base de datos.
3. Competencia Específica de la Unidad
• Identificar la arquitectura, los usuarios, niveles de abstracción y
lenguajes de un sistema de gestión de bases de datos.
Desarrollo de la Unidad
• En la unidad uno, se abordan los conceptos fundamentales y los
componentes de un sistema gestor de base de datos,
considerando la importancia y las áreas de aplicación en la
organización y el desarrollo profesional.
FUNDAMENTOS DE BASE DE DATOS
4. Objetivos de las Bases de Datos
• El termino bases de datos apareció a mediados de los años 60´s. En
ese entonces la información era representada haciendo uso de un
conjunto de archiveros, estos no estaban relacionados entre sí y la
redundancia era grande.
FUNDAMENTOS DE BASE DE DATOS
5. • Una bases de datos es una colección de
archivos relacionados electrónicamente
para llevar registros de una
organización, con esto hace más fácil la
administración de información de una
organización debido a la rapidez y
seguridad para localizar la información.
FUNDAMENTOS DE BASE DE DATOS
6. • Las bases de datos tiene la facilidad
de restringir información
confidencial de la entidad a ciertos
usuarios de los sistemas de
información, así como resguardar
grandes cantidades de información.
FUNDAMENTOS DE BASE DE DATOS
7. • Áreas de Aplicación de los
Sistemas de Bases de
Datos: las bases de datos
forman una parte esencial
de casi todas las empresas
actuales. A lo largo de las
últimas cuatro décadas del
siglo veinte, el uso de las
bases de datos creció en
todas las empresas
(Silberschatz, 2002).
FUNDAMENTOS DE BASE DE DATOS
8. • Banca: Para información de los clientes, cuentas y préstamos, y
transacciones bancarias.
• Líneas aéreas: Para reservas e información de planificación. Las líneas
aéreas fueron de los primeros en usar las bases de datos de forma
distribuida geográficamente.
• Educación; Transacciones de tarjetas de crédito; Telecomunicaciones;
Finanzas; Ventas; Producción; Recursos humanos; entre otros.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
9. • Un sistema de bases de datos es una colección de archivos
interrelacionados y un conjunto de programas que permitan a los usuarios
acceder y modificar estos archivos. Uno de los propósitos principales de un
sistema de bases de datos es proporcionar a los usuarios una visión
abstracta de los datos.
Ventaja de los sistemas de bases de datos frente a sistemas de archivos:
• Reduce redundancia e inconsistencia de datos.
• Reduce la dificultad en el acceso a los datos.
• Resuelve problemas de integridad.
• Resuelve problemas de seguridad.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
10. Modelos de Datos
• Bajo la estructura de la base de datos se encuentra el modelo de
datos: una colección de herramientas conceptuales para describir los
datos, las relaciones, la semántica y las restricciones de consistencia.
Los diferentes modelos de datos que se han propuesto se clasifican en
tres grupos diferentes:
• Modelos lógicos basados en objetos,
• Modelos lógicos basados en registros, y
• Modelos físicos.
FUNDAMENTOS DE BASE DE DATOS
11. Modelo Entidad - Relación
• El modelo de datos entidad-relación (E-R) está basado en una percepción
del mundo real que consta de una colección de objetos básicos, llamados
entidades, y de relaciones entre estos objetos. El modelo entidad-relación
se utiliza habitualmente en el proceso de diseño de bases de datos, y se
estudiará en la unidad 2.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
12. Modelo relacional
• En el modelo relacional se utiliza un grupo de tablas para representar los
datos y las relaciones entre ellos. Cada tabla está compuesta por varias
columnas, y cada columna tiene un nombre único. En la sig. figura se
presenta un ejemplo de base de datos relacional consistente en tres tablas:
la primera muestra los clientes de un banco, la segunda, las cuentas, y la
tercera, las cuentas que pertenecen a cada cliente (Silberschatz, 2002).
FUNDAMENTOS DE BASE DE DATOS
13. • El modelo de datos relacional es el modelo de datos más
ampliamente usado, y una amplia mayoría de sistemas de bases de
datos actuales se basan en el modelo relacional.
• Los diseños de bases de datos relacionales a menudo se realizan en el
modelo E-R, y después se traducen al modelo relacional. Por ejemplo,
es fácil ver que las tablas cliente y cuenta corresponden a los
conjuntos de entidades del mismo nombre, mientras que la tabla
impositor corresponde al conjunto de relaciones impositor.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
14. Otros modelos de datos
• El modelo de datos orientado a objetos es otro modelo de datos que está
recibiendo una atención creciente. El modelo orientado a objetos se
puede observar como una extensión del modelo E-R con las nociones de
encapsulación, métodos (funciones) e identidad de objeto (Silberschatz,
2002).
FUNDAMENTOS DE BASE DE DATOS
15. Históricamente, otros dos modelos de datos;
• Modelo de datos de red, y
• Modelo de datos jerárquico.
Estos modelos precedieron al modelo de datos relacional, complicaban la
tarea del modelado de datos, como resultado se usan muy poco
actualmente, excepto en el código de bases de datos antiguo que aún está
en servicio en algunos lugares.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
16. Arquitectura de un Gestor de Bases de Datos
• Un sistema de bases de datos se divide en módulos que se encargan
de cada una de las responsabilidades del sistema completo.
• Los componentes funcionales de un sistema de bases de datos se
pueden dividir a grandes rasgos en los componentes Gestor de
Almacenamiento y Procesador de Consultas.
• El gestor de consultas es importante porque las bases de datos
requieren normalmente una gran cantidad de espacio de
almacenamiento, ayuda al sistema de bases de datos a simplificar y
facilitar el acceso a los datos.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
17. Gestor de Almacenamiento
• Un gestor de almacenamiento es un módulo de programa que proporciona la
interfaz entre los datos de bajo nivel en la base de datos y los programas de
aplicación y consultas emitidas al sistema. Los componentes del gestor de
almacenamiento incluyen:
• Gestor de autorización e integridad; que comprueba que se satisfagan las
restricciones de integridad y la autorización de los usuarios para acceder a los
datos.
• Gestor de transacciones; que asegura que la base de datos quede en un estado
consistente (correcto Gestor de transacciones, que asegura que la base de datos
quede en un estado consistente (correcto) a pesar de los fallos del sistema, y que
las ejecuciones de transacciones concurrentes ocurran si conflictos.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
18. • Gestor de archivos; que gestiona la reserva de espacio de almacenamiento
de disco y las estructuras de datos usadas para representar la información
almacenada en disco.
• Gestor de memoria intermedia; que es responsable de traer los datos del
disco de almacenamiento a memoria principal y decidir qué datos tratar en
memoria caché. El gestor de memoria intermedia es una parte crítica del
sistema de bases de datos, ya que permite que la base de datos maneje
tamaños de datos que son mucho mayores que el tamaño de la memoria
principal.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
19. El gestor de almacenamiento implementa varias estructuras de datos
como parte de la implementación física 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 rápido a elementos de datos que
tienen valores particulares.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
20. Procesador de consultas; Los componentes del procesador de consultas incluyen:
• Intérprete 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 evaluación que consiste en instrucciones de bajo nivel que
entiende el motor de evaluación de consultas. Una consulta se puede traducir
habitualmente en varios planes de ejecución alternativos que proporcionan el
mismo resultado. El compilador del LMD también realiza optimización de
consultas, es decir, elige el plan de evaluación de menor coste de entre todas las
alternativas.
• Motor de evaluación de consultas; que ejecuta las instrucciones de bajo nivel
generadas por el compilador del LMD.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
22. Línea del tiempo del desarrollo de las Bases de Datos y los
Modelos de Datos
FUNDAMENTOS DE BASE DE DATOS
23. Abstracción de Datos
• Para que el sistema sea útil debe recuperar los datos eficientemente.
Esta preocupación ha conducido al diseño de estructuras de datos
complejas para la representación de los datos en la base de datos.
Como muchos usuarios de sistemas de bases de datos no están
familiarizados con computadores, los desarrolladores esconden la
complejidad a los usuarios a través de varios niveles de abstracción
para simplificar la interacción de los usuarios con el sistema:
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
24. • Nivel físico: El nivel más bajo de abstracción describe cómo se almacenan
realmente los datos. En el nivel físico se describen en detalle las
estructuras de datos complejas de bajo nivel.
• Nivel lógico: El siguiente nivel más alto de abstracción describe qué datos
se almacenan en la base de datos y qué relaciones existen entre esos
datos. La base de datos completa se describe así en términos de un
número pequeño de estructuras relativamente simples. Aunque la
implementación de estructuras simples en el nivel lógico puede involucrar
estructuras complejas del nivel físico, los usuarios del nivel lógico no
necesitan preocuparse de esta complejidad. Los administradores de bases
de datos, que deben decidir la información que se mantiene en la base de
datos, usan el nivel lógico de abstracción.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
25. • Nivel de vistas: El nivel más alto de abstracción describe sólo parte de
la base de datos. A pesar del uso de estructuras más simples en el
nivel lógico, queda algo de complejidad, debido a la variedad de
información almacenada en una gran base de datos. Muchos usuarios
del sistema de base de datos no necesitan toda esta información. En
su lugar, tales usuarios necesitan acceder sólo a una parte de la base
de datos. Para que su interacción con el sistema se simplifique, se
define la abstracción del nivel de vistas. El sistema puede
proporcionar muchas vistas para la misma base de datos.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
26. Silberschatz, 2002.
Usuarios del sistema
Administrador y
Desarrolladores
Estructuras
Complejas de
Almacenamiento
FUNDAMENTOS DE BASE DE DATOS
27. Usuarios de las Bases de Datos
• Un objetivo principal de un sistema de bases de datos es recuperar
información y almacenar nueva información en la base de datos. Las
personas que trabajan con una base de datos se pueden catalogar
como usuarios de bases de datos o como administradores de bases de
datos.
Usuarios de bases de datos e interfaces de usuario
• Hay cuatro tipos diferentes de usuarios de un sistema de base de datos,
diferenciados por la forma en que ellos esperan interactuar con el
sistema. Se han diseñado diferentes tipos de interfaces de usuario para
diferentes tipos de usuarios.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
28. • Usuarios normales: Son usuarios no sofisticados que interactúan con
el sistema mediante la invocación de alguno de los programas de
aplicación permanentes que se ha escrito previamente.
• Programadores de aplicaciones: Son profesionales informáticos que
escriben programas de aplicación. Los programadores de aplicaciones
pueden elegir entre muchas herramientas para desarrollar interfaces
de usuario.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
29. • Los usuarios sofisticados: interactúan con el sistema sin programas escritos.
En su lugar, ellos forman sus consultas en un lenguaje de consulta de bases
de datos. Cada una de estas consultas se envía al procesador de consultas,
cuya función es transformar instrucciones LMD a instrucciones que el gestor
de almacenamiento entienda. Los analistas que envían las consultas para
explorar los datos en la base de datos entran en esta categoría.
• Usuarios especializados: Son usuarios sofisticados que escriben
aplicaciones de bases de datos especializadas que no son adecuadas en el
marco de procesamiento de datos tradicional. Entre estas aplicaciones están
los sistemas de diseño asistido por computador, sistemas de bases de
conocimientos y sistemas expertos, sistemas que almacenan los datos con
tipos de datos complejos (por ejemplo, datos gráficos y datos de audio) y
sistemas de modelado del entorno.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
30. Administrador de la base de datos: Una de las principales razones de
usar SGBDs es tener un control centralizado tanto de los datos como de
los programas que acceden a esos datos. La persona que tiene este
control central sobre el sistema se llama administrador de la base de
datos (ABD). Las funciones del ABD incluyen las siguientes:
• Definición del esquema. El ABD crea el esquema original de la base
de datos escribiendo un conjunto de instrucciones de definición de
datos en el LDD.
• Definición de la estructura y del método de acceso.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
31. • Modificación del esquema y de la organización física: Los ABD realizan
cambios en el esquema y en la organización física para reflejar las
necesidades cambiantes de la organización, o para alterar la organización
física para mejorar el rendimiento.
• Concesión de autorización para el acceso a los datos: La concesión de
diferentes tipos de autorización permite al administrador de la base de
datos determinar a qué partes de la base de datos puede acceder cada
usuario. La información de autorización se mantiene en una estructura del
sistema especial que el sistema de base de datos consulta cuando se
intenta el acceso a los datos en el sistema.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
32. • Mantenimiento rutinario: Algunos ejemplos de actividades rutinarias de
mantenimiento del administrador de la base de datos son:
Copia de seguridad periódica de la base de datos, bien sobre cinta o
sobre servidores remotos, para prevenir la pérdida de datos en caso
de desastres como inundaciones.
Asegurarse de que haya suficiente espacio libre en disco para las
operaciones normales y aumentar el espacio en disco según sea
necesario.
Supervisión de los trabajos que se ejecuten en la base de datos y
asegurarse de que el rendimiento no se degrada por tareas muy
costosas iniciadas por algunos usuarios.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
33. Tipos de Lenguajes
• Lenguaje de Definición de Datos: Un esquema de base de datos se
especifica mediante un conjunto de definiciones expresadas
mediante un lenguaje especial llamado Lenguaje de Definición de
Datos (DDL Data DefinitionLanguage).
• Un diccionario de datos contiene metadatos, es decir, datos acerca de
los datos.
• El DDL proporciona facilidades para especificar tales restricciones. Los
sistemas de bases de datos comprueban estas restricciones cada vez
que se actualiza la base de datos.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
34. • Lenguaje de Manipulación de Datos DML: La manipulación de datos
es:
La recuperación de información almacenada en la base de
datos.
La inserción de información nueva en la base de datos.
El borrado de información de la base de datos.
La modificación de información almacenada en la base de datos.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
35. • Un lenguaje de manipulación de datos (DML) es un lenguaje que
permite a los usuarios acceder o manipular los datos organizados
mediante el modelo de datos apropiado.
• DMLs procedimentales; Requieren que el usuario especifique qué
datos se necesitan y cómo obtener esos datos.
• DMLs declarativos o no procedimentales; Requieren que el usuario
especifique qué datos se necesitan sin especificar cómo obtener esos
datos.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
36. Data Warehouse: Un Data Warehouse (DW) es una base de datos que almacena
información para la toma de decisiones. Dicha información es construida a partir de
bases de datos que registran las transacciones de los negocios de la organización
Objetivo de las Data Werehouses
Registrar información a través del tiempo.
Tener información accesible, entendible, navegable y con buen desempeño.
Tener información consistente; significante, contabilizada y completa.
Información adaptable y elástica; diseñado para continuos cambios, permite
nuevas preguntas y nuevos datos.
Proteger la información; Permite buena visibilidad sobre el uso de los datos.
Soportar la toma de decisiones de negocio.
FUNDAMENTOS DE BASE DE DATOS
37. ¿Cómo Funciona un Data Warehouse?
• Un Data Warehouse se crea al extraer datos desde una o más bases de
datos de aplicaciones operacionales. Los datos extraídos son transformados
para eliminar inconsistencias y resumir si es necesario y luego, cargados en
el Data Warehouse .
• El proceso anterior ETL (extracción, transformación y carga), permite crear
el detalle de tiempo variante, resumir y combinar los extractos de datos,
ayudando a crear el ambiente para el acceso a la información Institucional.
FUNDAMENTOS DE BASE DE DATOS
38. • Este nuevo enfoque ayuda a las
personas en todos los niveles de la
empresa, a efectuar su toma de
decisiones más asertivas.
• Las organizaciones aprovechan sus
recursos informáticos para crear la
información de la operación del
negocio considerando las
estrategias tecnológicas necesarias
para la implementación de una
arquitectura completa de Data
Warehouse.
FUNDAMENTOS DE BASE DE DATOS
39. Tópicos Selectos de Bases de Datos
ETL: Cuando hablábamos de Data Warehousing,
pasamos por encima de las herramientas ETL,
considerándolas un elemento fundamental en
la construcción, explotación y evolución de
nuestro Data Warehouse (DW)
• ETL es el acrónimo en inglés de Extraer,
Transformar y Cargar (Extract, Transform and
Load). Es el proceso que permite a las
organizaciones mover datos desde múltiples
fuentes, reformatearlos y limpiarlos, y
cargarlos en otra base de datos, data mart, o
data warehouse para analizar, o en otro
sistema operacional para apoyar un proceso
de negocio.
FUNDAMENTOS DE BASE DE DATOS
40. Las herramientas ETL, deberían de proporcionar, de forma general, las
siguientes funcionalidades:
• Control de la extracción de los datos y su automatización, disminuyendo el
tiempo empleado en el descubrimiento de procesos no documentados,
minimizando el margen de error y permitiendo mayor flexibilidad.
• Acceso a diferentes tecnologías, haciendo un uso efectivo del hardware,
software, datos y recursos humanos existentes.
• Proporcionar la gestión integrada del Data Warehouse y los Data Marts
existente, integrando la extracción, transformación y carga para la
construcción del Data Warehouse corporativo y de los Data Marts.
FUNDAMENTOS DE BASE DE DATOS
41. • Uso de la arquitectura de metadatos, facilitando la definición de los
objetos de negocio y las reglas de consolidación.
• Acceso a una gran variedad de fuentes de datos diferentes.
• Manejo de excepciones.
• Planificación, logs, interfaces a schedulers de terceros, que nos permitirán
llevan una gestión de la planificación de todos los procesos necesarios
para la carga del DW.
• Interfaz independiente de hardware.
• Soporte en la explotación del Data Warehouse.
Silberschatz, 2002.
FUNDAMENTOS DE BASE DE DATOS
42. ERP: Es el acrónimo de Enterprise Resource Planning o Planificación de
Recursos de la Empresa y básicamente es una arquitectura de software
para empresas que facilita e integra la información entre las funciones
de manifactura, logística, finanzas y recursos humanos de una empresa.
Algunas Características de los Software ERP
• Base de datos centralizada
• Componentes de un Erp interactúan entre si consolidando todas las
operaciones.
• En un software ERP los datos se ingresan una sola vez (ya les
gustaría). Datos deben ser completos consistentes y comunes.
FUNDAMENTOS DE BASE DE DATOS
43. Data Marts: Se define como un almacén de datos especializado,
orientado a un tema, integrado, volátil, y variante en el tiempo para
apoyar un subconjunto especifico de decisiones de administración. La
principal diferencia entre una data mart y una data warehouse es que la
primera es especializada y volátil. Hay tres enfoques para la creación de
una data mart:
• Los datos pueden ser simplemente extraídos de la data warehouse.
FUNDAMENTOS DE BASE DE DATOS
44. • A pesar del hecho de que la data warehouse pretende proporcionar
un punto de control único una data mart puede ser creado todavía en
forma independiente (es decir, no por medio de la extracción a partir
de la data warehouse).
• Algunas instalaciones han seguido un enfoque de “primero la data
mart” donde estos son creados conforme van siendo necesarios y la
data warehouse general es creada, como una consolidación de los
diversos data mart.
FUNDAMENTOS DE BASE DE DATOS
45. Mineria de Datos (DM data mining)
• Consiste en la extracción no trivial de información que reside de
manera implícita en los datos. Dicha información era previamente
desconocida y podrá resultar útil para algún proceso. En otras
palabras, la minería de datos prepara, sondea y explora los datos para
sacar la información oculta en ellos. Tiene como objetivo encontrar
patrones de comportamiento ocultas en los mismos con el fin de
crear nuevas asociaciones, predecir resultados futuros.
FUNDAMENTOS DE BASE DE DATOS
46. Tareas Principales de la Minerías de Datos
• Análisis de dependencias.
• Identificación de clases (agrupamiento de registros en clases).
• Descripción de conceptos.
• Detección de desviaciones, casos extremos o anomalías.
FUNDAMENTOS DE BASE DE DATOS
47. Técnicas de la minería de datos
• Árboles de decisión y reglas de clasificación
• Métodos de clasificación y regresiones no-lineales
• Métodos basados en ejemplos prototípicos
• Modelos gráficos de dependencias probabilísticas
• Modelos relacionales
FUNDAMENTOS DE BASE DE DATOS
48. Bibliografía
• Fundamentos de bases de datos. Cuarta edición. Abraham
Silberschatz et al. McGraw Hill. Madrid. Ebook. 2002.
FUNDAMENTOS DE BASE DE DATOS