Académique Documents
Professionnel Documents
Culture Documents
BASE DE DATOS
Estructura de contenidos
INTRODUCCIN........................................................................3
2. LA OPTIMIZACIN DE CONSULTAS...........................................9
2
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
INTRODUCCIN
Las tcnicas que permiten optimizar el diseo de una base de datos han
evolucionado a medida que se desarrollan ms aplicaciones. Las tcnicas
se basan en la aplicacin de la normalizacin para el desarrollo de bases
de datos, junto con una estrecha colaboracin entre los administradores
de bases y desarrolladores de aplicaciones, as como tcnicas de trabajo,
tanto en pre-produccin como en los sistemas terminados.
1.1.1 Introduccin
3
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Alumnos
Nombres
NoMatricula
FechaNacimiento
NombrePapa
NombreMama
Una tabla con esta estructura presentan varios problemas. Por ejemplo,
si una pareja tiene ms de un nio en la misma institucin, debemos
4
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
introducir el nombre del Padre y la Madre varias veces por cada nio.
Esto forma un grupo de repeticin. Por otra parte se puede presentar un
error tipogrfico en el nombre del Padre, si no se introduce exactamente
el mismo nombre todo el tiempo, se pueden causar problemas cuando
ejecuten bsquedas as como en la presentacin de informes.
Alumnos Padres
1
Documento Codigo
Nombre Nombrepadre
NoMatricula Nombremadre
FechaNacimiento Direccion
Padres Telefono
5
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Cursos
NoMatricula
CodCurso
Nombre
Descripcion
Esta tabla tiene una clave primaria compuesta y no est en segunda forma
normal.
Matriculas Cursos
NoMatricula CodCurso
CodCurso Descripcion
Nombre
6
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Funcionarios
NoMatricula
NomFuncionario
CodCargo
DescripCargo
Para solucionar este problema se debe dividir la tabla en otras dos, como
se indica en la siguiente figura. Las dos tablas resultantes se encuentran
en tercera forma normal.
7
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Funcionarios Cursos
NoMatricula CodCurso
NomFuncionario DescripCargo
CodCurso
8
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
2. LA OPTIMIZACIN DE CONSULTAS
9
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Es una tcnica para ahorro de tiempo en las consulta a travs del algebra
relacional
2.1.1.1 Proyeccin
Ejemplo
10
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
PRODUCTOS
Nombre Marca Precio
procesador AMD $500.000
procesador INTEL $600.000
procesador INTEL $50.000
Memoria USB OCZ $50.000
R1 R2
PRODUCTOS
Nombre
procesador
Memoria USB
PRODUCTOS
Nombre Marca
procesador AMD
procesador INTEL
Memoria USB OCZ
11
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
2.1.1.2 Seleccin
Ejemplo:
PRODUCTOS
Especies Categora Embalaje
Rosa Preservar Frasco
Rosa Seco Frasco
Sombrilla Costos Caja
Rosa Seco La bolsa de plstico
R3
PRODUCTOS
Especies Categora Embalaje
Rosa Seco Frasco
Rosa Seco La bolsa de plstico
12
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Permite seleccionar slo las tuplas que cumplen una condicin que se
expresa utilizando los operadores aritmticos (=,>, <,> =, <=, <>) o la
lgica bsica (AND, OR y NOT).
Notacin:
Ejemplo:
PRODUCTOS DETALLE
CodPrd Descripcin Precio por unidad No. CodPrd Cantidad
590A HD 1.6 GB $ 161.500 97001 590A 2
588J Escner HP $ 170.000 97002 515J 4
515J LBP 660 $ 182.000 97003 515J 3
R = JOIN (PRODUCTO,DETALLE,producto.codprd=detalle.codprd)
13
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
R JOIN (PRODUCTO,DETALLE,producto.codprd=detalle.codprd)
2.1.1.3 Interseccin
Ejemplo:
14
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Profesores Profesores
Cdigo Nombre Sindicales
1 DIEGO
Cdigo Nombre
3 DURAND 1 DIEGO
4 MARTIN 4 MARTIN
5 BERTRAND 6 MICHEL
R2
Profesores
Cdigo Nombre
1 DIEGO
4 MARTIN
2.1.1.4 Diferencia
15
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
R = DIFERENCIA (R, S)
Ejemplo:
Profesores Profesores
Cdigo Nombre Sindicales
Cdigo Nombre
1 DIEGO
3 DURAND 1 DIEGO
4 MARTIN 4 MARTIN
5 BERTRAND 6 MICHEL
R3
Profesores
Cdigo Nombre
3 DURAND
5 BERTRAND
R3 (E1, E2)
16
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
2.1.1.6 Producto
Ejemplo:
Estudiantes Pruebas
Cdigo Nombre Curso Crdi
101 DURAND Informtica 2
102 MARTIN Matemticas 3
Financiera 5
Producto
Cdigo Nombre Curso Crditos
101 DURAN Informtica 2
101 DURAN Matemticas 3
101 DURAN Financiera 5
102 MARTIN Informtica 2
102 MARTIN Matemticas 3
102 MARTIN Financiera 5
17
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
El resultado tiene relacin con los atributos de cada una de las relaciones
de origen y sus tuplas se forman mediante la concatenacin de cada tupla
de la primera relacin con todas las tuplas de la segunda.
Si bien un ndice ahorra tiempo en las consultas sobre los datos, aumenta
el costo de insercin y actualizacin.
18
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Ejemplo:
SELECT *
FROM Empleado
WHERE FUNCION (fecha) > 100
En el ejemplo siguiente, el ndice no se utilizara porque la
columna es parte de una expresin:
SELECT *
FROM Empleado
WHERE fecha+7=30-jun-2012
Si no hay ndices en las columnas que sirven para llevar a cabo la unin
equivalente, se realiza una operacin de SORT / MERGE para responder a
la consulta. Esto significa que cada tabla se ordena por separado, y luego
las dos se unen.
19
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Diseo e Implementacin de Cubos de Datos
20
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
GLOSARIO
21
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
BIBLIOGRAFA
22
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Control de documento
Construccin Objeto de Aprendizaje
Diseo e Implementacin de Cubos de Datos
Desarrollador de contenido Alejandro Pinzn Roberto
Experto temtico
Asesor pedaggico Rafael Neftal Lizcano Reyes
Produccin Multimedia Luis Fernando Botero Mendoza
Victor Hugo Tabares
Programadores Daniel Eduardo Martnez
Grateful Dead Montao Sierra
Lder expertos temticos Ana Yaqueline Chavarro Parra
Lder lnea de produccin Santiago Lozada Garcs
23
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje