Base de Datos Avanzadas Guia

74
18506 Titulación Ciclo ¡ Ingeniero en Informática V Base de Datos Avanzada Guía didáctica 4 créditos Departamento de Ciencias de la Computación y Electrónica Sección Tecnologías Avanzadas de la Web y SBC UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA Autores: Ing. Juan Carlos Morocho Ing. María Eugenia Enríquez Asesoría virtual: www.utpl.edu.ec Estimado estudiante recuerde que la presente guía didáctica está disponible en el EVA en formato PDF interactivo, lo que le permitirá acceder en línea a todos los recursos educativos.

description

Una guia para el estudio programado de base de datos

Transcript of Base de Datos Avanzadas Guia

Page 1: Base de Datos Avanzadas Guia

18506

Titulación Ciclo

¡ Ingeniero en Informática V

Base de Datos AvanzadaGuía didáctica

4 créditos

Departamento de Ciencias de la Computación y ElectrónicaSección Tecnologías Avanzadas de la Web y SBC

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA

La Universidad Católica de Loja

MODALIDAD ABIERTA Y A DISTANCIA

Autores:Ing. Juan Carlos Morocho

Ing. María Eugenia Enríquez

Asesoría virtual:www.utpl.edu.ec

Estimado estudiante recuerde que la presente guía didáctica está disponible en el EVA en formato PDF interactivo, lo que le permitirá acceder en línea a todos los recursos educativos.

Page 2: Base de Datos Avanzadas Guia

BASE DE DATOS AVANZADAGuía didácticaJuan Carlos MorochoMaría Eugenia Enríquez

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA

CC Ecuador 3.0 By NC ND

Diagramación, diseño e impresión:EDILOJA Cía. Ltda.Telefax: 593-7-2611418San Cayetano Alto s/[email protected]

Primera edición Séptima reimpresión

ISBN-978-9942-08-031-8

Esta versión impresa, ha sido acreditada bajo la licencia Creative Commons Ecuador 3.0 de reconocimiento -no comercial- sin obras derivadas; la cual permite copiar, distribuir y comunicar públicamente la obra, mientras se reconozca la autoría original, no se utilice con fines comerciales ni se realicen obras derivadas. http://www.creativecommons.org/licences/by-nc-nd/3.0/ec/

Abril, 2015

Page 3: Base de Datos Avanzadas Guia

2. Índice ................................................................................................................................ 3

3. Introducción ................................................................................................................... 5

4. Lineamientos generales del modelo educativo basado en competencias y créditos académicos UTPL-ECTS......................................................................... 6

4.1. Competencias genéricas ............................................................................................ 74.2. Competencias específicas .......................................................................................... 7

5. Bibliografía .................................................................................................................... 8

5.1. Básica ........................................................................................................................ 85.2. Complementaria ....................................................................................................... 8

6. Orientaciones generales para el estudio .......................................................... 10

7. Proceso de enseñanza-aprendizaje para el logro de competencias .... 13

PRIMER BIMESTRE

7.1. Competencias genéricas ............................................................................................ 137.2. Sistema de evaluación de la asignatura (primero y segundo bimestres) ................. 157.3. Orientaciones específicas para el aprendizaje por competencias .............................. 16

Unidad 1: Metodología para el desarrollo de bases de datos .................................................... 16

1.1. Introducción a la metodología de diseño de bases de datos .................................... 161.2. Panorámica de la metodología de diseño de la base de datos ................................ 17Autoevaluación 1 ................................................................................................................. 20

Unidad 2: Metodología: diseño físico de bases de datos relacionales ........................................ 21

2.1. Comparación del diseño lógico y del diseño físico de bases de datos ...................... 212.2. Metodología de diseño físico de bases de datos relacionales ................................... 21Autoevaluación 2 ................................................................................................................. 26

Unidad 3: Metodología: monitorización y optimización del sistema final .................................. 27

3.1. Desnormalización e introducción de redundancia controlada ................................... 273.2. Monitorización del sistema para mejorar el rendimiento .......................................... 29Autoevaluación 3 ................................................................................................................. 32

Unidad 4: Seguridad .............................................................................................................. 33

4.1. Seguridad de la base de datos .................................................................................. 334.2. Contramedidas: controles informatizados ................................................................. 344.3. Seguridad en el SGBD de Microsoft Office Access y en el SGBD Oracle ................... 344.4. Seguridad de un SGBD en entornos Web .................................................................. 35Autoevaluación 4 ................................................................................................................. 37

2. Índice

Page 4: Base de Datos Avanzadas Guia

SEGUNDO BIMESTRE

7.4. Competencias genéricas ............................................................................................ 397.5. Orientaciones específicas para el aprendizaje por competencias .............................. 41

Unidad 5: Gestión de transacciones ........................................................................................ 41

5.1. Soporte de transacciones .......................................................................................... 415.2. Control de concurrencia ............................................................................................. 425.3. Recuperación de la base de datos ............................................................................. 425.4. Modelos avanzados de transacciones ....................................................................... 42Autoevaluación 5 ....................................................................................................... 45

Unidad 6: Procesamiento de consultas .................................................................................... 46

6.1. Panorámica del procesamiento de consultas ............................................................. 466.2. Descomposición de consultas .................................................................................... 466.3. Numeración de las estrategias de ejecución alternativas .......................................... 48Autoevaluación 6 ....................................................................................................... 49

Unidad 7: Conceptos de almacenes de datos ........................................................................... 50

7.1. Introducción a los almacenes de datos ..................................................................... 507.2. Arquitectura de un almacén de datos ........................................................................ 517.3. Flujos de datos en un almacén de datos ................................................................... 53Autoevaluación 7 ....................................................................................................... 54

Unidad 8: Diseño de almacenes de datos ................................................................................ 55

8.1. Diseño de la base de datos para un almacén de datos ............................................. 558.2. Modelado de la dimensionalidad .............................................................................. 568.3. Metodología de diseño de bases de datos para almacenes de datos ....................... 56Autoevaluación 8 ....................................................................................................... 60

8. Solucionario ................................................................................................................... 61

8.1. Solución a las preguntas de ensayo .......................................................................... 69

9. Anexos ............................................................................................................................. 73

Page 5: Base de Datos Avanzadas Guia

5

Guía didáctica: Base de Datos AvanzadaPRELIMINARES

3. Introducción

La asignatura de Base de Datos Avanzada se dicta en quinto ciclo de la carrera de Ingeniería en Informática, tiene una valoración de cuatro créditos y forma parte del grupo de materias troncales de la carrera antes mencionada.

Actualmente el manejo de información en las organizaciones ha venido a tomar un papel protagónico, a tal punto que se han hecho grandes inversiones en tecnología que permita manipular de forma adecuada uno de los recursos más importantes de las organizaciones: los datos; de ahí la importancia de esta asignatura.

En cualquier campo de la informática en la que se desenvuelva, se encontrará con la necesidad de manipular de alguna manera bases de datos, por ello lo animamo a desarrollar los contenidos de esta materia que le ayudarán a adquirir los conocimientos y habilidades necesarios para la administración y explotación de las bases de datos de diferente ámbito y complejidad.

Esta asignatura es parte de su formación como ingeniero en informática y es de vital importancia ya que se estudian temas que mejorarán sus habilidades en el uso de metodologías para guiar las operaciones, la prevención de vulnerabilidades, también conocerá las configuraciones las avanzadas de base de datos como las bases de datos distribuidas, conocerá también temas de inteligencia de negocios orientado al diseño de almacenes de datos. Todo ello le ayudará en la adquisición de las competencias necesarias que se complementan con las adquiridas en la asignatura de Fundamentos de Base de Datos y demás asignaturas de la malla curricular de la carrera.

Para la presente asignatura se ha planificado el desarrollo de ocho unidades, de la uno a la cuatro se revisará en el primer bimestre y de la cinco a la ocho se desarrollará en el segundo bimestre. En el primer bimestre la unidad uno hace una introducción a la metodología de diseño de bases de datos, la unidad dos se refiere al siguiente paso de la metodología: el diseño físico de bases de datos relacionales, la unidad tres se refiere a otra etapa de la metodología de diseño de base de datos; la monitorización y optimización del sistema final y por último, la unidad cuatro desarrolla el tema de seguridad en cuanto a bases de datos se refiere.

En el segundo bimestre, la unidad cinco hace referencia a la gestión de transacciones, la unidad seis se refiere al procesamiento de consultas, la unidad siete aborda conceptos de almacenes de datos y por último la unidad ocho hace referencia al diseño de almacenes de datos.

Esta guía didáctica trata de dar una visión real y práctica de la temática abordada a través de la inclusión de explicaciones, ejemplos y otros recursos relacionados al tema, para que usted pueda asimilar de mejor forma los conceptos y teorías que encontrará en la bibliografía básica y complementaria.

Finalmente, les deseo el mejor de los éxitos en el presente ciclo de estudios y animarle a que realice su mejor esfuerzo para continuar por el camino de la superación profesional y personal que contribuyen a una formación integral. Recuerde estimado estudiante que estaremos junto a ustedes para acompañarle y orientarle en el proceso de aprendizaje.

¡Siga adelante!

Page 6: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

6

PRELIMINARES

4. Lineamientos generales del modelo educativo basado en competencias y créditos académicos UTPL-ECTS

Señor estudiante: recuerde que usted ha iniciado su formación de tercer nivel con un sistema educativo basado en el desarrollo de competencias a través de créditos académicos. Este modelo le convierte a usted en protagonista de su propia formación y al profesor en mediador de las experiencias de aprendizaje.

Surge entonces la necesidad de que tenga claro dos conceptos fundamentales: competencia y crédito académico.

• ¿Qué es una competencia? Entendemos por competencia el conjunto de actitudes, habilidades y conocimientos que el alumno adquiere e incorpora según sus características personales y experiencias laborales y, que se ponen de manifiesto en el desempeño de la actividad profesional. Las competencias se adquieren a lo largo del proceso formativo de la carrera y se desagregan en objetivos de aprendizaje propuestos en cada asignatura.

Elementos de una competencia. Tres son los elementos que podemos distinguir en toda competencia:

¸Actitudes: son predisposiciones y comportamientos ante situaciones concretas.

¸Habilidades: son destrezas para ejecutar con éxito tareas, utilizar procedimientos y realizar trabajos. Se desarrollan a través de la práctica y la experiencia.

¸Conocimientos: constituyen los contenidos científicos, conceptuales, teóricos, conocidos también como el aprendizaje académico.

• ¿Qué es un crédito académico UTPL/ECTS en la Modalidad Abierta y a Distancia?

Un crédito académico es la unidad de medida del trabajo del estudiante, implica 32 horas de trabajo del alumno (29 horas de trabajo autónomo y 3 horas de interacción)1.

Los créditos académicos que el estudiante irá acumulando en el transcurso de la carrera involucran: aprendizaje autónomo (estudio personal), tareas de investigación, interacción en el Entorno Virtual de Aprendizaje (EVA), participación en tutorías, videoconferencias y otros eventos académicos (Jornadas, seminarios, cursos, congresos avalados por la UTPL), prácticas académicas, pasantías preprofesionales y de vinculación con la colectividad; actividades de evaluación; así como la realización del trabajo de titulación.

El modelo adoptado por la UTPL contempla dos tipos de competencias: genéricas y específicas.

¸Genéricas: son aquellas capacidades (actitudes, habilidades y conocimientos) comunes a todas las profesiones que se ofrecen en la UTPL. Constituyen una parte fundamental del perfil que el estudiante debe desarrollar durante su formación.

1 CONESUP (2008): Reglamento del Régimen Académico del Sistema Nacional de Educación Superior, art. 18.

Page 7: Base de Datos Avanzadas Guia

7

Guía didáctica: Base de Datos AvanzadaPRELIMINARES

¸Específicas: son propias de la titulación, aportan a la cualificación específica para la profesión, dándole consistencia social y profesional al perfil formativo.

• Estructura general del programa formativo

Las unidades académicas o escuelas de la UTPL han estructurado el programa formativo contemplando cinco ámbitos o bloques de asignaturas: formación básica (10%); genéricas de carrera (15%); troncales (35%) complementarias (10%); libre configuración (10%) y además, el Prácticum que comprende las Pasantías preprofesionales y de vinculación con la colectividad y Prácticum académico (20%).

4.1. Competencias genéricas

1. Capacidad de aplicar los conocimientos en la práctica.

2. Conocimiento sobre el área de estudio.

3. Capacidad de investigación.

4. Habilidades para buscar, procesar y analizar información procedentes de fuentes diversas.

5. Capacidad creativa e innovadora.

6. Capacidad para organizar y planificar el tiempo.

7. Habilidad para trabajar en forma autónoma.

8. Habilidades en el uso de las tecnologías de la TIC´s.

9. Compromiso ético.

4.2. Competencias específicas

Estas competencias se encuentran detalladas en la planificación de cada bimestre.

Page 8: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

8

PRELIMINARES

5. Bibliografía

5.1. Básica

Connolly, T. y Begg, C.(2005). Sistemas de bases de datos. Un enfoque práctico para diseño, implementación y gestión. Madrid: Pearson Education.

Este texto propone los temas que se deben abordar dentro de la asignatura de Base de Datos Avanzada. Su contenido es bastante didáctico, ofrece recursos para que el estudiante pueda autoevaluarse al final de cada unidad; dispone de casos de estudio sobre los cuales se puede ir desarrollando la parte práctica de la asignatura. También ofrece recursos adicionales en la Web que ayudan al estudiante a complementar los contenidos del texto.

Morocho, J. y Enriquez, M. (2011). Guía didáctica de Base de Datos Avanzada. Loja-Ecuador: UTPL.

Guía didáctica diseñada para el estudio de Base de Datos Avanzada en la carrera de Ingeniería en Informática de la Modalidad Abierta y a Distancia de la Universidad Técnica Particular de Loja. En este material encontrará breves explicaciones, comentarios de cada uno de los temas, además de ejercicios propuestos y autoevaluaciones, que le ayudarán como un indicador del logro de las competencias propuestas para la presente asignatura.

5.2. Complementaria

Amiagada, A. y Aranda,J. (2006). Curso de Base de Datos. Universidad de las Américas. Recuperado el 28 de febrero del 2011 desde http://nuestro.net78.net/clases_jjaa/Bases_Datos/

