Este documento describe los componentes principales de un sistema de gestión de bases de datos (SGBD), incluyendo lenguajes SGBD, el diccionario de datos, seguridad e integridad, y el administrador de la base de datos. También describe los modelos lógicos y físicos de datos, y las diferencias entre el modelo lógico y el modelo físico. Finalmente, presenta un modelo lógico para una base de datos de una institución educativa.
1. FASE 1
BASE DE DATOS AVANZADA
INTEGRANTES:
LEONARDO CASTELLAR
CC: 1065638680
LUIS GABRIEL JIMENEZ
CC:
FFRANKLIN CESAR ESTEVEZ
CC:
TUTOR:
MARCO ANTONIO LOPEZ
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
UNAD
2015
2. 1. QUE ES GESTIÓN DE BASE DE DATOS
Un Sistema de Gestión de Bases de Datos (SGBD1) consiste en una colección de datos
interrelacionados y un conjunto de programas para acceder a los mismos.
Estos sistemas van más allá, proporcionando métodos para mantener la integridad referencial de los
datos, para controlar el acceso a usuarios y para recuperar información si el sistema sufre alguna
corrupción.
2. DESCRIBA ALGUNAS ARQUITECTURAS PARA GESTIÓN DE BASES DE
DATOS
La arquitectura de un SGBD especifica sus componentes (incluyendo su descripción funcional) y
sus interfaces. Trata de conceptos distintos que la arquitectura de la base de datos. Los componentes
principales de un SGBD son:
Interfaces externos - Medios para comunicarse con el SGDB en ambos sentidos (E/S) y
explotar a todas sus funciones. Pueden afectar a la base de datos o a la operación del SGBD.
Intérprete o procesador del lenguaje - La mayor parte de las operaciones se efectúan mediante
un lenguaje de base de datos. Existen lenguajes para definición de datos, manipulación de
datos (p.e. SQL).
Optimizador de consultas - Realiza la optimización de cada pregunta y escoge el plan de
actuación más eficiente para ejecutarlo.
Motor de la base de datos - Realiza las operaciones requeridas sobre la base de datos,
típicamente representándolo a alto nivel.
Mecanismo de almacenamiento - Traduce las operaciones a lenguaje de bajo nivel para acceder
a los datos. En algunas arquitecturas el mecanismo de almacenamiento está integrado en el
motor de la base de datos.
Motor de transacciones - Para conseguir corrección y fiabilidad la mayoría de las operaciones
internas del SGBD se realizan encapsuladas dentro de transacciones. Las transacciones pueden
ser especificadas externamente al SGBD para encapsular un grupo de operaciones. El motor de
transacciones sigue la ejecución de las transacciones y gestiona su ejecución de acuerdo con las
reglas que tiene establecidas (p. eg., control de concurrencia y su ejecución o cancelación).
Gestión y operación de SGBD - Comprende muchos otros componentes que tratan de aspectos
de gestión y operativos del SGBD como monitoreo de prestaciones, gestión del
almacenamiento, mapas de almacenamiento.
La mayoría de los SGBDs actuales están inspirados en una arquitectura sugerida en 1978 por un
grupo de trabajo de ANSI. Es conocida como ANSI/X3/SPARC "DBMS Framework" y es una
arquitectura adecuada para construir BDs que cumplan los requisitos señalados en la definición y
además sean portables entre distintas máquinas y sistemas operativos.
3. Esta arquitectura divide la base de datos en tres niveles:
El nivel externo es la representación de los datos, tal y como los ve el usuario. Cada usuario
tendrá una visión distinta de la base de datos dependiente del subconjunto de datos, que está
autorizado a ver según sus privilegios de acceso y también, del formato en que se le
presentan, que dependerá de las herramientas que utilice (por ejemplo, un programa
COBOL o un 4GL).
El nivel lógico, es una representación abstracta (no física como en el nivel interno) del
contenido total de la base de datos. Contiene la definición de todos los datos existentes más
otras informaciones como restricciones de seguridad, controles de integridad, etc.
El nivel interno es el más cercano a la máquina. Es una representación a bajo nivel de la
BD, en la que se define la forma en que los datos se almacenan físicamente en la máquina.
Se definen características como los dispositivos en donde se almacenan los datos, el espacio
que se reserva, las estrategias de acceso, la creación de ficheros de índices, etc. Es
dependiente de la máquina en que se vaya a instalar la BD, del sistema operativo que exista,
etc.
3. CUÁLES SON LAS FUNCIONES PRINCIPALES DE UN GESTOR DE BASES DE
DATOS
Creación y definición de la base de datos.
Manipulación de los datos.
Acceso controlado a los datos de la DB.
Integridad y Consistencia de los datos.
Acceso compartido.
Mecanismos de respaldo y recuperación.
4. 4. QUÉ VENTAJAS REPRESENTA UN GESTOR DE BASES DE DATOS Y
COMPARADO CON QUE HERRAMIENTA.
Un SGBD comparado con por ejemplo un sistema gestor de archivos, presenta las siguientes
ventajas:
Eliminan las inconsistencias en los datos. Algo especialmente difícil sin un SGBD, cuando
los mismos datos se utilizan y actualizan en diferentes procesos.
Permiten compartir los mismos datos entre diferentes aplicaciones con distintas
necesidades. Por ejemplo: aplicaciones transaccionales junto con aplicaciones de soporte a
la dirección.
Se adaptan mejor a la existencia de aplicaciones rápidamente cambiantes. En estos casos
con los enfoques tradicionales se puede requerir la conversión de los datos cada vez. Un
SGBD proporcionará independencia de los datos respecto a las aplicaciones.
Ahorran espacio de almacenamiento al no existir redundancia o ser ésta escasa. También
porque muchos SGBDs utilizan mecanismos de compresión para almacenar los datos.
Mejoran la seguridad de los datos pues, normalmente, incorporan mecanismos de seguridad
en el propio SGBD.
Permiten la creación de entornos de alta disponibilidad. Los SGBDs modernos suelen
permitir realizar gran parte (a veces todo) del mantenimiento del sistema sin necesidad de
parar las aplicaciones. Por tanto, con algunos SGBDs es posible llegar a disponer de
aplicaciones funcionando ininterrumpidamente.
5. CUÁLES SON LOS PRINCIPALES COMPONENTES DE UN SISTEMA GESTOR
DE BASES DE DATOS
Lenguajes SGBD
Lenguaje de definición de datos- DDL: te permite llevar a cabo las tareas de definición de
las estructuras que almacenarán los datos, así como los métodos o funciones que permitan
consultarlos.
Lenguaje de manipulación de datos-DML: te permite consultar o manipular los datos,
organizados por el modelo adecuado. El más popular es el SQL. Se clasifican en:
o Procedurales: se le da instrucciones al sistema para que elabore unos procedimientos en
la base de datos para calcular un resultado final.
o No Procedurales: se detalla la información sin un método específico para obtener
información.
Lenguajes de cuarta generación: son lenguajes de programación diseñados con el objetivo
de desarrollar aplicaciones orientadas a las bases de datos
5. Lenguaje de control de datos: este tipo de lenguaje incluye una serie de comandos SQL que
permiten al administrador controlar al acceso a los datos que tengan una base de datos.
Diccionario de datos
El diccionario de datos es el lugar donde se guarda toda la información de todos los datos que
forman la base de datos. Dentro de él se encuentra la lista de todos los elementos que forman parte
del flujo de datos de todo el sistema.
En su contenido está las descripciones de todos los demás objetos (archivos, programas,…) que
existen en el sistema, almacena el conjunto numeroso de esquemas y especifica cada archivo y su
ubicación, también incluye información acerca de qué programas utilizan qué datos, y a que
usuarios les interesa un informe u otro.
Está integrado dentro de la misma base de datos, puede tolerar descripciones de los modelos
conceptual, lógico, interno y externo. Está guardado en un medio con acceso directo por si
llegásemos a perder información poder recuperarla con facilidad.
Seguridad e Integridad
Los datos están protegidos por si personas que no tienen acceso intentasen acceder, por caídas
durante el procesamiento de transacciones, anomalías por acceder varias personas al mismo tiempo,
anomalías producidas por distribuir los datos entre varios ordenadores.
El administrador de la base de datos
Dentro de los sistemas de gestión de bases de datos hay varias categorías de usuarios según el
derecho o autorización que tengan sobre los objetos que componen la base de datos:
Usuarios de la categoría DBA: su función es administrar la base por lo tanto tienen acceso
total.
Usuarios de la categoría RESOURCE: pueden crear sus propios objetos y pueden hacer
consultas.
Usuario de la categoría CONNECT: solo pueden realizar consultas.
Tareas del administrador de la BD
Instalar el SGBD en el sistema informático.
Crear las bases de datos que se vayan a tramitar.
Crear y mantener el esquema de la BD.
Crear y mantener las cuentas de usuario de la BD.
Arrancar y parar el SGBD, y cargar las bases de datos necesarias para trabajar.
6. Cooperar con el administrador del sistema operativo, a la hora de ubicar, dimensionar y
controlar los archivos y espacios de disco ocupados por el SGBD.
Ayudar en las tareas de formación de usuarios.
Realizar estándares de uso, políticas de acceso y reglas de trabajo para los usuarios de la BD.
Proporcionar la información que necesitan sobre la BD a los equipos de análisis y
programación de aplicaciones.
Además realizan tareas de explotación como:
o Vigilar el trabajo diario ayudando en la información y aclarando las dudas de los
usuarios de la BD.
o Controlar en tiempo real los accesos, tasas de uso, cargas en los servidores…
o Si es necesario, reorganizar la BD.
o Realizar las copias de seguridad periódicas de la BD.Restaurar la BD si ocurriese algo a
partir de las copias de seguridad.
o Analizar las auditorías del sistema por si hay alguna anomalía, intento de violación de la
seguridad,…
o Ajustar y optimizar la BD mediante el ajuste de sus parámetros, y con ayuda de las
herramientas de monitorización y de las estadísticas del sistema.
Una vez definido las bases y conceptos básicos de los sistemas gestores de bases de datos nos queda
por definir y reconocer los modelos de datos más utilizados. Algunos se verán con un poco más de
detalles pero la mayoría de ellos se dejarán para su estudio aparte
6. QUÉ ES UN MODELO DE BASES DE DATOS Y DESCRIBA ALGUNOS
MODELOS.
Un modelo de datos para las bases de datos es una colección de conceptos que se emplean para
describir la estructura de una base de datos. Esa colección de conceptos incluye entidades, atributos
y relaciones. La mayoría de los modelos de datos poseen un conjunto de operaciones básicas para
especificar consultas y actualizaciones de la base de datos.
Entre los modelos lógicos comunes para bases de datos se encuentran:
Modelo jerárquico
Modelo en red
Modelo relacional
Modelo entidad–relación
Modelo entidad–relación extendido
modelo de objetos
modelo documental
Modelo entidad–atributo–valor
7. modelo en estrella
modelo asociativo
modelo multidimensional
modelo multivalor
modelo semántico
base de datos XML
grafo etiquetado
Triplestore
Los modelos físicos de datos incluyen:
índice invertido
fichero plano
7. QUÉ DIFERENCIA EXISTE ENTRE EL MODELO LÓGICO Y EL MODELO
FÍSICO DE DATOS.
MODELO LÓGICO MODELO FÍSICO
Es una descripción de la estructura de la base de
datos en términos de las estructuras de datos
que puede procesar un tipo de SGBD. Es
un lenguaje usado para especificar esquemas
lógicos (modelo relacional, modelo de red, etc.).
El diseño lógico depende del tipo de SGBD que
se vaya a utilizar, no depende
del producto concreto.
Es una descripción de la implementación de una
base de datos en memoria secundaria: las
estructuras de almacenamiento y los métodos
utilizados para tener un acceso eficiente a los
datos. Por ello, el diseño físico depende del
SGBD concreto y el esquema físico se expresa
mediante su lenguaje de definición de datos
8. 8. MODELO LOGICO.
8.1 Lista general de los profesores.
Se obtendrá con la tabla profesores.
8.2 Lista de profesores por área del conocimientos.
Se obtendrá de la tabla área_prof ya que hala todos los datos de los profesores y todos los datos
de la tabla área, solo faltaría especificar el área que desee consultar.
8.3 Lista de profesores según nivel de formación académica.
Se obtendrá de la tabla nivel_formacion especificando el nivel de formación.
8.4 Reporte de la información de un profesor a partir de su cédula.
Se obtendrá de la tabla profesor especificando la identificación del profesor.
8.5 Reporte de profesores según el apellido o el nombre cuando no se conoce la cédula.
9. Se obtendrá de la tabla profesor especificando su apellido o su nombre.
8.6 Relación de profesores, asignaturas y grados en las que se desempeña.
Se obtendrá de la tabla grado_asi seleccionando los datos del profesor, el área, asignatura y
especificando alguna de ellas.
8.7 Lista de profesores que orientan clase en un curso.
Se obtendrá de la tabla prof_curso seleccionando los datos de los profesores yespecificando el
curso.
8.8 Lista de cursos y asignaturas que orienta un profesor.
Se obtendrá de la tabla prof_curso seleccionando los datos del curso y los datos de la
asignatura, especificando los datos del profesor.
8.9 Relación de proyectos que se están ejecutando en la institución.
Se obtendrá de la tabla proyectos seleccionando los datos de la tabla.
8.10 Relación de docentes que participan en proyectos.
Se obtendrá de la tabla proy_prof seleccionando los datos del profesor, del proyecto y
especificando los datos del profesor.
8.11 Relación de proyectos en los que participa un profesor.
Se obtendrá de la tabla proy_prof seleccionando los datos del profesor, del proyecto y
especificando los datos del proyecto.
8.12 Relación de profesores y estudiantes vinculados a proyectos.
Se obtendrá de la tabla proy_prof seleccionando los datos del profesor, del estudiante y
especificando los datos del proyecto.
8.13 lista de calificaciones por curso y asignatura.
Se obtendrá de la tabla calificación seleccionando las calificaciones y especificando el curso y
el estudiante.
8.14 Lista de estudiantes y faltas.
Se obtendrá de la tabla fallas, seleccionando todos sus datos.
8.15 Lista de estudiantes que han pedido permiso y motivo del permisos.
Se obtendrá de la tabla permiso, seleccionando todos sus datos.
8.16 Lista de estudiantes ordenada por nota en cada asignatura y periodo.
10. Se obtendrá de la tabla calificación, seleccionando el promedio de las notas, asignatura y
especificando el orden de las notas.
8.17 Lista de estudiantes que aprueban una asignatura.
Se obtendrá de la tabla calificaciones seleccionando el promedio de las notas y especificando
que el valor del promedio sea mayor o igual que el valor para aprobar la asignatura.
8.18 Lista de estudiantes que pierden una asignatura.
Se obtendrá de la tabla calificaciones seleccionando el promedio de las notas y especificando
que el valor del promedio sea menor o igual que el valor para perder la asignatura.
8.19 Lista de estudiantes que aprueban el año.
Se obtendrá de la tabla calificaciones seleccionando el promedio de todas las asignaturas y
especificando que el valor sea mayor o igual que el valor para aprobar el año.
8.20 Lista de estudiantes que deben recuperar y las asignaturas a recuperar.
Se obtendrá de la tabla calificaciones seleccionando todos los estudiantes que tengan el
promedio menor o igual al valor de las asignaturas a recuperar.
8.21 Lista de estudiantes que pierden el año.
Se obtendrá de la tabla calificaciones seleccionando el promedio de todas las asignaturas y
especificando que el valor sea menor o igual que el valor para perder el año.
8.22 Relación de los cinco estudiantes con mejor rendimiento académico en cada
curso.
Se obtendrá de la tabla calificaciones seleccionando los cinco primeros promedios mas altos,
los estudiantes y especificando el curso.
8.23 Relación de estudiantes con rendimiento promedio inferior a 3.0 por curso.
Se obtendrá de la tabla calificación seleccionando los estudiantes y especificando el promedio
que sea menor que 3.0.
8.24 Lista de los cinco niños con mayor rendimiento en toda la institución durante
el año.
Se obtendrá de la tabla calificación seleccionando el promedio, los estudiantes y especificando
los cinco mayor valor y que sean de sexo masculino.
8.25 Lista de las cinco niñas con mayor rendimiento en toda la institución durante
el año.
Se obtendrá de la tabla calificación seleccionando el promedio, los estudiantes y especificando
los cinco mayor valor y que sean de sexo femenino.
11. 8.26 Relación de estudiantes con más del 5%de faltas a clase por asignatura y
curso.
Se obtendrá de la tabla fallas seleccionando el porcentaje de las fallas del estudiante, la
asignatura el curso y se especificará que el porcentaje sea mayor al 5%.
8.27 Relación de estudiantes que han faltado a clase en un día determinado.
Se obtendrá de la tabla fallas seleccionando todos los datos y especificando la fecha
determinada.
8.28 Relación de estudiantes que han faltado tres días consecutivos.
Se obtendrá de la tabla falla especificando los días consecutivos.
8.29 Relación de estudiantes que han faltado sin solicitar permiso.
Se obtendrá la falla especificando el tipo de falla.
8.30 Relación de estudiantes que han recibido llamado de atención o que han sido
sancionados.
Se obtendrá la falla especificando el tipo de falla.
8.31 Estudiantes que reciben clase de un docente organizados por curso y
asignatura.
Se obtendrá de la tabla prof_curso seleccionando los estudiantes y especificando el curso y la
asignatura.
8.32 Información de los docentes que dan clase a un estudiante.
Se obtendrá de la tabla prof_est seleccionando sus datos y especificando el estudiante.
8.33 Estudiantes que no tienen calificación en una asignatura y periodo
determinado.
Se obtendrá de la tabla calificación seleccionando los estudiantes, asignatura, el periodo y
especificando cual este vacío.
8.34 Rendimiento académico promedio por grupo y asignatura.
Se obtendrá de la tabla calificación seleccionando el promedio de los periodos, el curso y la
asignatura.
8.35 Relación de profesores y rendimiento promedio de los estudiantes que orienta.
Se obtendrá de la tabla calificación seleccionando el promedio de los periodos, los estudiantes y
especificando el profesor.
8.36 Relación de docentesordenados según el porcentaje de estudiantes que
aprueban sus asignaturas.
12. Se obtendrá de la tabla calificación seleccionando el profesor, el promedio de los periodos y
especificando el valor de la aprobación.
8.37 Relación de docentesen cuyas asignaturas hay estudiantes que deben
recuperar.
Se obtendrá de la tabla calificación seleccionando el profesor el promedio de los periodos y
especificando el valor de la recuperación.
8.38 Relación de docentesy porcentaje de estudiantes que pierden sus asignaturas.
Se obtendrá de la tabla calificación seleccionando el docente, el porcentaje de los periodos y
especificando el valor de perdida de la asignatura.
9. INSTALACIÓN DE MYSQL
Se debe ir a la página y en la sección de descargas se puede obtener la versión MySQL on Windows
En mi caso tengo la versión 5.5 que es la que procederé a instalar:
Se empieza el proceso de instalación, confirmando la aceptación de la licencia GNU, referente al
software libre
13. Escogí la opción estándar Typical
Se da siguiente hasta la pantalla de finalización de la instalación:
14. Luego se debe configurar el servidor, este wizard se ejecutará mientras la opción Launch the
MySQL Instance Configuration Wizard, este seleccionada.
Se elige la configuración detallada:
Luego en este punto, dan 3 opciones:
La primera es apta para desarrollo y consume menos recursos. La segunda opción debe elegirse si
se van a compartir servicios y tiene un consumo medio de memoria, y la tercera opción es si se va a
tener la máquina dedicada a ser servidor sql.
15. Luego nos pregunta sobre el uso que se le dará a la base de datos, en mi caso escogí base de datos
multifuncional, que es la de propósito general, en la que las transacciones son rápidas:
Luego pregunta por el número de conexiones concurrentes, en mi caso elegí la primera opción que
no soporta más de 20 conexiones concurrentes:
En la siguiente pantalla dejé habilitado la conexión TCP/IP, ya que si se van a realizar pruebas con
otras máquinas, es mejor hacerlo. Estas opciones vienen por defecto y en mi caso no manipulé los
datos:
16. Se debe hacer la instalación de SQL como un servicio de Windows, para que inicie cuando carga el
sistema operativo:
Por seguridad se debe crear una contraseña al usuario root, en mi caso es prueba
17. Luego se da inicio a la configuración, se crea el archivo de configuración, se inicia el servicio y se
aplican las características de seguridad, y se da por terminada la instalación:
18. 10. Instalacion de MySQL Workbench
Descargamos el instalador
Ejecutamos el instalado y le damos siguiente
Elegimos la ruta de instalación.
Elegimos la versión completa.
20. Seleccionamos las herramientas y funcionalidades a instalar, en mi caso como ya he realizado una
instalación previa de MySQL y se ejecuta correctamente la desmarco y hacemos click en siguiente.
Seleccionamos la carpeta destino (la dejo por defecto) y hacemos click en siguiente para completar
la instalacio.
21. Por ultimo muestro una captura del panel de control de XAMPP funcionando correctamente.
22. CONCLUSIONES
Realizando estas actividades he logrado instalar las herramientas con las cuales vamos a trabajar a
lo largo del semestre, de igual manera he afianzado mis conocimientos acerca de los sistemas de
bases de datos. Quedando las inquietudes y las expectativas de desarrollar este curso de manera
satisfactoria.