Curso de base de datos, en donde puede encontrar temas como conceptos del modelo relacional, álgebra y cálculo relacional que ayudarán a complementar sus conocimientos.

Camps, R., Casillas, L. A., Costal, et. al. (2007).OCW,M2109 Bases de Datos. UniversitatOberta de Catalunya. Recuperado el 28 de febrero del 2011 desde http://ocw.uoc.edu/informatica-tecnologia-y-multimedia/bases-de-datos/Course_listing.

Curso de base de datos abierto, en donde puede encontrar temas como conceptos del modelo relacional y el proceso del modelado E/R, que le ayudarán a complementar sus conocimientos.

Castillo, C. (2007). Convertir Entidad-Relación en Modelo Relacional. Universitat Pompeu Fabra.

Este documento contiene información acerca de la transformación del modelo conceptual al modelo lógico.

Greenberg, N., Nathan, P. (2001). Introduction to Oracle 9i: SQL.Oracle Corporation.

En este documento puede encontrar todo lo referente al lenguaje SQL Oracle en la versión 9i.

Page 9: Base de Datos Avanzadas Guia

9

Guía didáctica: Base de Datos AvanzadaPRELIMINARES

Martínez, J. L., Martínez, P. y Mingo, J. M. (2008). OCW: Fundamentos de las bases de datos. Grupo de bases de datos avanzadas, departamento de informática, Universidad Carlos III de Madrid. Recuperado el 28 de febrero del 2011 desde http://ocw.uc3m.es/informatica/fundamentos-de-bases-de-datos.

Curso de base de datos abierto, en donde puede encontrar temas como conceptos fundamentales de base de datos, modelo de datos relacional y lenguaje SQL, que le ayudarán a complementar sus conocimientos.Oracle home page. Recuperado el 12 de Febrero del 2011 desde http://www.oracle.com/index.html

Sitio de uno de los sistemas de gestión de base de datos más reconocido a nivel mundial. Aquí encontrará recursos como documentación, podcast, software y noticias relevantes de la industria de base de datos.

Ricardo, C. (2009). Bases de Datos. México, D. F.: McGraw-Hill.

En este texto encontrará material complementario sobre seguridades, transacciones, bases de datos distribuidas, almacenes de datos y bases de datos e Internet, que ayudarán al estudiante en el desarrollo de los temas propuestos para la asignatura.

Scott, U. (2002). Oracle 9i PL/SQL Programming. Madrid: McGraw-Hill/Osborne.

Este material bibliográfico le puede servir para profundizar sobre el lenguaje SQL, tanto manipulación como definición de datos.

Page 10: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

10

PRELIMINARES

6. Orientaciones generales para el estudio

Estudiar a distancia es un reto que requiere esfuerzo, dedicación y sobre organización, por ello debe hacer de esta actividad un trabajo continuo y sistemático, organice su tiempo de manera que pueda verdaderamente aprovechar los contenidos que se le están ofreciendo.

Creemos conveniente brindarle algunas recomendaciones de cara al desarrollo de los contenidos en el semestre:

Recursos

La asignatura de Base de Datos Avanzada, tiene como texto básico “Sistemas de bases de datos. Un enfoque práctico para diseño, implementación y gestión”, de Connolly y Begg, además como apoyo principal la guía didáctica, estos serán los principales recursos con los que usted contará para el estudio de cada uno de los contenidos de esta asignatura y para orientarse en cuanto a su avance.

• El texto básico es amplio en contenidos, cuenta además con herramientas muy didácticas como: figuras ilustrativas, casos de estudio, resúmenes, actividades recomendadas al final de cada unidad, ejercicios propuestos, un glosario al que usted podrá recurrir cuando encuentre un término desconocido y una serie de apéndices en donde encontrará información relevante a manera de resumen.

• En cuanto a la guía, su fin principal es el de orientar al estudiante, indicándole los temas del libro que debe revisar y los conceptos a los cuáles deberá poner un mayor énfasis; la guía didáctica servirá también para constatar el nivel de asimilación de conocimientos, así que se proponen cuestionarios, ejercicios y otras actividades que complementen su aprendizaje.

• Es recomendable que desarrolle las autoevaluaciones propuestas en la guía didáctica, al final de cada unidad, pues estas le ayudarán a reforzar sus conocimientos.

• Dentro de la guía también encuentra de una herramienta muy importante que es la planificación para el trabajo del alumno, en la cual está la dosificación de contenidos que debe ir desarrollando durante cada semana del semestre académico, que le permitirán ir adquiriendo las competencias que se ha planteado para la asignatura de fundamentos de base de datos.

• Es natural que algunos temas le resulten difíciles de entender; sin embargo, conforme vaya avanzando y adentrándose en esta temática se irán despejando aquellas dudas, le recuerdo que para ello también puede contar con la ayuda de su profesor.

Técnicas de estudio

• En sus estudios, usted deberá primero remitirse a la guía didáctica en donde se le darán instrucciones acerca de los temas que deberá revisar, luego se remitirá al libro y cuando los contenidos hayan quedado claros deberá volver una vez más a la guía para concentrarse en aquellos conceptos fundamentales y realizar una serie de actividades complementarias propuestas. Utilice las técnicas de estudio que más se ajusten a usted (subrayados, resúmenes, cuadros sinópticos, esquemas, gráficas, etc.).

Page 11: Base de Datos Avanzadas Guia

11

Guía didáctica: Base de Datos AvanzadaPRELIMINARES

• Es conveniente que siempre considere el calendario académico que le fue entregado y organice su tiempo para que el estudio sea constante. La recomendación es que debe revisar una unidad por semana, aunque en ocasiones debido a la dificultad o facilidad de ciertos temas, este tiempo podrá variar.

Interactividad

Adicional al material básico, usted contará con los siguientes recursos tecnológicos que le servirán para profundizar o complementar lo aprendido:

• Entorno Virtual de Aprendizaje, en donde usted encontrará documentos, videos, foros, chats en el que participan además de su profesor sus compañeros, logrando así una total retroalimentación de los contenidos desarrollados.

• Biblioteca virtual, a la que puede acceder a través de la página Web de la Universidad http://www.utpl.edu.ec/biblioteca, en donde encontrará enlaces a importantes bibliotecas virtuales de todo el mundo que pueden ser consultadas por usted.

• En sus evaluaciones a distancia usted encontrará los datos completos de su profesor-tutor, con el cual se podrá comunicar constantemente a través de la línea telefónica, correo electrónico, entorno virtual, googletalk o skype para hacerle llegar sus inquietudes ya que usted está en un proceso de aprendizaje y siempre se requiere de ayuda para esclarecer alguna duda o para ratificar sus ideas. Recuerde que siempre será un gusto poder ayudarle.

Evaluación

Al final de cada bimestre, deberá entregar las evaluaciones a distancia (30% de la calificación final) en las fechas establecidas para el efecto y luego rendir sus evaluaciones presenciales (70% de la calificación final), que sumados deberán dar un total de 20 puntos por bimestre. Debe obtener una nota mínima de 14 puntos sobre 20, de lo contrario tendrá que rendir una evaluación supletoria que reemplazará a la nota bimestral. Para acreditar la asignatura debe contabilizar un mínimo de 28 puntos.

Estimado profesional en formación, recuerde que de su constancia y esfuerzo depende el cumplir con las metas que se ha planteado para el presente semestre y cuente con la ayuda del profesor tutor para apoyarle en la consecución de sus objetivos.

Page 12: Base de Datos Avanzadas Guia
Page 13: Base de Datos Avanzadas Guia

13

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

7. Proceso de enseñanza-aprendizaje para el logro de competencias

PRIMER BIMESTRE

7.1. Competencias genéricas

COMPETENCIAS ESPECÍFICAS

INDICADORES DE APRENDIZAJE

CONTENIDOSACTIVIDADES DE APRENDIZAJE

CRONOGRAMA ORIENTATIVO

Tiempo estimadoUnidades/Temas

Analiza las necesidades de conocimiento necesarias para resolver un problema.

Realiza la gestión y recuperación de información generada en los sistemas informáticos.

• Identifica los beneficios de utilizar una metodología de diseño de base de datos.

• Asocia claramente las fases de la metodología de diseño de bases de datos.

Unidad 1. Metodología para el desarrollo de bases de datos

1.1. Introducción a la metodología de diseño de bases de datos

1.2. Panorámica de la metodología de diseño de la base de datos

• Lectura comprensiva del capítulo 15 del texto básico según las indicaciones de la guía didáctica.

• Desarrollar un cuadro sinóptico a manera de cronología sobre la evolución de las bases de datos.

• Desarrollo de actividades recomendadas en la guía para la primera unidad.

• Desarrollo de la autoevaluación 1.

• Revisar anuncios publicados en el EVA.

• Empezar el desarrollo de la evaluación a distancia que corresponda a la primera unidad.

Semana 1

• 4 horas de autoestudio.

• 4 horas de interacción.

• Reconoce y aplica el proceso para pasar del diseño lógico a un diseño físico.

• Distingue claramente cuándo utilizar índices para mejorar el rendimiento de la base de datos.

Unidad 2. Metodología: diseño físico de base de datos

2.1. Comparación del diseño lógico y físico de bases de datos relacionales

2.2. Metodología de diseño físico de bases de datos relacionales

• Lectura comprensiva del capítulo 17 del texto básico siguiendo las indicaciones de la guía didáctica.

• Interprete con sus propias palabras la figura 17.3 de su texto básico que se refiere al mapa del uso de transacciones.

• Generación de mapa conceptual sobre el diseño físico.

• Desarrollo de actividades recomendadas en la guía para la segunda unidad.

• Desarrollar la autoevaluación 2.

• Revisar anuncios publicados en el EVA.

• Desarrollo de la parte de la evaluación a distancia que corresponda a la segunda .unidad.

Semana 2 y 3

• 8 horas de autoestudio.

• 8 horas de interacción.

Page 14: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

14

PRIMER BIMESTRE

COMPETENCIAS ESPECÍFICAS

INDICADORES DE APRENDIZAJE

CONTENIDOSACTIVIDADES DE APRENDIZAJE

CRONOGRAMA ORIENTATIVO

Tiempo estimadoUnidades/Temas

• Demuestra los beneficios de monitorear el rendimiento de la base de datos.

• Analiza y describe las circunstancias en las cuales es conveniente desnormalizar.

Unidad 3. Metodología: monitorización y optimización del sistema final

3.1. Desnormalización e introducción de redundancia controlada

3.2. Monitorización del sistema para mejorar el rendimiento

• Lectura comprensiva del capítulo 18 del texto básico de acuerdo a las indicaciones de la guía didáctica.

• Esquematice en forma de cuadro sinóptico los criterios para introducir redundancia.

• Desarrollo de actividades recomendadas en la guía para la tercera unidad

• Revisar anuncios en el EVA.

• Desarrollo de la parte de la evaluación a distancia correspondiente a la tercera unidad

Semana 4

• 4 horas de autoestudio

• 4 horas de interacción

• Diferencia claramente las amenazas a las cuales está expuesta una base de datos.

• Aplica contramedidas para minimizar los efectos de las amenazas.

Unidad 4. Seguridad

4.1. Seguridad de la base de datos

4.2. Contramedidas: controles informatizados

4.3. Seguridad en el SGBD de Microsoft Office Access y en el SGBD de Oracle

4.4. Seguridad de un SGBD en entornos Web

• Lectura comprensiva del capítulo 19 del texto básico de acuerdo a las indicaciones de la guía didáctica.

• Elaboración de un mapa mental en donde se representen los problemas asociados con la seguridad de BDD en Web.

• Desarrollo de actividades recomendadas en la guía para la cuarta unidad.

• Revisar anuncios en el EVA.

• Revisar los ejercicios resueltos en el texto básico.

• Desarrollar los ejercicios propuestos al final del capítulo en el texto básico.

• Desarrollo de la parte de la evaluación a distancia que corresponda a la cuarta unidad.

Semana 5 y 6

• 8 horas de autoestudio.

• 8 horas de interacción.

Unidades 1 - 4 • Revisión de foro de consultas al profesor.

• Realización de ejercicios propuestos en el EVA.

• Indicaciones previa a la primera evaluación presencial.

Semana 7 y 8.

• 8 horas de autoestudio.

• 8 horas de interacción.

Page 15: Base de Datos Avanzadas Guia

15

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

7.2. Sistema de evaluación de la asignatura (primero y segundo bimestres)

Formas de evaluación

Competencia: criterio

1. A

utoe

valu

ació

n *

2. Heteroevaluación

3. C

oeva

luac

ión

Evaluación adistancia **

Evaluaciónpresencial

Part

e ob

jetiv

a

Part

e de

ens

ayo

Inte

racc

ión

en e

l EVA

Prue

ba o

bjet

iva

y de

en

sayo

Act

itude

s

Comportamiento ético X X X X X

Cumplimiento, puntualidad, responsabilidad X X

Esfuerzo e interés en los trabajos X X X X

Respeto a las personas y a lasnormas de comunicación X X

Hab

ilida

des

Creatividad e iniciativa X X

Contribución en el trabajo colaborativo y de equipo X

Presentación, orden y ortografía X X X X

Emite juicios de valor argumentadamente X X

Cono

cim

ient

os

Dominio del contenido X X X X X

Investigación (cita fuentes de consulta) X X

Aporta con criterios y soluciones X X X

Análisis y profundidad en el desarrollo de temas X X

PORCENTAJE

Estr

ateg

ia d

e ap

rend

izaj

e 10% 10% 10%

Máx

imo

1 pu

nto

(com

plet

a la

ev

alua

ción

a

dist

anci

a)

70%

Act

ivid

ades

pr

esen

cial

es y

en

el

EVA

Puntaje 2 2 2 14

TOTAL 20 puntos

Para aprobar la asignatura se requiere obtener un puntaje mínimo de 28/40 puntos, que equivale al 70%.

* Son estrategias de aprendizaje, no tienen calificación; pero debe responderlas con el fin de autocomprobar su proceso de aprendizaje.** Recuerde que la evaluación a distancia consta de dos partes: una objetiva y otra de ensayo, debe desarrollarla y entregarla en su respectivo centro universitario.

Señor estudiante:

Tenga presente que la finalidad de la valoración cualitativa es principalmente formativa.

Page 16: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

16

PRIMER BIMESTRE

7.3. Orientaciones específicas para el aprendizaje por competencias

Unidad 1: Metodología para el desarrollo de bases de datos

Estimado estudiante: vamos a iniciar el estudio de la asignatura conociendo una herramienta que nos ayudará a guiar y formalizar el diseño de una base de datos, como lo es la utilización de una metodología.

Para el desarrollo de esta unidad, vaya revisando conjuntamente con esta guía el capítulo 15 del texto básico sobre Metodología: diseño conceptual de la base de datos.

1.1. Introducción a la metodología de diseño de bases de datos

Iniciemos el estudio de la presente unidad, comparando los conceptos alrededor del término metodología, para ello puede usar como fuente de consulta la Internet. Seguramente las definiciones encontradas le harán referencia a un conjunto de herramientas, pasos que se debe seguir en un orden establecido, lo cual sirve para normar las actividades tendientes a la consecución de un objetivo.

Pues bien, ahora que ya tiene una idea clara de lo que es una metodología y cuál es su utilidad, vamos a enfocarla en el proceso de diseño de una base de datos.

Revise en su texto básico, del apartado 15.1. “Introducción a la metodología de diseño de bases de datos”, el punto 15.1.1 ¿Qué es una metodología de diseño?

ACTIVIDAD RECOMENDADA:

Una vez que ha encontrado varias definiciones del término “metodología”, compárelas con la propuesta en el texto básico y construya un nuevo concepto a partir de los ya consultados.

En este punto puede usted dar respuesta a la siguiente interrogante:

¿Qué es una metodología y para qué sirve?

Si usted es capaz de responder lo felicito, pues ha logrado asimilar de buena manera los contenidos estudiados hasta aquí. Si, por el contrario, todavía no puede dar respuesta a la interrogante planteada, conviene que vuelva a revisar los temas analizados.

Para complementar la comprensión del tema, recordemos que en los inicios de las bases de datos, los diseñadores de base de datos trabajaban sin ayuda de herramientas que les permitiesen agilizar su trabajo y se podría decir, de forma rudimentaria.

Recursos educativos multimedia

Page 17: Base de Datos Avanzadas Guia

17

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Así mismo se veían afectados porque a menudo se confundía el diseño de base de datos con la implementación de las mismas. Conforme la tecnología fue avanzando, también se dio un importante avance en cuanto a los procesos de diseño de bases de datos, es así que en la actualidad contamos con varias herramientas que nos ayudan en la manipulación de la información, y nos permiten construir interfaces amigables para que los usuarios interactúen con la base de datos, así como herramientas que nos apoyan en el proceso de diseño, de las que podemos mencionar PowerDesigner, Erwin, entre otras, pero el avance no solamente ha sido en herramientas tecnológicas sino que también se han estructurado metodologías y técnicas de diseño, tal como la que se presenta en el texto básico, en la cual se definen claramente unas fases, los objetivos de cada fase y las actividades y/o componentes.

Una desventaja fundamental es que las metodologías de diseño de base de datos no son muy conocidas, por tanto los diseñadores no las aplican y por eso se obtiene malos resultados en el desarrollo de las aplicaciones como: la base de datos no satisface las necesidades de la organización, la administración se complica y la documentación es limitada o nula.

Pues bien, en el texto básico se propone una metodología de diseño de bases de datos que identifica claramente tres fases: diseño conceptual, diseño lógico y diseño físico.

Es momento de revisar en el texto básico los apartados 15.1.2. “Diseño conceptual, lógico y físico de una base de datos” y 15.1.3. “Factores críticos en el diseño de una base de datos”.

Para reforzar aún más los contenidos del texto, le invito a revisar el material relacionado al tema que estamos desarrollando del curso OCW y que lo podrá encontrar en la siguiente dirección Web:

http://ocw.uc3m.es/informatica/diseno-y-administracion-de-bases-de-datos/teoria/Tema1%28UnaMetodologiaDesarrolloBD%29.pdf

Una vez que haya revisado el material en línea desde el recurso OCW, contraste con los contenidos del texto básico y obtenga sus propias conclusiones.

A continuación haremos un breve recordatorio de las dos primeras fases, diseño conceptual y lógico de la metodología propuesta en el texto básico y la última fase, la del diseño físico la abordaremos en la siguiente unidad.

1.2. Panorámica de la metodología de diseño de la base de datos

Estimado estudiante: vamos a recordar las actividades dentro de las fases de diseño conceptual y diseño lógico, propuestas por la metodología que plantea el texto básico y que se revisaron en la asignatura de Fundamentos de Base de Datos.

El diseño conceptual se fundamenta en las especificaciones de requisitos de los usuarios. El resultado de esta fase es el modelo E/R, que constituye una descripción a muy alto nivel de la estructura de la base de datos, es decir forma un concepto de lo que se requiere representar en la base de datos, sin considerar aspectos técnicos como el SGBD (Sistema de Gestión de Base de Datos) a utilizar.

El diseño lógico toma como base el diseño conceptual y describe la estructura de la base de datos en términos de las estructuras de datos que son factibles de procesamiento por un SGBD.

Page 18: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

18

PRIMER BIMESTRE

Para complementar la comprensión de tema, refiérase al texto básico y revise el apartado 15.2 Panorámica de la metodología de diseño de la base de datos.

Seguramente habrá recordado las actividades que se deben cubrir en las fases de diseño conceptual y diseño lógico, que propone la metodología del texto básico.

Se podrá dar cuenta que la metodología dicta una serie de pasos que se relacionan entre sí, e incluso unas generan documentación que sirve para la siguiente actividad. Imaginemos solo por un momento cómo sería nuestro proceso de diseño de bases de datos si no contáramos con una metodología que nos guíe en el proceso. De seguro sería un proceso desordenado, que requeriría de mucho esfuerzo y que generaría una pobre documentación, de ahí que la adopción de un proceso metodológico resulta imprescindible.

No olvide que el diseño de una base de datos es un proceso un poco complejo en la cual intervienen muchos actores de distintos niveles, pero esa complejidad sería manejable si descomponemos ese gran problema en subproblemas, para poderlos manejar más efectivamente aplicando las técnicas y herramientas apropiadas.

El siguiente gráfico sintetiza las fases de la metodología de diseño planteada en el texto básico.

Figura 1.1. Esquematización de las fases de la metodología de diseño de bases de datos, según el texto básico.

Bien, ¡felicitaciones!, Ha terminado la unidad 1, Con el mismo entusiasmo ¡Siga adelante! Como parte complementaria en el desarrollo de la presente unidad le invitamos a desarrollar las siguientes actividades recomendadas.

Page 19: Base de Datos Avanzadas Guia

19

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

ACTIVIDADES RECOMENDADAS:

Estimado estudiante, para medir la asimilación de sus conocimientos en la presente unidad, desarrolle las siguientes actividades que están planteadas al final del capítulo de trabajo de su texto básico, como cuestiones de repaso. Esto le permitirá saber los temas que debe reforzar.

• Desarrolle los puntos 15.1, 15.2, 15.3 y 15.4.

Recuerde que puede solicitar ayuda a su tutor mediante el campus virtual o telefónicamente.

Interactividad virtual

Fortalezca sus criterios y conocimientos respecto al tema y a la asignatura ingresando periódicamente a través del campus virtual (http://www.utpl.edu.ec).

Desde su aula virtual de la asignatura, puede conocer los anuncios de su profesor. Todos los participantes tienen acceso a los foros de discusión donde su aporte es valioso y es aún más significativo si la participación involucra conversación con los integrantes del curso.

En nuestro caso, la participación en los foros de discusión es obligatoria, pues tienen una puntuación en su evaluación a distancia.

Page 20: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

20

PRIMER BIMESTRE

Autoevaluación 1

Bien, es momento de evaluar el conocimiento adquirido, por lo que le invitamos a resolver las siguientes preguntas:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) Una metodología lo que intenta es controlar las actividades de un proyecto.

2. ( ) Una metodología no constituye una camisa de fuerza.

3. ( ) Una metodología dicta qué es lo que hay que realizar en cada actividad.

4. ( ) Una metodología no cubre de inicio a fin el desarrollo de una base de datos.

5. ( ) Según la metodología propuesta por el texto básico, el paso siguiente a la etapa de diseño lógico es el diseño conceptual.

6. ( ) No es necesario involucrar a los usuarios en el proceso de diseño de una base de datos.

7. ( ) Es necesario emplear modelos de datos como instrumentos de diseño.

8. ( ) El diseño lógico traduce el modelo conceptual de datos a un modelo lógico de los datos.

9. ( ) Un diseño conceptual no puede ser independiente de las consideraciones físicas.

10. ( ) La normalización es una técnica que ayuda a un correcto diseño conceptual.

Revise sus aciertos consultando el solucionario qu se encuentra en la parte final de esta guía

Ensayo

11. Construya un mapa mental que agrupe las principales actividades para el diseño conceptual y diseño lógico de bases de datos. Puede ayudarse de alguna herramienta como MindManager, para elaborar su mapa mental.

Ir a solucionario

Page 21: Base de Datos Avanzadas Guia

21

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Unidad 2: Metodología: diseño físico de bases de datos relacionales

Estimado estudiante: continuaremos estudiando las fases que propone la metodología de diseño de bases de datos. En este punto corresponde revisar la fase de diseño físico.

Para el desarrollo de esta unidad vaya revisando conjuntamente con esta guía el capítulo 17 del texto básico: Metodología: diseño físico de bases de datos relacionales.

2.1. Comparación del diseño lógico y del diseño físico de bases de datos

Antes de adentrarnos en la revisión de la fase de diseño físico, es conveniente hacer una breve comparación entre esta fase y la de diseño lógico.

Recuerde que el diseño físico se fundamenta en el diseño lógico, y constituye una descripción de la implementación de una base de datos en almacenamiento secundario, por lo cual está estrechamente relacionado con el SGBD a utilizar ya que se debe especificar mediante el lenguaje de definición de datos del producto seleccionado.

Vaya al texto básico y revise el apartado 17.1 “Comparación del diseño lógico y del diseño físico de bases de datos”.

De seguro que ahora sí diferencia algunas actividades entre las fases de diseño antes mencionadas; pues bien, como usted pudo evidenciar las fases pretenden ser independientes unas de otras, pero a la vez integradas para darle continuidad al proceso metodológico.

Siguiendo con el estudio de la fase, vamos a hacer un breve análisis de cada una de las actividades que comprende.

2.2. Metodología de diseño físico de bases de datos relacionales

Ahora debemos revisar paso a paso las actividades de la fase de diseño físico, que es el tercer componente de la metodología propuesta en el texto básico.

En el texto básico revise la página 454, el paso 3, “Traducir el modelo lógico de los datos al SGBD seleccionado”.

Bien, como ya habrá revisado, esta fase pretende obtener un modelo de datos con las tablas definidas, además busca seleccionar la mejor representación para los datos derivados, buscando la eficiencia y, por lo tanto, los menores tiempos de respuesta.

Recursos educativos multimedia

Page 22: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

22

PRIMER BIMESTRE

Analice la figura 17.1 propuesta en el texto básico, ahí se puede observar la representación de la relación PropertyForRent, utilizando el lenguaje de diseño de base de datos. En la primera parte se presenta la definición de dominios de los atributos que componen la relación; seguidamente se hace la definición de la relación y si nos fijamos para la definición de los tipos de datos ya se utiliza los dominios definidos anteriormente; y, finalmente, se puede ver también la definición de los constraints, el primero de ellos define la clave primaria, y los siguientes hacen referencia a claves foráneas.

Podemos observar que se incluye la sentencia ON UPDATE CASCADE, en la definición del constraint que referencia a Staff, esto quiere decir que si se actualiza el atributo staffNo de la relación Staff automáticamente también se actualicen dichos valores relacionados en la tabla Property For Rent. Esto se traduce como la inclusión de parte de la lógica de negocio a través del diseño de restricciones generales.

A continuación proponemos un ejemplo de un modelo de datos para una biblioteca, el cual lo traduciremos a lenguaje DDL.

Figura 2.1. Diseño de base de datos de una biblioteca (Instituto SISE, 2010)2.

Vamos a transformar a lenguaje DDL el modelo del gráfico anterior. Empezaremos por la relación TIPO_USUARIO.

CREATE TABLE TIPO_USUARIO (idTipoUsuario number(4), descTipoUsuario varchar2(20) NOT NULL, CONSTRAINT PK_TIPO_USUARIO PRIMARY KEY(idTipoUsuario) --Aquí definimos la clave primaria);

CREATE TABLE USUARIO ( idUsuario varchar2(8) NOT NULL, idTipoUsuario number(4) NOT NULL,

2 Instituto SISE. (08 de 2010). Metodología de Diseño de Base de Datos. Recuperado el 13 de 06 de 2011, de http://www.scribd.com/doc/40031583/49/METODOLOGIA-DE-DISENO-DE-BASES-DE-DATOS.

Page 23: Base de Datos Avanzadas Guia

23

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

apelUsuario varchar2(35) NOT NULL, nomUsuario varchar2(35) NOT NULL, direccion varchar2(50) NULL, --Por defecto los campos aceptan valores nulos, por lo que no haría falta especificar la opción NULLhabilitado boolean NOT NULL, fechaExpCarnet datetime NOT NULL, fechaVencCarnet datetime NOT NULL, CONSTRAINT PK_USUARIO_idUsuario PRIMARY KEY(idUsuario), --Aquí definimos la clave primariaCONSTRAINT FK_USUARIO_idTipoUsuario FOREIGN KEY (idTipoUsuario) REFERENCES TIPO_USUARIO(idTipoUsuario) --Aquí definimos la clave foránea o externa que hace referencia a la tabla TIPO_USUARIO);

CREATE TABLE MAT_BIBLIO ( idMatBiblio varchar2(20) NOT NULL, tituloMatBiblio varchar2(150) NOT NULL, editorial varchar2(50), pais varchar(20), año datetime, nPag number, existencia number NOT NULL,CONSTRAINT PK_MAT_BIBLIO_idMatBiblio PRIMARY KEY(idMatBiblio) );

CREATE TABLE PRESTAMO ( codOper varchar2(7) PRIMARY KEY, --Esta es otra forma de definir la clave primariaidMatBiblio varchar2(20) NOT NULL, idUsuario varchar2(8) NOT NULL, fechaP datetime NOT NULL, fechaD datetime NOT NULL, ndias number NOT NULL, CONSTRAINT FK_PRESTAMO_idMatBiblio1 FOREIGN KEY(idMatBiblio) REFERENCES MAT_BIBLIO(idMatBiblio), CONSTRAINT FK_PRESTAMO_idMatBiblio2 FOREIGN KEY(idUsuario) REFERENCES USUARIO(idUsuario));

CREATE TABLE AUTOR ( idAutor varchar2(4) NOT NULL, nomAutor varchar2(50) NOT NULL, CONSTRAINT PK_AUTOR_idAutor PRIMARY KEY(idAutor) );

CREATE TABLE MB_AUTOR ( idMatBiblio varchar2(20) NOT NULL, idAutor varchar2(4) NOT NULL, CONSTRAINT PK_MB_AUTOR_idMatBiblio_idAutor PRIMARY KEY(idMatBiblio,idAutor),

Page 24: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

24

PRIMER BIMESTRE

CONSTRAINT FK_MB_AUTOR_idMatBiblio FOREIGN KEY(idMatBiblio) REFERENCES MAT_BIBLIO(idMatBiblio), CONSTRAINT FK_MB_AUTOR_idAutor FOREIGN KEY(idAutor) REFERENCES AUTOR(idAutor) );

Como la tabla MB_AUTOR es una tabla intermedia, producto de una relación muchos a muchos, las relaciones MAT_BIBLIO y AUTOR; tiene su clave principal formada por las claves de ambas tablas PRIMARY KEY (idMatBiblio,idAutor). Entonces cada uno de los campos son claves foráneas, y la composición de los dos atributos forman la clave principal de la tabla MB_AUTOR.

El script, mostrado anteriormente, basta con colocarlo en alguna consola de SQL y ejecutarlo, para que se creen las estructuras físicamente en el servidor de base de datos.

Diríjase al texto básico y revise en la página 458, el paso 4 “Diseñar la organización de los archivos y los índices”.

Continuemos revisando las actividades que comprende esta fase de diseño físico. Como ya haya podido destacar, se debe hacer un análisis de las transacciones que se ejecutarán en la base de datos, que inclusive puede ayudar a prever la carga que tendrá el servidor de base de datos. Una forma de hacer este análisis es apoyarse en la matríz cruzada de transacciones y relaciones; analice la tabla 17.1 del texto básico.

Esta matriz tiene por un lado el listado de todas las relaciones que componen nuestro diseño de base de datos. Por otro lado contiene las transacciones que se ha identificado junto con las operaciones que se puede aplicar, como son inserción, lectura, actualización y borrado. Entonces para cada transacción verificamos qué relación se utiliza o está implicada y marcamos con una “X” en la operación que la transacción ejecutaría sobre la relación, así por ejemplo en la transacción C se hace una lectura a la relación Branch.

Así mismo se debe considerar la organización de los archivos, algo que afecta directamente en el rendimiento así como la elección y creación de índices, recuerde que nos podemos valer de la creación de tantos índices secundarios como sean necesarios con el objeto de acelerar los tiempos de respuesta, eso sí teniendo cuidado de la cantidad de espacio en disco que se pueda requerir ya que una creación desmedida de objetos de base de datos puede causar que el espacio en disco disminuya rápidamente. Continuemos…

En su texto básico, revise en la página 470, el paso 5 “Diseñar las vistas de usuario”.

Bien, ahora que ha revisado el contenido del texto básico, le será relativamente fácil responder a la siguiente interrogante:

¿Las vistas de usuario juegan un rol importante al momento de imponer los mecanismos de seguridad?

Si le resulta fácil responder a la pregunta planteada, lo ha hecho muy bien, ha asimilado los contenidos hasta ahora revisados. Por el contrario si no puede responder a la pregunta, revise nuevamente los contenidos.

Page 25: Base de Datos Avanzadas Guia

25

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Nuevamente vaya al texto básico y revise en la página 470, el paso 6 “Diseñar los mecanismos de seguridad”.

Seguramente ahora ya comprende de mejor forma que la base de datos es un activo más de la organización, por lo que se debe implementar mecanismos de seguridad que salvaguarden la información. Estos mecanismos de seguridad deben ser analizados y deben validar la mejor opción para ser implementados de acuerdo a las especificaciones hechas en la etapa de recopilación y análisis de requisitos.

Gracias a su esfuerzo, ha terminado una unidad más. Siga adelante desarrollando las demás unidades. Para aplicar los conocimientos adquiridos, conviene que desarrolle las actividades recomendadas descritas a continuación.

ACTIVIDADES RECOMENDADAS:

Complemente el estudio de la presente unidad, al desarrollar las siguientes actividades propuestas, esto le permitirá saber los temas que debe reforzar.

• Desarrolle los puntos 17.2, 17.3, y 17.4.

Ejercicios

Refuerce el nivel de conocimientos de la presente unidad con los ejercicios siguientes de la sección ejercicios de su texto básico.

• Ejercicios 17.13.

Page 26: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

26

PRIMER BIMESTRE

Autoevaluación 2

Bien, es momento de evaluar el conocimiento adquirido, por lo que le invitamos a resolver las siguientes preguntas:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) DBDL significa DataBaseDefinitionLanguage.

2. ( ) Un atributo derivado no es lo mismo que un atributo calculado.

3. ( ) Un “pico de carga” es el período en el cual se hace la carga inicial de datos desde algún sistema anterior.

4. ( ) La sentencia para crear una clave primaria en SQL es CREATE PRIMARY KEY

5. ( ) Las sentencias GRANT y REVOKE son excluyentes, es decir solo se puede aplicar una a la vez.

6. ( ) Las restricciones generales se implementan a través de constraints de tipo CHECK, NOT NULL.

7. ( ) Los índices secundarios ayudan a la eficiencia en la extracción de información pero hay cierto costo para la administración de los mismos.

8. ( ) Una base de datos representa un recurso corporativo esencial.

9. ( ) Oracle ofrece una utilidad de diagnóstico denominada EXPLAIN PLAN para inspeccionar la estrategia que toma el optimizador.

10. ( ) Cuando el SGBD procesa una consulta solamente basado en índices sin acceder al archivo de datos se denomina “plan de solo índice”.

Compruebe sus aciertos sonsultando en solucinario.

Ensayo

11. En base al modelo de datos de la biblioteca, mostrado en este capítulo de la guía de estudio, defina los índices que a su criterio ayuden a mejorar el rendimiento de las consultas a la base de datos.

Ir a solucionario

Page 27: Base de Datos Avanzadas Guia

27

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Unidad 3: Metodología: monitorización y optimización del sistema final

Estimado estudiante, dando continuidad al proceso metodológico para el diseño de una base de datos, vamos a revisar ahora el tema de monitoreo y optimización. En el capítulo anterior vimos cómo implementar nuestra base de datos físicamente que posteriormente ponerla en uso. El monitoreo se da justamente cuando nuestra base de datos ya se está utilizando, y los datos obtenidos del monitoreo nos servirán para hacer ajustes en donde haga falta.

Para el desarrollo de esta unidad, vaya revisando conjuntamente con esta guía el capítulo 18 del texto básico lo referente a “Metodología: monitorización y optimización del sistema final”.

3.1. Desnormalización e introducción de redundancia controlada

Ahora vamos a revisar el tema de desnormalización, que se contrapone con el proceso de normalización. Para alguno quizá esto suene un poco ilógico, es decir, ¿para qué normalizamos si luego podemos desnormalizar? La cuestión es que casi siempre necesitamos normalizar, pero haremos lo contrario solamente en los casos estrictamente necesarios, en donde tengamos una ganancia en el rendimiento, aunque a veces también depende de la naturaleza del problema que estemos resolviendo. Antes de continuar conviene que se refiera al texto básico.

Vaya al texto básico y revise el paso 7: “Considerar la introducción de una cantidad controlada de redundancia”.

Seguramente después de revisar los contenidos, se han generado más dudas que certezas; no se preocupe, vamos a explicar detenidamente esta parte.

Como recordará, una de las actividades dentro de la fase de diseño lógico es la de “normalizar”, para que nuestro diseño tenga un mínimo de redundancia, pero ahora en cambio aparece el término desnormalizar, que hace referencia al proceso contrario, es decir que introduce en nuestro modelo cierta cantidad de redundancia justificado en la mejora de rendimiento que se obtiene a cambio.

Recuerde que la introducción de redundancia debe ser controlada y se justifica solamente si la mejora en el rendimiento es considerable. Esta mejora del rendimiento tiene su costo, y es que mientras acelera las consultas puede ralentizar las actualizaciones, es por eso que hay que tener mucho cuidado cuando aplicamos desnormalización.

Page 28: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

28

PRIMER BIMESTRE

Para ejemplificar mejor este concepto vamos a explicar los ejemplos propuestos en el texto básico, de manera que pueda entender mejor el concepto:

Partimos de dos relaciones:

Cliente

Nombre Descripción

clientNo Identificador de cliente

fName Nombre del cliente

lName Apellido del cliente

telNo Número telefónico del cliente

prefType Tipo de preferencia de propiedad (Flat=piso, House=casa)

maxRent Máxima renta a pagar

Entrevista

Nombre Descripción

clientNo Identificador de cliente

staffNo Identificador de la sucursal

dateInterview Fecha de la entrevista

Comment Comentario de la entrevista

Para introducir desnormalización, unimos las dos relaciones en una sola. Dado que no todos los clientes han hecho una entrevista, existen valores nulos en las columnas staffNo, dateInterview y comment.

Figura 3.1.Combinación de tablas Cliente-Entrevista (Connolly, 2005)3.

3 Connolly, T. y. (2005). Sistemas de bases de datos: Un enfoque práctico para diseño, implementación y gestión (4ta ed.). Madrid, España: Pearson Educación.

Page 29: Base de Datos Avanzadas Guia

29

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Ahora analice la figura 18.3 en el texto básico. Ahí se está introduciendo redundancia al copiar el atributo lName (Apellido) desde la relación PrivateOwner (PropietarioPrivado), esto elimina para ciertos casos la necesidad de aplicar un JOIN entre PropertyForRent y PrivateOwner con lo que estoy haciendo que el sistema tenga mejor rendimiento, mejores tiempos de respuesta.

El mismo caso anterior aplica para el ejercicio de la figura 18.5 de su texto básico, en donde se duplica el atributo description (descripción) desde la entidad PropertyType (Tipo Propiedad).

Otro caso de introducción de redundancia son las tablas de extracción que son básicamente para consultas en donde se da un alto grado de desnormalización ya que se reúne mucha información repetitiva. Por último están las particiones cuyo trabajo es dividir en partes más manejables una tabla de gran tamaño, por ejemplo imagine en un banco la tabla en donde se registran las transacciones de los clientes, la misma crecerá aceleradamente por lo que es recomendable particionar la tabla y un criterio para hacerlo sería por fecha, entonces se generarían particiones por cada mes. Por ejemplo: cuando se haga una consulta de alguna transacción, esta se dirigirá o buscará únicamente en la partición que le corresponda y no necesitará buscar en toda la estructura.

3.2. Monitorización del sistema para mejorar el rendimiento

Ahora corresponde estudiar la fase de monitoreo del sistema en funcionamiento para poder obtener indicadores que nos permitan hacer ajustes en el diseño de base de datos.

Vaya al texto básico y revise el apartado 8 “Monitorización y optimización del sistema final”.

De seguro que ya tiene una idea de lo que comprende esta fase. Pues bien, en esta fase lo que se hace es monitorear el funcionamiento del sistema y hacer ajustes de ser necesario, debido a errores en el diseño o el cambio/evolución de algún requisito.

Para esta fase de monitoreo generalmente se utilizan herramientas automatizadas, que nos dan mucha flexibilidad y variedad de opciones al momento de obtener datos del monitoreo para luego interpretarlos y tomar las medidas necesarias. Un ejemplo de este tipo de herramientas se muestra en la figura 3-2, en donde se puede visualizar un pantallazo de un monitoreo a una base de datos Oracle, se pueden ver detalles como el número de usuarios conectados, el estado de los tablespaces, estado de la base de datos, porcentajes de utilización de memoria, procesador y disco, etc.

Con el mismo esfuerzo continuemos con el estudio de la unidad 4.

Page 30: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

30

PRIMER BIMESTRE

Figura 3.2. Herramienta de monitoreo Applications Manager, monitoreo de una base de datos Oracle (Manager, 2011)4.

4 Manager, A. (2011). Application Manager. Recuperado el 17 de 03 de 2011, de http://www.manageengine.com/products/applications_manager/screenshots.html

Page 31: Base de Datos Avanzadas Guia

31

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

ACTIVIDADES RECOMENDADAS:

A continuación le proponemos unos ejercicios para desarrollar, lo que le permitirá lograr un mayor entendimiento de la presente unidad.

• Desarrolle los puntos 18.1, 18.2, 18.3 y 18.4.

Ejercicios

Para reforzar el nivel de asimilación de los conocimientos de la presente unidad desarrolle la siguiente actividad.

• Consulte en Internet herramientas de monitoreo similares a Applications Manager y determine las opciones de monitoreo que ofrecen.

Page 32: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

32

PRIMER BIMESTRE

Autoevaluación 3

Bien, es momento de evaluar el conocimiento adquirido, por lo que le invitamos a resolver las siguientes preguntas:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) Cuando combino dos relaciones en una sola estamos hablando de desnormalización.

2. ( ) La desnormalización es aceptable solamente si disminuye el rendimiento.

3. ( ) El paso final del diseño de base de datos es el cierre del proyecto con el usuario.

4. ( ) Uno de los factores para medir la eficiencia sería el espacio de almacenamiento en disco.

5. ( ) Al conocer cómo están actuando la memoria principal, procesador, E/S de disco y red se podría tener una referencia para mejorar las prestaciones si fuere el caso.

6. ( ) La optimización de uso a menudo se conoce por algunos autores por desnormalización.

7. ( ) Al hablar de tablas de referencia o listas de selección estamos refiriéndonos a lo mismo.

8. ( ) El particionamiento de tablas únicamente aplica a nivel de tuplas.

9. ( ) La forma en que se organizan los datos en los discos puede ocasionar problemas como la contienda de disco.

10. ( ) Una ventaja del particionamiento es la seguridad.

11. ( ) La optimización puede evitar tener que comprar hardware adicional.

12. ( ) Una ventaja del particionamiento es la reducción de las prestaciones

Verifique sus aciertos consultando el solucionario.

Ensayo

13. ¿Cómo distribuiría los datos de su base de datos si contara con un juego de 4 discos duros de 140Gb cada uno?

Ir a solucionario

Page 33: Base de Datos Avanzadas Guia

33

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Unidad 4: Seguridad

Estimado estudiante, hasta ahora hemos revisado las fases de la metodología de diseño de base de datos que sirven para poner en marcha un sistema de base de datos, también se ha monitoreado su funcionamiento para poder hacer los correctivos necesarios, conviene en este momento darle un valor agregado a nuestro sistema de base de datos que es el de dotarle de seguridad.

Para el desarrollo de esta unidad, vaya revisando conjuntamente con esta guía el capítulo 19 del texto básico el tema referente a: “Seguridad”.

4.1. Seguridad de la base de datos

Como todo componente informático, la base de datos también puede ser objeto de ataques mal intencionados, entonces debemos asegurarnos que esté protegida a través de la implementación de medidas de seguridad apropiadas.

Vaya al texto básico y revise el apartado 19.1 “Seguridad de la base de datos”.

Luego de haber revisado lo referente a la seguridad de una base de datos se podrá haber dado cuenta que hay varios aspectos que se deben tomar en consideración, y por más que creamos que hay algo evidente, debemos asegurarnos que esté bien definido y documentado de manera que podamos ejecutar algún plan de contingencia en caso de ser necesario.

También habrá podido identificar que un ataque mal intencionado no es que solamente afecte por ejemplo a la base de datos, sino que le afecta a la organización entera porque este componente sirve a la misma en su totalidad.

Es entonces necesario que se considere diseñar un plan de seguridad en el que se identifique los tipos de amenaza para poder prevenirlos, ya que la prevención es la mejor defensa en este tipo de circunstancias.

En la siguiente figura se sintetiza los puntos en los que se debe poner mayor atención en cuanto a la seguridad de una base de datos para reducir el riesgo de que puedan ocurrir.

Figura 4-1. Puntos de atención en cuanto a seguridad (Connolly, 2005)5.

5 Connolly, T. y. (2005). Sistemas de bases de datos: Un enfoque práctico para diseño, implementación y gestión (4ta ed.). Madrid, España: Pearson Educación.

Recursos educativos multimedia

Page 34: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

34

PRIMER BIMESTRE

4.2. Contramedidas: controles informatizados

Una vez que ha identificado las amenazas de seguridad a las que se enfrenta su sistema de base de datos, tenemos que averiguar cómo prevenirlas.

Vaya al texto básico y revise el apartado 19.2. “Contramedidas: controles informatizados”.

Analicemos la figura 19.1 de su texto básico, en ella podemos ver las amenazas más importantes a las que se enfrentan los sistemas informáticos, si nos damos cuenta, están orientados a varios aspectos como el hardware, redes de comunicaciones, bases de datos, SGBD y software de aplicación, usuarios, programadores/operadores, DBA, etc.

Supongamos un entorno bancario, en donde el DBA tiene acceso total a la base de datos. En esta situación conviene tener políticas y procedimientos para el correcto manejo de las operaciones en el área de base de datos. Por ejemplo todas las actividades que realiza el DBA deben ser auditadas, así también el DBA no debería conocer el modelo de datos para evitar que sepa en qué tablas está la información más sensible, la misma que si el SGBD lo permite debería estar encriptada.

Frente a las amenazas de seguridad hay que estar preparado y para ello se aplican contramedidas como las que constan a continuación y que están enfocadas para un entorno multiusuario:

Figura 4.1. Contramedidas de seguridad informatizadas (Connolly, 2005)6.

Remítase al texto básico para obtener un detalle de cada una de estas contramedidas.

4.3. Seguridad en el SGBD de Microsoft Office Access y en el SGBD Oracle

Veamos ahora las medidas de seguridad que nos proporcionan ciertas herramientas informáticas como por ejemplo Microsoft Office Access u Oracle.

Microsoft Access ofrece seguridad en cuanto a contraseñas, ya que no se puede abrir una base de datos si no proporciona un nombre de usuario y una contraseña. También ofrece seguridad a nivel de usuario, permitiendo agregar los usuarios a grupos y asignándoles permisos para que puedan acceder objetos solamente donde estén autorizados.

6 Connolly, T. y. (2005). Sistemas de bases de datos: Un enfoque práctico para diseño, implementación y gestión (4ta ed.). Madrid, España: Pearson Educación.

Page 35: Base de Datos Avanzadas Guia

35

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

En el SGBD Oracle, también se manejan usuarios a los que se les puede asignar privilegios a dos niveles, de sistema como por ejemplo CREATE PROCEDURE y sobre objetos como por ejemplo GRANT SELECT ON estudiante TOreportes.

En el texto básico y revise el apartado 19.3. “Seguridad en el SGBD de Microsoft Office Access” y 19.4. “Seguridad en el SGBD de Oracle”, estos le brindará información con más detalle.

4.4. Seguridad de un SGBD en entornos Web

Ahora que ya hemos revisado los conceptos de seguridad, amenazas y contramedidas, vamos a revisar cómo actuar en un entorno Web.

Vaya al texto básico y revise el apartado 19.5. “Seguridad de un SGBD en entornos Web”.

Luego de haber revisado su texto básico, ya debería haber identificado que las medidas de seguridad en entornos Web se basan en:

Figura 4.2. Medidas de seguridad en entornos Web (Connolly, 2005)7..

Seguramente esta unidad le resultó un poco difícil, ya que aparece mucha terminología nueva, pero si ha llegado hasta aquí ha hecho un gran esfuerzo. ¡Ánimo! que con esta unidad estamos culminando el bimestre.

ACTIVIDADES RECOMENDADAS:

A continuación se proponen algunas actividades recomendadas que al desarrollarlas, le ayudarán para un mejor entendimiento de la presente unidad.

• Desarrolle los puntos 19.2 y 19.3.

Recuerde que puede solicitar ayuda a su tutor mediante el campus virtual o telefónicamente.

7 Connolly, T. y. (2005). Sistemas de bases de datos: Un enfoque práctico para diseño, implementación y gestión (4ta ed.). Madrid, España: Pearson Educación.

Page 36: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

36

PRIMER BIMESTRE

¸Ejercicios

Para poner sus conocimientos en la práctica, dearrolle los ejercicios siguientes propuestos al final de la sección correspondiente de su texto básico.

• Ejercicio 19.9.

• Adicionalmente piense en una solución para el problema de clonación de tarjetas de débito que se sucede a diario en nuestro país. Qué recomendaría aplicar para minimizar esta problemática, puede abarcar tanto procedimientos, hardware, software como personal entrenado.

Page 37: Base de Datos Avanzadas Guia

37

Guía didáctica: Base de Datos AvanzadaPRIMER BIMESTRE

Autoevaluación 4

Bien, es momento de evaluar el conocimiento adquirido, por lo que le invitamos a resolver las siguientes preguntas:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) Una amenaza puede ser desatada por un suceso en donde se involucre una persona, acción o circunstancia que pueda llegar a producir daño a la organización.

2. ( ) Un control físico al igual que un procedimiento administrativo puede considerarse como un tipo de contramedida.

3. ( ) Al decir que un usuario se autenticó quiere decir que tenía autorización.

4. ( ) La responsabilidad de autorizar el uso de un SGBD, usualmente recae sobre el DBA.

5. ( ) Los backups de la base de datos sirven para proteger a la base de datos contra ataques de hackers.

6. ( ) Una vista es considerada como un nivel de seguridad.

7. ( ) Debemos utilizar el cifrado que ofrecen los SGBD’s para cifrar toda la información almacenada en la base de datos.

8. ( ) El hardware en el que el SGBD se ejecute debe ser tolerante a fallos.

9. ( ) En Office Access la única característica de seguridad que ofrece es la concesión de privilegios con GRANT y REVOKE.

10. ( ) Un certificado digital es un adjunto que se añade a un mensaje electrónico y que se utiliza con propósitos de seguridad.

Verifique sus aciertos consultando el solucionario qu se encuentra en la parte final de esta guía

Ir a solucionario

Page 38: Base de Datos Avanzadas Guia
Page 39: Base de Datos Avanzadas Guia

39

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

SEGUNDO BIMESTRE

7.4. Competencias genéricas

COMPETENCIAS ESPECÍFICAS

INDICADORES DE APRENDIZAJE

CONTENIDOSACTIVIDADES DE APRENDIZAJE

CRONOGRAMA ORIENTATIVO

Tiempo estimadoUnidades/Temas

Realiza la gestión y recuperación de información generada en los sistemas informáticos.

Administrar y gestionar bases de datos empresariales.

• Diferencia los diversos tipos de transacción.

• Distingue los problemas que pueden presentarse con la concurrencia.

• Identifica las formas de recuperación de la base de datos.

Unidad 5. Gestión de transacciones

5.1. Soporte de transacciones

5.2. Control de concurrencia

5.3. Recuperación de la base de datos

5.4. Modelos avanzados de transacciones

• Estudio autónomo de esta unidad, basado en los temas indicados en la guía didáctica.

• Lectura analítica de los temas del texto básico.

• Desarrollo de ejercicios prácticos propuestos en el texto básico .

• Desarrollo de la autoevaluación para esta unidad.

• Interacción en el EVA, con el tutor y compañeros.

• Desarrollo de la evaluación a distancia cuyos temas se relacionan con esta unidad.

• Realizar un cuadro resumen de las formas de recuperación de una base de datos.

Semana 9

• 4 horas de autoestudio

• 4 horas de interacción.

• Describir cada una de las fases del procesamiento de consultas

• Identificar las etapas de descomposición de consultas.

• Enumerar las estrategias de ejecución alternativas más comunes para el procesamiento de consultas.

Unidad 6. Procesamiento de consultas

6.1. Panorámica del procesamiento de consultas

6.2. Descomposición de consultas

6.3. Numeración de las estrategias de ejecución alternativas

• Leer comprensivamente el capítulo 21: “Procesamiento de consultas del texto básico”.

• Investigar la forma de cómo se pueden descomponer las consultas.

• Resolver la autoevaluación planteada en esta unidad.

• Revisar los anuncios del EVA.

Semana 10

• 4 horas de estudio.

• 4 horas de interacción.

Page 40: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

40

SEGUNDO BIMESTRE

COMPETENCIAS ESPECÍFICAS

INDICADORES DE APRENDIZAJE

CONTENIDOSACTIVIDADES DE APRENDIZAJE

CRONOGRAMA ORIENTATIVO

Tiempo estimadoUnidades/Temas

• Analiza la necesidad de un almacén de datos en una organización.

• Enumera y describir cada uno de los componentes de un almacén de datos.

• Describe la función y ruta de cada uno de los flujos de datos.

Unidad 7. Conceptos de almacenes de datos

7.1. Introducción a los almacenes de datos

7.2. Arquitectura de un almacén de datos

7.3. Flujos de datos en un almacén de datos

• Realizar lectura comprensiva del texto básico del capítulo 13: “Conceptos de almacenes de datos” específicamente de los temas propuestos en esta unidad.

• Realizar un mentefacto sobre los almacenes de datos.

• Desarrollar el ejercicio propuesto en el capítulo 31: “Conceptos de almacenes de datos” del texto básico.

• Revisar la información planteada en el EVA.

• Responder la autoevaluación de esta unidad expuesta en la presente guía didáctica.

Semana 11 y 12

• 8 horas de autoestudio.

• 8 hora de interacción.

Unidades de la 5 - 8 • Aplicación de autoevaluaciones de la guía didáctica de las unidades 6-8

• Revisión de foro de consultas al profesor

• Realización de ejercicios propuestos en el EVA

Semana 15 y 16

• 8 horas de autoestudio.

• 8 horas de interacción.

Page 41: Base de Datos Avanzadas Guia

41

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

7.5. Orientaciones específicas para el aprendizaje por competencias

Unidad 5: Gestión de transacciones

Estimada estudiante, le invito a iniciar esta unidad siguiendo paso a paso cada uno de los temas planteados, pues le ayudarán a conocer el soporte de transacciones y el control de concurrencia en una base de datos.

Para el desarrollo de esta unidad, vaya revisando conjuntamente con esta guía el capítulo 20 del texto básico lo referente a “Gestión de transacciones”.

5.1. Soporte de transacciones

Para comprender este tema es importante recordar que una transacción es una acción o serie de acciones llevadas a cabo por un único usuario o por un programa de aplicación que lee y/o actualiza el contenido de la base de datos.

Toda transacción debe transformar la base de datos llevándola de un estado coherente a otro, aunque se acepta que la coherencia se viole tempranamente mientras la transacción está teniendo lugar.

Cuando usted está ejecutando una tarea en la base de datos y esta se completa con éxito, decimos que la transacción se ha confirmado quedando la base de datos en un estado coherente, pero si por el contrario, la transacción no se ejecuta con éxito, entonces decimos que la transacción se aborta, si se da este último caso entonces será necesario restaurar la base de datos al estado coherente en el que se encontraba antes, en este caso se dice que la transacción se deshace. Tenga presente que una transacción confirmada no puede abortarse. Si se le presenta el caso en el que la transacción confirmada era un error, entonces debe realizar otra transacción de compensación.

De acuerdo al análisis anteriormente descrito, a continuación revisemos un resumen de las palabras que la mayoría de lenguajes de manipulación de datos utilizan para establecer los diferentes estados de las transacciones.

Muchos lenguajes de manipulación de datos incluyen las palabras:

- BEGIN

- TRANSACTION

- COMMIT

- ROLLBACK

Si no se especifica alguno de estos limitadores, el Sistema Gestor de Base de Datos (SGBD) realizará automáticamente una operación de confirmación (COMMIT) o de deshacer la transacción (ROLLBACK) en caso contrario.

Recursos educativos multimedia

Page 42: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

42

SEGUNDO BIMESTRE

5.2. Control de concurrencia

Una vez que hemos conocido lo que es una transacción y sus diferentes estados, debemos comprender que algunas bases de datos se utilizan en entornos multiusuario, lo que significa que varios usuarios pueden acceder a los mismos objetos de la base de datos al mismo tiempo, por esta razón muchos motores de base de datos gestionan dichos accesos, a esto se lo conoce como control de concurrencia.

Ahora, completemos el estudio de este tema leyendo en el texto básico al siguiente apartado “Control de concurrencia” que lo podrá encontrar en el capítulo 20 “Gestión de transacciones”.

5.3. Recuperación de la base de datos

En este apartado es importante que usted conozca que entre las responsabilidades de un administrador de base de datos se encuentra la recuperación de una base de datos, el mismo que consiste en restaurarla a un estado correcto en caso de fallo.

Para poder restaurarla debe conocer que existen diferentes tipos de fallos que pueden afectar al procesamiento de la base de datos, por esta razón cada uno de ellos deberá ser tratado de una manera distinta. Para que comprenda mejor, hagamos una analogía con medicina donde para cada enfermedad se tiene un tratamiento diferente y medicamentos específicos.

Bien, hasta aquí hemos tenido una pequeña explicación de la recuperación de la base de datos. Ahora conviene que usted profundice los contenidos leyendo capítulo 20 “Gestión de transacciones”, específicamente los puntos tratados en el tema “Recuperación de la base de datos”.

Funcionalidades de recuperación

Un Sistema Gestor de Base de Datos (SGBD) debe proporcionar algunas funcionalidades como apoyo a la recuperación, para comprender este tema le invitamos a que, como parte de su autoestudio, realice la siguiente actividad.

ACTIVIDAD RECOMENDADA:

Destaque las funcionalidades de un SGBD como ayuda a la recuperación, para esto realice un cuadro sinóptico en el que describa las características más importantes de cada una de ellas.

5.4. Modelos avanzados de transacciones

En las secciones anteriores hemos aprendido sobre los modelos simples de transacciones, en este apartado conoceremos que, a diferencia de las transacciones que surgen en las aplicaciones empresariales tradicionales como por ejemplo las del sector bancario, existen otros tipos avanzados de aplicaciones de base de datos, por ejemplo aplicaciones de diseño como el asistido por computadora, cuyas características son:

Page 43: Base de Datos Avanzadas Guia

43

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

- Un diseño puede ser muy grande llegando a estar compuesto de millones de componentes.

- El diseño no es estático sino que evoluciona con el tiempo.

- Las actualizaciones tienen un largo alcance debido a las relaciones topológicas, a las relaciones funcionales, etc.

Es preciso que aprenda sobre cada una de las características de los modelos avanzados de transacciones, para esto puede leer en el texto básico el capítulo “Gestión de Transacciones”, donde también encontrará algunos problemas que se pueden resolver con los protocolos tradicionales de gestión de transacciones.

Modelo de transacciones anidadas

Revisando este tema usted podrá darse cuenta que en este modelo toda la transacción forma un árbol o jerarquía de subtransacciones. Existe una transacción de primer nivel que pueden tener una serie de transacciones hijas.

En las transacciones anidadas las operaciones de una transacción pueden ser así mismo transacciones. Analicemos el siguiente ejemplo (Colouris, 2005)8,

Begin_transaction Reservación. . .Begin_transaction Vuelo. . .end. {Vuelo}. . .Begin_transaction Hotel. . .end.. . .

end.

Como podrá darse cuenta dentro de la transacción “Reservación” se ejecutan dos transacciones más “Vuelo” y “Hotel”, las mismas que tienen iguales características que la transacción que las contiene.

De acuerdo al análisis, podemos decir que una transacción anidada dentro de otra transacción conserva las mismas propiedades que la de sus padres, esto implica, que puede contener así mismo transacciones dentro de ella. Existen restricciones obvias en una transacción anidada: debe empezar después que su padre y debe terminar antes que él. Más aún, el commit de una subtransacción es condicional al commit de su padre, en otras palabras, si el padre de una o varias transacciones aborta, las subtransacciones hijas también serán abortadas.

Las transacciones anidadas proporcionan un nivel más alto de concurrencia entre transacciones. Ya que una transacción consiste de varios transacciones, es posible tener más concurrencia dentro de una sola transacción. Así también, es posible recuperarse de fallas de manera independiente de cada

8 Coulouris, Procesamiento de transacciones [En línea]. Disponible en: http://ldc.usb.ve/~yudith/docencia/Telematica/TemasSistDist/ProcesamientoTransII.pdf [Consulta 10-06-2011]..

Page 44: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

44

SEGUNDO BIMESTRE

subtransacción. Esto limita el daño a una parte más pequeña de la transacción, haciendo que el costo de la recuperación sea menor.

El autor del texto básico en el capítulo 20: “Gestión de Transacciones”, expone de una manera detallada el modelo de transacciones anidadas y emulación de las transacciones anidadas utilizando puntos de salvaguarda. Le invito a revisar este tema detenidamente.

Ha completado con éxito el estudio de la presente unidad, debo recordarle que a continuación se proponen algunas actividades recomendadas que sería bueno que las desarrolle.

ACTIVIDADES RECOMENDADAS:

Culminemos el estudio de esta unidad realizando las siguientes actividades que le ayudarán a reforzar lo aprendido:

- Desarrolle los literales (a), (c) y (d) del ejercicio 20.18 propuesto en el texto básico.

Recuerde que puede solicitar ayuda a su tutor mediante el campus virtual o telefónicamente.

Interactividad virtual

Fortalezca sus criterios y conocimientos respecto al tema y a la asignatura ingresando periódicamente a través del campus virtual (http://www.utpl.edu.ec)

Desde su aula virtual de la asignatura, puede conocer los anuncios de su profesor, y todos los participantes tienen acceso a los foros de discusión donde su aporte es valioso y es aún más significativo si la participación involucra conversación con los integrantes del curso.

En nuestro caso, la participación en los foros de discusión es obligatoria, dado quetienen una calificación en su evaluación a distancia.

Page 45: Base de Datos Avanzadas Guia

45

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

Autoevaluación 5

Una vez que hemos concluido el estudio de la presente unidad, desarrollemos las siguientes cuestiones de repaso sin ayuda del texto básico; luego verifique sus respuestas en la parte final de la presente guía.

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) Una transacción es una unidad de medida del rendimiento de la base de datos.

2. ( ) Uno de los potenciales problemas producidos por la concurrencia es el problema de la actualización perdida.

3. ( ) Una planificación no serie es aquella en la que las operaciones de cada transacción se ejecutan consecutivamente sin que se entrelacen operaciones de otras transacciones.

4. ( ) Una de las funcionalidades como ayuda a la recuperación del motor de base de datos es un mecanismo de copia de seguridad mediante el que se hagan copias de seguridad semanales del SGBD.

5. ( ) Se conoce como transacción anidada aquella que no se relaciona o no contiene a ninguna otra transacción.

6. ( ) El objetivo de la serializabilidad es encontrar planificaciones no serie que permitan ejecutar concurrentemente las transacciones sin que estas interfieran entre sí.

7. ( ) Si un conjunto de transacciones se ejecuta concurrentemente, decimos que la planificación es correcta si produce los mismos resultados que una transacción no serie.

8. ( ) Un punto de comprobación es el punto de sincronización entre la base de datos y el archivo de registro de transacciones.

9. ( ) Los puntos de comprobación se programan a intervalos indefinidos.

10. ( ) Escribir en el almacenamiento secundario todas las entradas de registro de la memoria principal es una operación de los puntos de comprobación.

Verifique sus aciertos confrontando con el solucionario respectivo

Ir a solucionario

Page 46: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

46

SEGUNDO BIMESTRE

Unidad 6: Procesamiento de consultas

Al empezar esta unidad es importante que recuerde que cuando usted estaba iniciando el estudio de las bases de datos, entre las tareas básicas que realizaba eran consultas para obtener información de las mismas, una vez que conoce cómo se las crea es importante que aprenda su manera de trabajo, es por esto que le invitamos para que revise detenidamente cada tema propuesto en esta unidad.

Con el estudio de la presente unidad se conocerá el procesamiento de las consultas en una base de datos y cuál es la mejor forma de volverlas eficientes.

Para el desarrollo de esta unidad, revise conjuntamente con esta guía el capítulo 21 del texto básico.

6.1. Panorámica del procesamiento de consultas

Una vez que ha aprendido sobre las transacciones que se ejecutan en una base de datos, es importante que revisemos el procesamiento de las consultas, este es un tema que será de mucho interés para usted, pues la consulta de datos es una de las tareas más comunes que realizamos en una base de datos, es por esta razón que entre los objetivos del procesamiento de consultas tenemos:

- Mejorar el rendimiento de las consultas a través de la utilización de algoritmos eficientes.

- Transformar una consulta escrita en un lenguaje de alto nivel, normalmente SQL, en una estrategia de ejecución correcta y eficiente.

Fases del procesamiento de consultas

Tomando como referencia el texto básico realice un diagrama en el que se describa cada una de las fases del procesamiento de consulta, indicando que entrega y que recibe cada fase.

6.2. Descomposición de consultas

La descomposición de consultas, transforma una consulta de alto nivel en una consulta de algebra relacional y comprueba que dicha consulta sea sintáctica y semánticamente correcta.

Para comprender las etapas típicas de la descomposición de consultas vamos revisando detalladamente cada una de ellas en el texto básico en el capítulo 21: “Procesamiento de consultas” y tratando unos pequeños ejemplos que le ayudarán a comprender mejor este tema.

Análisis: habíamos revisado en la sección anterior que el procesamiento de consultas se asemeja a la compilación de los lenguajes de programación, por lo cual en esta etapa se analiza la consulta léxica y sintácticamente utilizando las técnicas de los compiladores.

Recursos educativos multimedia

Page 47: Base de Datos Avanzadas Guia

47

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

En el análisis léxico lo que se verifica es que tanto las palabras que pertenecen al lenguaje como los nombres de identificadores estén escritos correctamente, mientras que en el análisis sintáctico verifica que la expresión que refleja la consulta esté escrita en la estructura correcta.Por ejemplo: si tenemos una consulta como la siguiente:

$ELECT * FRON WHERE *

El resultado del análisis nos devolverá error por las siguientes razones:

a) En el análisis léxico nos devolverá error en la palabra $ELECT porque esa palabra no pertenece a un lenguaje de consulta.

b) FRON, lo tomará como un identificador puesto que la palabra reservada correcta es FROM.

c) Sintácticamente devolverá error porque no va a encontrar una estructura correcta después del primer asterisco (*).

Normalización

La normalización convierte la consulta en una forma normalizada que pueda manipularse fácilmente. Son comúnmente empleadas la forma normal conjuntiva y la disyuntiva.

En este punto le propongo realizar un cuadro comparativo de estas dos formas normales.

Análisis semántico

Al igual que en los compiladores, el análisis semántico en el procesamiento de las consultas, verifica que las consultas estén correctamente formuladas o que no sean contradictorias.

Este análisis es independiente de la extensión o estado almacenado en la BD, por lo que, si puede derivarse que dicha consulta será siempre vacía; entonces, dicha consulta será invalidada semánticamente.

Ahora bien apoyémonos en la figura 21.3 del tema “Análisis semántico” del capítulo 21 “Procesamiento de consultas”, para comprender mejor este tema.

Simplificación

Cuando usted realiza una consulta es importante que esta sea lo más resumida posible para disminuir el trabajo que tiene que ejecutar el motor de base de datos, para lograr este objetivo puede utilizar la simplificación de expresiones la misma que reduce la complejidad de la consulta utilizando fundamentalmente equivalencias o leyes lógicas basadas en el Álgebra de Boole o Leyes de Morgan.

En el capítulo 21 “Procesamiento de consultas”, usted podrá encontrar las leyes antes mencionadas así como también un ejemplo para su mejor comprensión.

Page 48: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

48

SEGUNDO BIMESTRE

Reestructuración de la consulta

Una vez normalizada, contrastada semánticamente y simplificada la expresión de una consulta, la etapa final de la descomposición de una consulta, se reestructura para obtener una implementación más eficiente.

En la siguiente página de Internet usted podrá encontrar información adicional acerca de la descomposición de consultas:

- Departamento de Lenguajes y Sistemas Informáticos. Universidad de Sevilla. Proceso de consultas en bases de datos relacionales. [En línea] http://www.lsi.us.es/docencia/get.php?id=4560 [Consulta 12-02-2011].

6.3. Numeración de las estrategias de ejecución alternativas

Para garantizar la eficiencia del proceso de optimización de consultas un aspecto fundamental es el espacio de búsqueda de posibles estrategias de ejecución y el algoritmo de numeración que se utilice para explorar este espacio en búsqueda de una estrategia óptima.

Para comprender cómo puede reducirse el espacio de búsqueda y cómo se lo puede procesar de manera eficiente, vamos a examinar dos cuestiones que tienen relevancia; el concepto de pipeline y árboles lineales.

Pipeline: también se lo conoce como procesamiento en cadena o procesamiento de flujos, consiste en procesar en cadena los resultados de las distintas operaciones sin crear una relación temporal para almacenar el resultado intermedio.

Arboles lineales: se denominan así aquellas estructuras que hacen referencia al modo en que las operaciones se combinan para ejecutar la consulta; es decir, solo se permite que el lado izquierdo de una combinación sea el resultado de otra combinación anterior.

Ha concluido el estudio de la unidad 6, con el mismo esfuerzo y atención, le invito a continuar con el estudio de la unidad 7. Además, le recuerdo que es importante que desarrolle las actividades de apoyo que se encuentran a continuación.

ACTIVIDADES RECOMENDADAS:

Desarrolle lo solicitado a continuación y revise aquello que no esté suficientemente claro.

Desarrolle los literales (a), (b) y (c) del ejercicio 21.17 propuesto en el texto básico. En el capítulo 21 “Procesamiento de consultas”.

Page 49: Base de Datos Avanzadas Guia

49

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

Autoevaluación 6

Es necesario que repasemos lo aprendido, para ello desarrolle la actividad siguiente de manera que evaluemos lo que se ha aprendido en la presente unidad, para ello le invitamos a desarrollar lo siguiente:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) La fase de optimización de consultas se caracteriza porque se da en tiempo de ejecución.

2. ( ) La fase de descomposición de la consulta le envía a la fase de optimización de la consulta la expresión de algebra relacional.

3. ( ) El análisis semántico se refiere a la estructura correcta de la consulta.

4. ( ) La forma disyuntiva permite generar subconsultas cuyos resultados se pueden fusionarse mediante joins y/o restricciones.

5. ( ) Para obtener una consulta eficiente actúa la etapa de reestructuración de la consulta.

6. ( ) La etapa de normalización del procesamiento de consulta convierte la consulta en una forma normalizada que pueda manipularse más fácilmente.

7. ( ) Los objetivos de la etapa de análisis son detectar las cualificaciones redundantes, eliminar las subexpresiones comunes y transformar la consulta en otra.

8. ( ) Las actualizaciones realizadas en las base de datos se las registra en el archivo de transacciones

9. ( ) La copia de seguridad de la base de datos puede utilizarse en caso de que ésta resulte dañada o destruida.

10. ( ) Las transacciones representan la unidad de recuperación básica de un sistema de base de datos

Verifique sus aciertos con las respuestas dadas en el solucionario.

Ir a solucionario

Page 50: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

50

SEGUNDO BIMESTRE

Unidad 7: Conceptos de almacenes de datos

En esta unidad conoceremos soluciones que permiten a una organización analizar su información y de esta manera tomar decisiones con datos reales.

Para el desarrollo de esta unidad, vaya revisando conjuntamente con esta guía el capítulo 31 “Conceptos de almacenes de datos” que se encuentra en el texto básico.

7.1. Introducción a los almacenes de datos

En esta unidad es importante que usted conozca y comprenda la utilidad que algunas soluciones de inteligencia de negocio le pueden dar a una organización.

Como usted conoce, el crecimiento agigantado, que experimentan las organizaciones hoy en día, ha dado lugar al surgimiento de tecnologías que les ayudan a automatizar sus procesos de toma de decisiones para mantenerse competitivos en el mercado en el cual se desenvuelven, estas soluciones se les denomina OLAP (On-Line Analytical Processing).

Un almacén de datos es una solución OLAP, también se lo conoce como data warehouse, se basa en estructuras multidimensionales (cubos) en las que se almacena la información calculando previamente todas las combinaciones de todos los niveles de todas las aperturas de análisis9.

Uno de los problemas que resuelve la implementación de un almacén de datos es la obtención caótica de información de diferentes fuentes.

Note en la figura 7.1 que en una organización pueden existir varias fuentes de información y por este hecho al necesitar ciertos datos deben recurrir a algunas de ellas, volviéndose un proceso tedioso y poco confiable con respecto a la información obtenida, pues no tienen un método establecido para su generación.

Figura 7.1. Obtención caótica de información (Academia ALBI Microsoft, 2008).

9 Microsoft. Academia Latinoamericana de Business Intelligence [En línea][Consulta 2008].

Page 51: Base de Datos Avanzadas Guia

51

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

Un data warehouse resuelve fácilmente el problema antes mencionado porque se encarga de centralizar en un solo repositorio la información de las áreas de interés de una organización.

Comparación de los sistemas OLTP y los almacenes de datos o soluciones OLAP10

En la siguiente tabla se muestran las diferencias que son clave entre un sistema OLPT y un DW.

OLPT DatawarehouseObjetivos Operacionales Información para la toma de decisionesOrientación A la aplicación Al sujetoVigencia de los datos Actual Actual + históricoGranularidad de los datos Detallada Detallada + resumida

Organización Organización normalizada Organización estructurada en función del análisis a realizar

Cambios en los datos Continuos Estable

Una vez que hemos revisado temas importantes sobre los almacenes de datos le invitamos a completar el estudio de este tema leyendo en el texto básico desde el capítulo 31: “Conceptos de almacenes de datos”, el tema “Introducción a los almacenes de datos”.

De acuerdo a lo aprendido, le sugiero empezar a desarrollar la actividad complementaria propuesta en esta unidad.

7.2. Arquitectura de un almacén de datos

Continuemos en la explicación del siguiente tema analizando la figura 7.2; vamos identificando y describiendo cada componente de la arquitectura del data warehouse.

Figura 7.2. Arquitectura de un almacén de datos11 (Cáseres, 2009).

10 Microsoft. Academia Latinoamericana de Business Intelligence [En línea][Consulta 2008].11 Cáceres, M. Data Warehouse [En línea]. Disponible en: http://hp.fciencias.unam.mx/~alg/bd/dwh.pdf [Consulta 12-02-

2011].

Page 52: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

52

SEGUNDO BIMESTRE

Datos operacionales:12

Usted podrá notar que las fuentes de los datos para el almacén de datos pueden ser:

- Mayoritariamente precedentes de sistemas mainframe.

- Datos de estaciones de trabajo o servidores privados.

- Sistemas externos como las bases de datos comerciales, de proveedores o clientes, o incluso de Internet.

- Datos departamentales almacenados en Sistemas Propietario.

Repositorio de datos

También se lo conoce como ODS (Operational Data Store), el mismo que es un repositorio de datos operacionales actuales e integrados que se utiliza para el análisis.

Gestor de carga

Según acabamos de revisar, los orígenes de datos de un data warehouse es muy diverso y cada uno de ellos aporta para formar un repositorio centralizado, esto da origen a la necesidad de tener que realizar un procedimiento que permita estandarizar la diversidad de los datos que encontramos, ante esta situación surge un proceso llamado ETL (Extraction, Transformation, Load), el mismo que es el encargado de realizar las funciones de extracción de las fuentes de datos (transaccionales o externas), transformación (limpieza, consolidación principalmente) y la carga del almacén de datos, así como también hacer el refresco del almacén (operación periódica que propaga los cambios de las fuentes externas al almacén de datos). Con esto evitaremos el problema de presentar datos erróneos o faltantes la calidad de la información, generada por su solución, será confiable.

Gestor del almacén de datos

Con el procedimiento anterior usted tendrá en su solución los datos listos para que sean utilizados y pueda realizar las operaciones relacionadas con la gestión de los datos dentro del almacén utilizando herramientas específicas que realizan operaciones como la transformación de datos para la incorporación de éstos en las tablas del almacén de datos, la creación de índices y vistas de las tablas base, creación de copias de seguridad y archivado de datos, además del análisis de los datos para garantizar la coherencia de los mismos13.

Para que conozca más detenidamente sobre los diferentes datos que pueden encontrarse en un almacén de datos, le invito a revisar el capítulo 31 “Conceptos de almacenes de datos”, del texto básico específicamente el tema “Gestor del almacén de datos”.

Herramientas de acceso para usuarios

En el último nivel de la figura 7.2 (revisada anteriormente en esta guía), usted puede notar que es la parte en que los usuarios utilizan la solución data warehouse, para esto necesitan herramientas que les

12 Navarro, S.; García, G. Modelos avanzados de base de datos. [En línea]. Disponible en: http://alarcos.inf-cr.uclm.es/doc/bbddavanzadas/08-09/FUNCIONALIDAD%204.pdf [Consulta 12-02-2011].

13 Cáceres, M. Data Warehouse [En línea]. Disponible en: http://hp.fciencias.unam.mx/~alg/bd/dwh.pdf [Consulta 12-02-2011].

Page 53: Base de Datos Avanzadas Guia

53

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

proporcione acceso a la información generada y proceder a la toma de decisiones estratégicas. Por tanto la comunicación entre el almacén de datos y la herramienta será mediante consultas de tipo ad-hoc.

7.3. Flujos de datos en un almacén de datos

Estimado estudiante: para estudiar este tema, revisemos la figura 31.2, del texto básico, en el capítulo 31: “Conceptos de almacenes de datos”.

Note que existen los siguientes tipos de flujos de datos: de entrada, ascendente, descendente, de salida, metaflujo.

Para comprender mejor este tema, piense en una organización que necesite obtener cierta información de sus orígenes de datos por ejemplo puede ser datos de las personas que en ella trabajan, para lo cual necesitaría la base de datos de un sistema de recursos humanos, con este ejemplo le invito a pensar cómo sería el flujo de los datos en un sistema data warehouse, guíese analizando detenidamente el capítulo 31 “Conceptos de almacenes de datos”, del texto básico específicamente el tema “Flujos de datos en un almacén de datos”; y, realice un diagrama en que resuma lo aprendido acerca de los flujos de datos.

Le recomendamos la siguiente página de Internet, donde se encuentra una explicación más detallada de este tema:

- Cáceres, M. Data Warehouse [En línea]. Disponible en: http://hp.fciencias.unam.mx/~alg/bd/dwh.pdf [Consulta 12-02-2011]http://hp.fciencias.unam.mx/~alg/bd/dwh.pdf

Hasta ahora ha revisado temas importantes que le servirán de mucha ayuda en su vida profesional, con el mismo empeño continúe estudiando el capítulo 8. Y desarrolle las actividades propuestas a continuación.

ACTIVIDADES RECOMENDADAS:

En esta parte podrá aplicar lo aprendido, si comete errores será un indicador para que vuelva a revisar los temas de la presente unidad.

Desarrolle el ejercicio 31.15 del texto básico. En el capítulo 31 “Conceptos de almacenes de datos”.

Page 54: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

54

SEGUNDO BIMESTRE

Autoevaluación 7

Para medir su comprensión del tema mencionado en este capítulo, por favor desarrolle las siguientes preguntas:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) La diferencia entre un sistema OLTP y un sistema OLAP es que el segundo sirve para las operaciones diarias de una organización.

2. ( ) Un almacén de datos es una colección de datos clasificada por temas, integrada, variable en el tiempo y no volátil.

3. ( ) Una de las ventajas de los almacenes de datos es que permiten tener datos actualizados en línea.

4. ( ) Un almacén de datos proporciona una ventaja competitiva para la organización que lo implementa.

5. ( ) El ETL es la etapa del data warehouse en la que se le presenta la información al usuario.

6. ( ) En un sistema data warehouse puede existir información obtenida de varias fuentes de datos.

7. ( ) Un sistema OLTP proporciona mayor productividad de los responsables de la toma de decisiones.

8. ( ) Un OLAP sirve a un número relativamente bajo de usuarios de tipo gerencial.

9. ( ) El gestor del almacén de datos realiza todas las operaciones asociadas con el gestor de los datos del almacén.

10. ( ) El flujo de datos ascendente se da en los procesos asociados con la adición de valor a los datos del almacén, mediante los procesos de resumen, empaquetado y distribución de los datos.

Verifique sus respuestas consultando el solcucionario.

Ir a solucionario

Page 55: Base de Datos Avanzadas Guia

55

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

Unidad 8: Diseño de almacenes de datos

Estimado estudiante, en la unidad anterior aprendimos los conceptos básicos sobre almacenes de datos, en esta unidad estudiaremos los problemas asociados con el diseño de base de datos para funcionar como almacenes de datos, de esta manera usted tendrá una visión más clara de la construcción de soluciones OLAP.

Para el desarrollo de esta unidad, vaya revise, conjuntamente con esta guía, el capítulo 32: “Diseño de almacenes de datos”, del texto básico.

8.1. Diseño de la base de datos para un almacén de datos

Una vez que hemos aprendido qué es un almacén de datos, su arquitectura y diferentes esquemas, corresponde ahora aprender sobre el diseño del mismo, para esto es importante primero conocer ¿qué requisitos de usuario son los más importantes y qué datos debemos considerar en primer lugar? ¿debemos reducir el alcance del proyecto para que sea más manejable y al mismo tiempo proporcionar una infraestructura que pueda posteriormente crecer hasta convertirse en un almacén de datos completo de ámbito corporativo?, para empezar un proyecto de almacén de datos, estas son variables importantes y determinantes al momento de diseñar un almacén de datos.

Para construir un data warehouse se necesitan herramientas para ayudar a la migración y a la transformación de los datos hacia el almacén. Una vez construido, se requieren medios para manejar grandes volúmenes de información.

Para abordar un proyecto de data warehouse es necesario hacer un estudio de algunos temas generales de la organización o empresa, los cuales se describen a continuación14:

- Situación actual de partida

- Tipo y características del negocio

- Entorno técnico

- Expectativas de los usuarios

- Etapas de desarrollo

- Prototipo

- Piloto

- Prueba del concepto tecnológico

14 WIKIPEDIA, [En línea] [Disponible en]http://es.wikipedia.org/wiki/Almac%C3%A9n_de_datos[Consultada 07-02-2011].

Recursos educativos multimedia

Page 56: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

56

SEGUNDO BIMESTRE

8.2. Modelado de la dimensionalidad

En la unidad anterior revisamos y aprendimos que una solución OLAP tiene significativas diferencias entre una solución OLTP, en este apartado conoceremos sobre la estructura de almacenamiento de un almacén de datos, el componente de base de datos de un almacén de datos se describe utilizando una técnica denominada modelado de dimensionalidad.

En el mundo del modelado multidimensional encontramos dos componentes básicos: estos son los hechos y las dimensiones.

Hechos: proporcionan una información cuantitativa sobre las características del negocio que queremos analizar. Su finalidad es proporcionar información necesaria para la gestión, facilitando el conocimiento del negocio o proceso a modelar, y fundamentar, entre otras, la toma de decisiones, facilitar los procesos de marketing (ofertas y promociones), fidelizar clientes, valorar el desempeño de los trabajadores, etc.

Dimensiones: buscan determinar un contexto para el análisis de los hechos. Se trata de grupos homogéneos de elementos, en muchas ocasiones, jerarquizados. Su papel es promocionar la información contenida en los hechos. Cada tabla de dimensión tiene una clave principal simple que se corresponde con exactamente uno de los componentes de la clave compuesta de la tabla de hechos.

Para aprender sobre este tema, por favor, revisemos en el capítulo 31 “Diseño de almacenes de datos”, como podrá darse cuenta existen dos modelos que son los más conocidos y utilizados, el diagrama en estrella y el diagrama copo de nieve. Para comprender mejor este tema realice un cuadro comparativo en que destaque semejanzas y diferencias de cada uno de estos diagramas.

Ahora bien, una vez que ha comprendido sobre estos diagrama le invito a analizar la figura 32.1 y 32.2 y confirme las comparaciones realizadas.

8.3. Metodología de diseño de bases de datos para almacenes de datos

Una vez que hemos conocido sobre los diagramas de base de datos es preciso que revisemos sobre una metodología para el diseño de los almacenes de datos.

Aplique esta metodología en el ejercicio propuesto en las actividades recomendadas de esta unidad.

Paso 1: selección del proceso

Para realizar un mercado de datos es necesario tomar en cuenta que debe ser aquel que resulte más probable acabar en el tiempo previsto, con el presupuesto asignado y que permita responder a las cuestiones que más importancia tengan desde el punto de vista comercial. Por esta razón para cuando usted construya un almacén de datos debe centrarse en las necesidades principales de la organización beneficiaria del almacén.

Empecemos con el desarrollo del ejercicio propuesto, seleccionando el proceso a seguir.

Page 57: Base de Datos Avanzadas Guia

57

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

Paso 2: selección de la granularidad

Cuando se extrae los datos de una fuente de datos, se debe considerar el nivel de detalle con que se necesita los datos, a esto se le conoce como granularidad, una vez seleccionada usted podrá identificar las dimensiones de dicha tabla.

Revisemos la figura 32.5 del texto básico y note que en la tabla de hechos se muestran varias medidas que muestran el nivel de detalle de los datos que se desean medir, esta es la información que será presentada para la toma de decisiones.

Ahora que ya conoce lo que es la granularidad indique la misma en el ejercicio que estamos desarrollando.

Paso 3: identificación y conformación de las dimensiones

Para entender mejor este tema, pongamos como ejemplo un reporte que se genera en un sistema OLTP, para poder realizarlo usted debe conocer qué es lo que el usuario necesita saber, para lo cual debe preguntar específicamente qué criterios deben ser medidos; estos criterios son las diferentes agrupaciones en las que se van a presentar los datos y es a lo que en un almacén de datos se lo conoce como dimensiones.

Las dimensiones se diseñan y construyen de acuerdo a los procesos de negocio definidos por el cliente, organizan los datos en función de un área de interés para los usuarios.

Una dimensión provee al usuario de un gran número de combinaciones e intersecciones para analizar datos. Cada dimensión se define por su clave primaria que sirve para mantener la integridad referencial en la tabla de hechos a la que se relaciona.

Puede existir que alguna dimensión aparece en dos mercados de datos, deberá ser exactamente la misma dirección, o una de ellas tendrá que ser un subconjunto matemáticos de la otra, si esto sucede entonces es una dimensión conformada.

Identifique las dimensiones que deben ser consideradas en el ejercicio que estamos desarrollando.

Paso 4: selección de los hechos

Un hecho corresponde a eventos que ocurren dinámicamente en el negocio de la empresa.

Todos los hechos deben expresarse según el nivel de granularidad elegido. Pueden añadirse hechos adicionales a cualquier tabla de hechos en un instante posterior, siempre y cuando los nuevos hechos sean coherentes con la granularidad de la tabla.

Seleccione el hecho del cual obtendremos diferentes resultados de acuerdo a las dimensiones que identificamos en el paso anterior.

Paso 5: almacenamiento de los valores precalculados en la tabla de hechos

Los valores precalculados son las medidas que se calculan en el cubo en base a los valores de las medidas naturales.

Page 58: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

58

SEGUNDO BIMESTRE

El sentido de la expresión medidas calculadas es muy amplio y engloba a cualquier manipulación de las medidas naturales que nos faciliten el análisis de los hechos.

En una medida calculada puede haber:

• Cálculos matemáticos.

• Expresiones condicionales.

• Alertas.

A partir del hecho mencionado en el paso anterior obtenga las medidas que van a ser presentadas en el ejercicio que estamos desarrollando.

Paso 6: terminación de las tablas de dimensiones

En este paso se debe añadir las descripciones textuales a las dimensiones como sea posible. La utilidad de un mercado de datos está determinada por el ámbito y la naturaleza de los atributos de las tablas de dimensión.

Identifique en el ejercicio que estamos desarrollando las descripciones textuales a las dimensiones antes identificadas.

Paso 7: selección de la duración de la base de datos

En este paso es importante precisar hasta qué momento del pasado se debe retroceder la tabla de hechos. Cuánto más antiguos son los datos, más probable es que existan problemas a la hora de leer e interpretar los archivos o cintas antiguos.

Paso 8: control de las dimensiones lentamente cambiantes

Existen tres tipos de dimensiones lentamente cambiantes: tipo 1, en el que se sobrescribe un atributo de dimensión modificado, tipo2, el que en un atributo de dimensión modificado hace que se cree un nuevo registro de dimensión, y el tipo 3, en el que un atributo de dimensión modificado hace que se cree un atributo alternativo.

Paso 9: selección de las prioridades de consulta y de los modos de consulta

A la hora de seleccionar las prioridades y modos de consulta es importante que usted tome en cuenta los problemas más críticos que afecta a la percepción que el usuario final tiene del mercado de datos, estos son, la ordenación física de la tabla de hechos en el disco y la presencia de resúmenes o agregaciones precalculados.

Ahora bien, para completar este tema revise el capítulo 32 “Diseño de almacenes de datos”, específicamente cada uno de los pasos de la metodología, luego seleccione una organización y simule la creación de una solución OLAP utilizando la metodología planteada.

Page 59: Base de Datos Avanzadas Guia

59

Guía didáctica: Base de Datos AvanzadaSEGUNDO BIMESTRE

Hemos terminado el estudio de la presente unidad. Recuerde que, además, cuenta con las actividades adicionales que le ayudarán a enriquecer sus conocimientos.

ACTIVIDADES RECOMENDADAS:

Es importante para completar el estudio de esta unidad que realice las siguientes actividades adicionales:

Desarrolle el ejercicio 31.11 del texto básico. En el capítulo 32 “Diseño de almacenes de datos”.

Elabore el caso de estudio propuesto en el anexo A

Interactividad a través de los foros de campus virtual

Una vez que hemos terminado de revisar los temas de esta unidad, ingrese al campus virtual (http://www.utpl.edu.ec) y participe con sus compañeros.

Revise cada uno de los anuncios de su profesor y los foros planteados e interactúe con su opinión y planteando sus inquietudes si las tuviere, esto le ayudará a reforzar sus conocimientos.

Page 60: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

60

SEGUNDO BIMESTRE

Autoevaluación 8

Culminando con el estudio y análisis de la presente unidad, debemos retroalimentar lo aprendido respondiendo a las siguientes inquietudes:

Conteste verdadero (V) o falso (F) a las siguientes proposiciones, según corresponda:

1. ( ) Existen dos tipos de diagramas más conocidos para un almacén de datos, el diagrama en estrella y copo de nieve.

2. ( ) En la mayoría de modelos de un almacén de datos, sus datos se encuentran normalizados.

3. ( ) La granularidad consiste en identificar el número de tablas que contendrá una solución OLAP.

4. ( ) Un diagrama multidimensional es aquel que tiene una tabla de hechos y varias dimensiones que giran alrededor de un hecho.

5. ( ) Las dimensiones son grupos homogéneos de elementos, en muchas ocasiones, jerarquizados.

6. ( ) En los hechos se encuentran las medidas que son los valores que van a ser analizados para la toma de decisiones.

7. ( ) Mientras mayor granularidad exista mayor será el nivel de detalle.

8. ( ) Una dimensión puede o no tener correspondencia con la tabla de hechos.

9. ( ) El diagrama copo de nieve es una variación del modelo en estrella en el que las dimensiones contienen datos desnormalizados.

10. ( ) Un sistema OLAP se representa con un diagrama multidimensional.

Verifique sus aciertos consultando el solucionario respectivo.

FELICITACIONES

Hemos llegado al final de nuestra asignatura, el camino ha sido duro pero con esfuerzo y dedicación ha ido cosechando muchas satisfacciones. ¡¡Muchos éxitos !!

Ir a solucionario

Page 61: Base de Datos Avanzadas Guia

61

Guía didáctica: Base de Datos AvanzadaSOLUCIONARIO

8. Solucionario

UNIDAD 1

Pregunta Respuesta

1. F

2. V

3. F

4. F

5. F

6. F

7. V

8. V

9. F

10. F

Page 62: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

62

SOLUCIONARIO

UNIDAD 2

Pregunta Respuesta

1. F

2. V

3. F

4. F

5. V

6. V

7. V

8. V

9. V

10. V

Page 63: Base de Datos Avanzadas Guia

63

Guía didáctica: Base de Datos AvanzadaSOLUCIONARIO

UNIDAD 3

Pregunta Respuesta

1. V

2. F

3. F

4. V

5. V

6. V

7. V

8. F

9. V

10. V

11. V

12. F

Page 64: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

64

SOLUCIONARIO

UNIDAD 4

Pregunta Respuesta

1. V

2. V

3. F

4. V

5. F

6. V

7. F

8. V

9. F

10. V

Page 65: Base de Datos Avanzadas Guia

65

Guía didáctica: Base de Datos AvanzadaSOLUCIONARIO

UNIDAD 5

Pregunta Respuesta

1. F

2. V

3. F

4. F

5. F

6. V

7. F

8. V

9. F

10. V

Page 66: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

66

SOLUCIONARIO

UNIDAD 6

Pregunta Respuesta

1. F

2. V

3. F

4. F

5. V

6. V

7. F

8. F

9. V

10. V

Page 67: Base de Datos Avanzadas Guia

67

Guía didáctica: Base de Datos AvanzadaSOLUCIONARIO

UNIDAD 7

Pregunta Respuesta

1. F

2. V

3. F

4. V

5. F

6. V

7. F

8. V

9. V

10. V

Page 68: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

68

SOLUCIONARIO

UNIDAD 8

Pregunta Respuesta

1. V

2. F

3. F

4. V

5. V

6. V

7. V

8. F

9. F

10. V

Page 69: Base de Datos Avanzadas Guia

69

Guía didáctica: Base de Datos AvanzadaSOLUCIONARIO

8.1. Solución a las preguntas de ensayo

Unidad 1

Page 70: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

70

SOLUCIONARIO

Unidad 2

Asumiendo que los identificadores de cada tabla son clave primaria y tienen asociado un índice, definiremos índices para los atributos restantes.

Relación USUARIO

Se recomienda indexar los atributos apelUsuario, nomUsuario y crear un índice compuesto entre ambos campos, separado por un espacio en blanco.

CREATE INDEX idx_apelUsuario ON USUARIO(apelUsuario);

CREATE INDEX idx_nomUsuario ON USUARIO(nomUsuario);

CREATE INDEX idx_apelUsuario ON USUARIO(apelUsuario+’ ‘ +nomUsuario);

Relación PRÉSTAMO

Se recomienda indexar los atributos fechaP y fechaD.

CREATE INDEX idx_fechaP ON PRESTAMO(fechaP);

CREATE INDEX idx_fechaD ON PRESTAMO(fechaD);

Relación AUTOR

Se recomienda indexar el atributo nomAutor.

CREATE INDEX idx_nomAutor ON AUTOR(nomAutor);

Relación MAT_BIBLIO

Se recomienda indexar los atributos títuloMatBiblio, editorial, país, año.

CREATE INDEX idx_títuloMatBiblio ON MAT_BIBLIO(título Matbiblio);

CREATE INDEX idx_editorial ON MAT_BIBLIO(editorial);

CREATE INDEX idx_país ON MAT_BIBLIO(país);

CREATE INDEX idx_año ON MAT_BIBLIO(año);

Page 71: Base de Datos Avanzadas Guia

71

Guía didáctica: Base de Datos AvanzadaSOLUCIONARIO

Unidad 3

Una forma de distribución de los datos sería la siguiente:

Page 72: Base de Datos Avanzadas Guia
Page 73: Base de Datos Avanzadas Guia

73

Guía didáctica: Base de Datos AvanzadaANEXOS

9. Anexos

Resolver el siguiente ejercicio:

Caso de estudio1

Escenario

La Distribuidora Latinoamericana de Alimentos (DLA) se dedica a la comercialización de productos comestibles y bebidas a través de sus hipermercados y supermercados.

Si bien cuenta con una amplia e importante cantidad de locales en la República Argentina, Brasil y Uruguay, un claro objetivo a mediano plazo es inaugurar locales en el resto de los países que conforman el MERCOSUR.

Necesidad: los analistas de DLA, por pedido de sus directivos, necesitan realizar informes en donde se pueda analizar:

La cantidad de unidades vendidas en los países que alcanza el mercado actual.

El coste inducido en cada unidad vendida.

El valor de venta de cada producto.

La ganancia obtenida en la venta de cada producto.

DICT

IONA

RY

THES

A UR U

S

El presente material ha sido reproducido con fines netamente didácticos, cuyo objetivo es brindar al estudiante mayores elementos de juicio para la comprensión de la materia, por lo tanto no tiene fin comercial.

1 Academia Latinoamericana de Business Intelligence. [En línea] [Consultada 2008] Actualmente no está disponible.

Page 74: Base de Datos Avanzadas Guia

Guía didáctica: Base de Datos Avanzada

74

ANEXOS

Esta información, requiere que sea presentada por zona geográfica y sucursal.

A su vez, la empresa quiere:

Armar canastas de productos de acuerdo al perfil de compra de los clientes de cada ciudad enla que tienen una boca de expendio. Para esto requieren un estudio de las ventas realizadas abiertas por categoría de producto (con la posibilidad de obtener el detalle por producto), por ciudad, por mes, para los últimos 13 meses (para detectar estacionalidades).

Premiar anualmente a aquellos vendedores que superen los objetivos de venta que les fueranasignados. El análisis, en este caso deberá incluir a los vendedores, las ventas realizadas, los objetivos de venta y el indicador de cumplimiento detallados por mes, para el año fiscal (el premio será distinto si se cumple con los objetivos globalmente para el año o si, además, se cumplen los objetivos en todos los meses en particular).

M-MEE/ymtm/14-07-2011/60 yc/2015/02/06