Está en la página 1de 156

DEPARTAMENTO

1 CODIGOP NOMBREP SITUACION

PROVEEDOR
DEPTO- EMP

M
PROY-TRABAJO
M
SALARIO
M M
CODIGO M

M
PROV-
EMPLEADO PROYECTO
PARTE- PROV-PARTE
ENOMBRE PROY

1
1 M

PATERNO MATERNO
PROY-GERENTE M
M

PARTE
NPILA EMP-DEPEN

M
M

ESTRUCTU
RA-DE PARTE
DEPENDIENTE
Sistema de Gestión de Bases de Datos
Data Base Management System

Colección de Conjunto de
datos Programas para
interrelacionados acceder a los
datos
Propósito de las Bases de Datos

•Disminuir la redundancia e inconsistencia de los


datos.
•Facilitar el acceso a los datos
•Aislar los datos.
•Garantizar la integridad de los datos.
•Facilitar el acceso a los datos

•Evitar la atomicidad en los datos. •Aislar los datos.


•Garantizar la integridad de los datos.
•Evitar la atomicidad en los datos.

•Facilitar el control en accesos concurrentes. •Facilitar el control en accesos concurrentes.


•Mejorar la seguridad de los datos.

•Mejorar la seguridad de los datos.


•Mejor servicio a los usuarios.
¿Por qué utilizar una Base de
Datos?
• Compactación. Sustituye voluminosos archivos
documentales.
• Rapidez. Permite modificar, almacenar, consultar
los datos a gran velocidad.
• Precisión. Se dispone de información precisa en
todo momento.
• Fácil manipulación. Elimina tareas
mecánicas y manuales dispendiosas.
VISIÓN DE LOS DATOS
Arquitectura de Tres esquemas

Nivel Físico
(Interno) BD BD

Nivel Lógico
(Conceptual)

•Facilitar el acceso a los datos


•Aislar los datos.
•Garantizar la integridad de los
datos.

Nivel de Vista •Evitar la atomicidad en los datos.


•Facilitar el control en accesos co.

(Externo)
Esquema Simplificado de un
Sistema de Bases de Datos
Nivel Físico: Se describe la e
structura de datos complejas como
se almacenan los datos.
Nivel Lógico: Describe que y
sus relaciones, se describen
mediante estructuras simples
. Con base en ellas el administrado
r decide que información se conse
SGBD
rva y cual no.Nivel de Vista:
Es el nivel mas altode abstracción.
Describe sólo parte de la base
de datos. La que es de interés
para el usuario, por tal mo
tivo puedn existir muchas
vistas, una por cada tipo de usuario.
BD
Nivel Físico: Se describe la e
structura de datos complejas como
se almacenan los datos.
Nivel Lógico: Describe que y
sus relaciones, se describen
mediante estructuras simples
. Con base en ellas el administrado
r decide que información se conse
rva y cual no.Nivel de Vista:
Es el nivel mas altode abstracción.
Describe sólo parte de la base
Nivel
de datos.
Físico:
La que
Se describe
es de interés
la e
para el usuario, por tal mo
tivo puedn existir muchas
vistas, una por cada tipo usuario.

structura de datoomplejas como


se almacenan los datos.
Nivel Lógico: Describe que y
sus relaciones, se describen
mediante estructuras simples
. Con base en ellas el administrado
r decide que información se conse
rva y cual no.Nivel de Vista:
Es el nivel mas altode abstracción.
Describe sólo parte de la base
de datos. La que es de interés
para el usuario, por tal mo
tivo puedn existir muchas
vistas, una por cada tipo de usuario.

Programas de Aplicación Usuarios Finales


OPERACIONES ELEMENTALES SOBRE LOS
ARCHIVOS DE LA BASE DE DATOS

Borrar datos
BD Eliminar Un
en un archivo archivo

Agregar Un
archivo Nuevo Insertar datos nuevos
en un archivo ya
existente
Actualizar datos en
Un archivo ya
existente
Obtener datos de Un
archivo ya existente
USUARIOS DE UNA BD

BD

Programador de
Aplicaciones
Administrador de
la base de datos

Usuario Final
SEGUIR
PROGRAMADOR DE
APLICACIONES

• Encargado de escribir
programas que accesan la BD.
• Usan lenguajes como: C,
Cobol, Visual basic, etc.
• Recuperan información,
modifican, agregan, eliminan.

<
USUARIO FINAL

• Usuarios finales
esporádicos
• Usuarios finales simples
o paramétricos
• Usuarios finales
avanzados
• Usuarios autónomos

<
ADMINISTRADOR DE LA
BASE DE DATOS (DBA)
• Coordinar el diseño de la base de datos.
• Guiar los procesos de seguridad de los
datos.
• Garantizar la integridad de los datos.
• Clave en la definición de estándares.
• Garantizar la eficiencia del sistema.
• Capacitación de usuarios.
• Control sobre el diccionario de datos. <
RIESGOS

Conflictos. Fracasos
Sobrecostos. Requerimientos
Funcionamiento defectuoso.
MODELO DE DATOS

BASADO EN OBJETOS:

•Modelo de datos Semántico.


•Modelo entidad - Relación
•Modelo Orientado a objetos
•Modelo de Datos Funcional
BASADO EN REGISTROS:

•Modelo Relacional
•Modelo de Red
•Modelo Jerárquico
•Modelo de Datos Funcional
MODELO DE DATOS SEMÁNTICO

• Problema de Significado.
• Sistema mas inteligente.
• Punto de partida para los modelos
actuales.
• Describe las demás modelos. Genérico.
• Permitió definir un conjunto de objetos
semántico.
Modelo Entidad – Relación
(E/R)

Supervisor Supervisa a Trabajador

Nombre-
Nombre Especialidad Trabajador
Cédula

Cargo
Nivel
Modelo Orientado a Objetos

Trabajador
Supervisor
Atributos:
Atributos:
Mensaje •Código
•Nombre
•Nombre
•Especialidad
•Cédula
•Nivel
•Cargo
Métodos:
Métodos:
•Crear
•Crear
•Eliminar
Mensaje •Eliminar
•Mostrar
•Mostrar
•Supervisar
•Asignar _Supervisor
MODELO DE DATOS FUNCIONAL
• Utiliza funciones matemáticas
como herramienta de modelado
• Todo requerimiento se considera
una función.
• Modelo Entidad-Vínculo Funcional
• Incluye composición de funciones.
• Aparece el concepto de función
derivada. Y se extiende a atributos.
• Ha sido la base del modelo
Orientado a Objetos.
Modelo Relacional
Nombre – Especialidad Nivel Supervisa a
Supervisor
Archivo de Pérez Químico 4 MC304
Supervisores Ramírez Sistemas 6 PG289
Pérez Químico 4 PF157
Moreno Planta Física 7 MC120
Moreno Planta Física 7 PG289
. . . .
. . . .
. . . .

Código Nombre Cédula Cargo


MC304 Juan 24567890 Técnico Industrial
PG289 Luis 23176234 Analista
MC120 Rodrigo 19563421 Dibujante
Archivo de
PF157 Francisco 18234654 Técnico Químico Trabajadores
. . . .
. . . .
. . . .
Modelo de Red
•MC304
•Pérez
•Juan
•Químico
•24567890
•Nivel 4
•Técnico Industrial
•PG289
•Luis
•Ramírez •23176234
•Sistemas •Analista
•Nivel 8
•MC120
•Rodrigo
•19563421
•Dibujante
•Moreno
•Planta Física •PF157
•Nivel 7 •Francisco
•18234654
•Técnico Químico
Modelo Jerárquico

Jefe de
Supervisores

•Pérez •Ramírez •Moreno


•Químico •Sistemas •Planta Física
•Nivel 4 •Nivel 8 •Nivel 7

•MC304 •PF157 •PG289 •PG289 •MC120


•Juan •Francisco •Luis •Luis •Rodrigo
•24567890 •18234654 •23176234 •23176234 •19563421
•Técnico Industrial •Técnico Químico •Analista •Analista •Dibujante
LENGUAJES DE
BASES DE DATOS

DE DEFINICIÓN DE DATOS (LDD)


Creación del diccionario o Directorio de datos.

DE MANIPULACION DE DATOS(LMD)
• Recuperación de la información en la base de datos
• La inserción de información en la base de datos.
• El borrado de la información en la base de datos.
• La modificación de la información almacenada en la
BD
EL MODELO
ENTIDAD - RELACION

E R
Conjuntos de Conjunto de
Entidades Relaciones

E= { E1,E2,E3,…EN } R= {(e1,e2,e3,…en ) : e1 E’1, e2 E’2, e3 E’3,…, en E’n }
EL MODELO
ENTIDAD - RELACION

Relación 3-aria.
( Antonio, Cálculo , Ingeniería )
E2
E1 Asignatura
Estudiante

E ( Antonio, Sistemas )

( Ingeniería, Sistemas )
E4
E3 Especialidad
Carrera (Cálculo, Sistemas )
Relación 2-aria.
El Modelo Entidad - Relación
CARDINALIDAD
Uno a Uno (1 - 1) Uno a Varios (1 - N )

a1
a1 b1 b1
a2 b2 b2
a2
a3 b3 b3
a4 b4 b4
a3
a5 b5 b5

Varios a Uno ( N - 1) Vario a Varios ( N - N )

a1 b1 a1 b1
a2 a2 b2
a3 b2 a3 b3
a4 a4 b4
a5 b3 a5 b5
NOTACION E/R

Tipo de entidad Atributo Clave

Tipo de entidad débil Atributo


multivalorado

Relación o Vínculo Atributo


compuesto

Tipo de vínculo
Identificador

Atributo
derivado
Atributo
NOTACION E/R
Atributo Asociado a una
relación

Participación total

1 N
Cardinalidad 1-N

< Cardinalidad 1-N


TALLER 1
Mediante un diagrama E/R, elaborar un diseño conceptual de una base de datos para la
Universidad “ ???????” que permita, entre otros, atender requerimientos de información como los
siguientes:

1. ¿cuáles son las carreras ofrecidas por esa universidad?

2. ¿Para un estudiante de nombre XXXX, cuál es la lista de asignaturas cursadas y aprobadas?

3. ¿Cuál es la lista de profesores que pueden dirigir asignaturas en la carrera XXXX?

4. ¿Para un estudiante de nombre XXXX, cuál es la lista de asignaturas que actualmente está
cursando?

5. ¿cuál es la lista de asignaturas que conforman el plan de estudios de la carrera YYYY?

6. ¿cuál es la lista de asignaturas que tienen la mayor intensidad horaria?

7. Dado el nombre de una asignatura y el grupo, mostrar la lista de estudiantes inscritos y el


nombre del profesor que la dirige.

8. ¿cuál es el coordinador de la carrera ZZZZ?

9. Dado el nombre de una carrera mostrar la lista de docentes (cédula, nombre, teléfono y
dirección) que actualmente dirigen asignaturas en esa carrera.

10.Dado el nombre de una carrera y un semestre entregar la lista de asignaturas de ese


semestre y y los estudiantes (Código, nombre, teléfono) inscritos en cada una de ellas.
EL MODELO
ENTIDAD - RELACION
Atributos Simples: Atributos Univalorados:
•Cédula •Cédula
•Nombre •Nombre
•Sexo •Sexo

Atributos Compuestos: Atributos Multivalorados:

•Nombre (Apellido, Nombres) Entidad : Profesor

•Dirección (Barrio, Calle, Carrera, •Nombre - Asignatura


Número) •Especialidad
Atributos Nulos: Atributos Derivado:
Entidad : Profesor Entidad : Trabajador
•Título de Posgrado •Fecha de Ingreso
•Antigüedad
MODELO ENTIDA - RELACION

DEPARTAMENTO

1 CODIGOP NOMBREP SITUACION

DEPTO- EMP PROVEEDOR

PROY-TRABAJO M

SALARIO M
CODIGO M M
M
M PROV-
EMPLEADO PROYECTO PARTE- PROV-PARTE
ENOMBRE PROY
1 1 M
PATERNO MATERNO
PROY-GERENTE M M

NPILA EMP-DEPEN PARTE

M M
M
ESTRUCTU
DEPENDIENTE RA-DE PARTE

CHEN
1976
MODELO ENTIDA - RELACION

CLAVES

SUPERCLAVES : Conjunto NombreProf, Especialidad,Edad


de atributos de una entidad,
que tomados colectivamente NombreProf, Especialidad
permiten identificar de
manera única una entidad en Apellido, Especialidad,Edad, Facultad
un conjunto de entidades.

CLAVES CANDIDATAS : Son


super claves mínimas. Super
claves tales que ningún
subconjunto propio de ellas es
super clave

CLAVES PRIMARIA : Es la
clave candidata seleccionada
por el diseñador CódigoProfesor
MODELO ENTIDA - RELACION

CLAVES EN RELACIONES

Si R Es una relación sobre E1,E2,E3,…EN , Entonces se define

ClavePE1  ClavePE2 CalvePE3 …  ClavePEN Como Una super


clave Para el conjunto R

CodigoEstudiante, CodigoProfesor

CodigoEstudiante, CodigoProfesor, CodigoAsignatura


MODELO ENTIDA - RELACION

REPRESENTACION DE RELACIONES
MEDIANTE TABLAS

R T
E1 C1 C2 … Cn b1 b2 … bn

C1

En

E2 Cn

C2
R

E3
C3 b1,b2,b3, ….bn son atributos de la relación
MODELO ENTIDA - RELACION

R T
ESTUDIANTE
•CódigoEstu
•NombrEstud
•Carrera
ES_ALUMNO

CédulaProf CódigoEstu

ES_ALUMNO

PROFESOR
•CédulaProfesor
•NombreProfesor
•Especialida
MODELO ENTIDA - RELACION
COMBINACION DE
TABLAS DEPARTAMENTO

NombreDepto Facultad
PROFESOR
•CédulaProfesor PROFESOR
•NombreProfesor
•Edad CédulaProf NombreProf Edad

PERTENACE_A

PERTENECE_A CédulaProf NombreDepto

DEPARTAMENTO
CédulaProf NombreProf Edad NombreDepto
•NombreDepto
•Facultad
MODELO ENTIDA - RELACION

ENTIDADES CON
ATRIBUTOS
MULTIVALORADOS

PROFESOR

CédulaProf NombreProf Especialidad

PROFESOR ESPECIALIDA

CédulaProf NombreProf CédulaProf NombreEspec


MODELO ENTIDA - RELACION
PROFESOR
ENTIDADES CON ATRIBUTOS
MULTIVALORADOS
CédulaProf NombreProf Especialidad

PROFESOR
•CédulaProfesor
•NombreProfesor
PROFESOR

CédulaProf NombreProf

ACREDITA
ACREDITA

CédulaProf NombreEspec

ESPECIALIDAD ESPECIALIDAD
•Nombreespecialidad
NombreEspec Descripción
•Descripción
MODELO ENTIDA - RELACION

MANEJO DE CLAVES EN
TABLAS DE RELACIONES

• En Entidades Fuertes y Débiles (Dependientes):Las tablas de


entidades débiles deben incluir la clave primaria de la entidad
fuerte
• Super claves de relaciones: Constituida por las claves
primarias de las entidades que intervienen en la relación
• Clave primaria en una relación uno a uno: Es la clave
primaria de una de las Entidades.
• Clave de una Entidad obtenida de atributo Multivalorado:
Es la clave primaria de la entidad y el valor del atributo.
MODELO ENTIDA - RELACION

LENGUAJES DE CONSULTA

PROCEDIMENTALES NO PROCEDIMENTALES

ALGEBRA RELACIONAL CALCULO RELACIONAL

N-UPLAS
RELACIONES
DOMINIOS
A L G E B R A R E L A C I
O N A L
OPERACIONES FUNDAMENTALES

R1 OPERACIÓN UNARIA
R2
Selección Proyección Renombramiento

R1
OPERACIÓN BINARIA
R3
R2
Unión Diferencia Producto Cartesiano
ALGEBRA RELACIONAL

SELECCIÓN
Restricción

Sintaxis: Spredicado (RELACION)

predicado (RELACION)
PROFESOR
CedProf NombProf Especialidad
Sespecialidad= “Matemáticas” (PROFESOR)
1920 Pedro Matemáticas
CedProf NombProf Especialidad
3018 José Historia
1920 Pedro Matemáticas
1923 Dora Matemáticas
1923 Dora Matemáticas
2021 Antonio Computación
1924 Rosa Matemáticas
1924 Rosa Matemáticas
2024 Gustavo Computación
Operadores de Relación: < > >= <= = 
3018 José Filosofía
Enlaces:  ( and )  ( or )
1053 Luis Física
ALGEBRA RELACIONAL
PROYECCION
Producto

Sintaxis: Plista de atributos (RELACION)

lista de atributos (RELACION)


PROFESOR
PCédProf , NombProf (PROFESOR)
CedProf NombProf Especialidad
1920 Pedro Matemáticas CedProf NombProf
3018 José Historia 1920 Pedro
1923 Dora Matemáticas 3018 José
2021 Antonio Computación 1923 Dora
1924 Rosa Matemáticas 2021 Antonio
2024 Gustavo Computación 1924 Rosa
3018 José Filosofía 2024 Gustavo
1053 Luis Física 1053 Luis
ALGEBRA RELACIONAL
COMPOSICION DE OPERACIONES
PROFESOR
CedProf NombProf Especialidad
1920 Pedro Matemáticas
CedProf NombProf Especialidad
3018 José Historia
1920 Pedro Matemáticas
1923 Dora Matemáticas
1923 Dora Matemáticas
2021 Antonio Computación
1924 Rosa Matemáticas
1924 Rosa Matemáticas
2024 Gustavo Computación
3018 José Filosofía
1053 Luis Física

PCédProf , NombProf (Sespecialidad= “Matemáticas” (PROFESOR))

CedProf NombProf
1920 Pedro
1923 Dora
1924 Rosa
ALGEBRA RELACIONAL
UNION
PROFESOR
CedProf NombProf Especialidad
ESTUDIANTE
1920 Pedro Matemáticas
CodEest NombEst Carrera
3018 José Historia
4127 Manuel Sistemas
1923 Dora Matemáticas
2010 Martha Economía
2021 Antonio Computación
3113 José Industrial
1924 Rosa Matemáticas
1054 Samuel Derecho ?
2024 Gustavo Computación
2023 Rosa Economía Pedro
3018 José Filosofía
José
1053 Luis Física
Dora
Antonio
Rosa
P NombProf (PROFESOR)  P NombEst (ESTUDIANTE) Gustavo
Luis
Manuel
Martha
Samuel
ALGEBRA RELACIONAL
DIFERENCIA
PROFESOR ESTUDIANTE
CedProf NombProf Especialidad CodEst NombEst Carrera
1920 Pedro Matemáticas 4127 Manuel Sistemas
3018 José Historia 2010 Martha Economía
1923 Dora Matemáticas 3113 José Industrial
2021 Antonio Computación 1054 Samuel Derecho
1924 Rosa Matemáticas 2023 Rosa Economía
2024 Gustavo Computación
3018 José Filosofía P NombProf (PROFESOR) P NombEst (ESTUDIANTE)
1053 Luis Física
NombProf
NombEst ???
Pedro
Manuel Pedro
José
Martha Dora
Dora
José Antonio
Antonio
samuel Gustavo
Rosa
Rosa Luis
Gustavo
Luis
ALGEBRA RELACIONAL
PRODUCTO CARTESIANO
CedProf NombProf Especialidad CodEest NombEst Carrera
1920 Pedro Matemáticas 4127 Manuel Sistemas
1920 Pedro Matemáticas 2010 Martha Economía
1920 Pedro Matemáticas 3113 José Industrial
1920 Pedro Matemáticas 1054 Samuel Derecho
1920 Pedro Matemáticas 2023 Rosa Economía
3018 José Historia 4127 Manuel Sistemas
3018 José Historia 2010 Martha Economía
3018 José Historia 3113 José Industrial
3018 José Historia 1054 Samuel Derecho
3018 José Historia 2023 Rosa Economía

PROFESOR X ESTUDIANTE
ALGEBRA RELACIONAL
RENOMBRAMIENTO
Sintaxis: RENNuenoNombre(A1,A2,…An) (RELACION)
NuenoNombre (A1,A2,…An) (RELACION)

RenLISTAMATEMATICOS (PCédProf , NombProf (Sespecialidad= “Matemáticas” (PROFESOR)))

LISTAMATEMATICOS
CedProf NombProf
1920 Pedro
1923 Dora
1924 Rosa

RenLISTAMATEMATICOS(Cédula,Profesor) (PCédProf , NombProf (Sespecialidad= “Matemáticas” (PROFESOR)))


LISTAMATEMATICOS
Cédula Profesor
1920 Pedro
1923 Dora
1924 Rosa
ALGEBRA RELACIONAL
OPERACIONES NO
FUNDAMENTALES
•Intersección:
Sintaxis: Relación1  Relación2
Reunión:
Sintaxis: Relación1  Relación2
Relación1 join Relación2
join (Relación1 , Relación2)
División:
Sintaxis: Relación1  Relación2
Relación1 / Relación2
•Asignación:
Sintaxis: Relación Relación1 operador Relación2
Relación:= Relación1 operador Relación2
ALGEBRA RELACIONAL
OPERACIONES NO
FUNDAMENTALES

R1 R2
Nombre R1- ( R1- R2)
Pedro
Nombre R1- R2
Manuel Nombre
José Nombre
Gustavo Pedro
Dora Dora
José José
Antonio Antonio
Samuel Rosa
Rosa Luis
Rosa Gustavo
Gustavo
R1  R2
Pedro
Luis

•Intersección:
Sintaxis: Relación1  Relación2

R1  R2 = R1- ( R1- R2)


ALGEBRA RELACIONAL
OPERACIONES NO FUNDAMENTALES
PROFESOR ESTUDIANTE

CedProf NombProf COD_ASIG Grupo CodEst NombEst COD_ASIG Grupo


1920 Pedro M120 41 4117 Andrés M100 41
3018 José H100 41 4015 Ramiro M120 43
1923 Dora M120 43 4136 Felipe M100 41
1924 Rosa M110 41 4041 Lucero M120 43
3018 José H110 41 4143 Martha M110 41
1920 Pedro M120 45 4017 Samuel M120 41
4015 Ramiro H110 41
NombProf NombEst 4117 Andrés H100 41
Pedro Samuel 4087 Javier H110 41
José Andrés 4032 Iván M120 45
José Samuel 4017 Samuel H110 41
Dora Ramiro
Dora Lucero
P NombProf , NombEst (PROFESOR  ESTUDIENTE)
Rosa Martha
José Ramiro
José Javier REUNION NATURAL
Pedro Iván
ALGEBRA RELACIONAL
OPERACIONES NO FUNDAMENTALES
ASIGNATURA ESTUDIANTE

COD_ASIG NombAsig Semestre CodEst NombEst COD_ASIG Grupo


M100 Matemáticas 1 1 4117 Andrés M100 41
M110 Matemáticas 2 2 4015 Ramiro M120 43
M120 Matemáticas 3 3 4136 Felipe M100 41
H100 Humanidades 1 2 4041 Lucero M120 43
H110 Humanidades 2 3 4143 Martha M110 41
4017 Samuel M120 41
4015 Ramiro H110 41
4117 Andrés H100 41
4087 Javier H110 41
NombEst
4032 Iván M120 45
Ramiro
4017 Samuel H110 41
Samuel

PNombEst ( ESTUDIENTE  PCOD_ASIG (S Semestre = 3 (ASIGNATURA )))

DIVISION
ALGEBRA RELACIONAL

OPERACIONES NO FUNDAMENTALES

PNombEst ( ESTUDIENTE  PCOD_ASIG (S Semestre = 3 (ASIGNATURA )))

A  S Semestre = 3 (ASIGNATURA )

B  ESTUDIENTE  PCOD_ASIG (A)

C  PNombEst ( B)

ASIGNACION
ALTERNATIVAS:
1. { t :P (t) } { t / P (t) }
t Es una n-upla de una relación
P(t) es un predicado (fórmula)
2. { (t.a1, t.a2,…, t.ak) : P ( t ) }
(t.a1, t.a2,…, t.ak) Es una proyección de atributos
de la relación R, tal que t pertenece a R.
P(t) es un predicado (fórmula)
EL PREDICADO P(t)

Se denomina Sentencia de cualificación y es una condición


que permite determinar que valores de la base de datos
actual van a la relación solución.

Operadores y enlaces a utilizar:


 Pertenece ( IN )
 (NO) (NOT)
 (y) (AND)
 (o) (OR)
     
 Cuantificador Existencial
 Cuantificador Universal
TALLER 2

Tomando como base la posible solución del taller 1 Describa las tablas que resultan de
convertir el modelo E/R a modelo relacional.

A partir de ese modelo relacional resuelva, mediante álgebra y cálculo relacional, las
preguntas siguientes:

1. ¿cuáles son las carreras ofrecidas por esa universidad?

2. ¿Para un estudiante de nombre XXXX, cuál es la lista de asignaturas cursadas y


aprobadas?

3. ¿cuál es la lista de asignaturas que conforman el plan de estudios de la carrera YYYY?

4. ¿cuál es la lista de asignaturas que tienen la mayor intensidad horaria?

5. Dado el nombre de una asignatura y el grupo, mostrar la lista de estudiantes inscritos


y el nombre del profesor que la dirige.
Structurated Query Language

Lenguaje Estructurado de Consulta


CREACIÓN DE UN ESQUEMA
DEPARTAMENT
O
1 CODIGOP NOMBREP SITUACION

DEPTO- EMP PROVEEDO


PROY-TRABAJO R M
SALARIO M
CODIGO M M M
PROV-
M
EMPLEADO PROYECT PARTE- PROV-PARTE
ENOMBRE
O PROY
1 1 M
PATERNO MATERNO
PROY-GERENTE M M
NPILA EMP-DEPEN PARTE

M M
M
ESTRUCTU
DEPENDIENT RA-DE PARTE
E

CREATE SCHEMA ControlProyectos AUTHORIZATION Fajardo


Comandos DDL (Data Definition Lenguage)

Drop, Create, alter, revoke y grant

Comandos DML (Data Manipulation Lenguage)

Select, Insert, Update, Delete y


Describe
Comandos drop

DROP SCHEMA ControlProyectos CASCADE

DROP SCHEMA ControlProyectos RESTRICT

DROP TABLE EMPLEADO CASCADE

DROP TABLE EMPLEADO RESTRICT


Comandos alter
Sintaxis:
ALTER TABLE Objeto a ser Modificados
( Cláusulas que especifican los cambios en el Objeto)

Ejemplo:
ALTER TABLE EMPLEADO ADD
( Direccion varchar(50))

Ejemplo:
ALTER TABLE EMPLEADO MODIFY
( Direccion varchar(20))

Observación: En el caso modify, se requiere que la columna a ser modificada


no tenga valores almacenados.
CREACIÓN DE UNA RELACION
(Tabla )

CREATE TABLE ControlProyectos.EMPLEADO


CREATE TABLE EMPLEADO

SALARIO
CODIGO

EMPLEADO
ENOMBRE

CREATE TABLE EMPLEADO


( ENOMBRE VARCHAR ( 30 ) NOT NULL,
CODIGO CHAR ( 9 ) NOT NULL,
SALARIO DECIMAL ( 10,2 ),
PRIMARY KEY ( CODIGO ));
TIPOS DE DATOS
INTEGER o INT
SMALLINT
FLOAT, REAL, DOUBLE PRECISION
DECIMAL ( m,n ) o DEC ( m,n ) o NUMBER (m,n)
CHARACTER ( n ) o CHAR ( N )
CHAR VARYING ( N ) o VARCHAR ( N )
LONG
BIT ( N )
RAW ( N )
BLOB
BIT VARYING ( N )
DATE (Componentes: YEAR, MONTH, DAY)
TIME (Componentes: HOUR, MINUTE, SECOND)
OPERADORES DE COMPARACION
= Prueba de Igualdad.
!= <> = Prueba de desigualdad
< Menor que
> Mayor que
<= Menor o igual que
>= Mayor o igual que
IN Prueba igualdad con algún elemento en el
paréntesis.
NOT INT Prueba que sea distinto con todos los
elementos en el paréntesis.

OPERADORES ARITMÉTICOS
+ Suma
- Resta
* Multiplicación
/ División
FUNCIONES ARITMETICAS
CEIL(N) Aproxima al entero mayor o igual al número N
FLOOR (N) Aproxima al mayor entero menor o igual al número N
MOD (M,N) Devuelve el residuo de dividir M entre N
POWER (M,N) Retorna el resultado de M a la potencia N.
ROUND(M,N) Redondea el decimal de M a N dígitos.
SQRT(N) Retorna la raíz cuadrada de N
SIGN(N) Retorna 0 (Si N=0), 1 (Si N>0) o -1 (Si N<0)
ABS(N) Retorna el valor absoluto de N

FUNCIONES PARA CADENAS DE CARACTERES


INITCAP(char) Coloca en mayúscula el primer caracter de cada cadena

LOWER(char) Convierte a minúsculas toda la cadena


REPLACE(char, En una cadena reemplaza cada ocurrencia srt1, por
str1,str2) la cadena str2
LENGTH(char) Retorna la longitud de la cadena.
Agregar Dato
Instruccs
i ó n Insert
SINTAXIS:
INSERT INTO < Nombre de la Tabla>
VALUES ( valor1, Valor2,…,ValorN)

SINTAXIS:
INSERT INTO < Nombre de la Tabla> (Campo1, Campo2)
VALUES ( valor1, Valor2)

Observación: Si el valor es nulo, se coloca en valor NULL o ‘’ para el caso de las


cadenas.
Eliminar Da
t o s
Instrucción Delete
SINTAXIS:
DELETE FROM < Nombre de la Tabla>
WHERE < Condición>

SINTAXIS:
DELETE FROM < Nombre de la Tabla>

Borra todo el contenido de la tabla pero no la tabla.


Modificacione
I n s t r u c c i ósn u p d a t e
SINTAXIS:
UPDATE < Tabla >
SET <Campo1 = Valor1,

Campo2 = Valor2,


WHERE <Condición>;

JEMPLO:
UPDATE PROFESOR
SET Especialidad = ‘Programación’
WHERE Especialidad = ‘Computación’
Consultas
Instrucción select
SINTAXIS:
SELECT < Lista de atributos>
FROM <Lista de tablas>
WHERE <Condición>
PROFESOR
CedProf NombProf Especialidad EJEMPLO:
SELECT CedProf , NombProf
1920 Pedro Matemáticas
FROM PROFESOR
3018 José Historia
WHERE Especialidad = “Matemáticas”
1923 Dora Matemáticas
2021 Antonio Computación CedProf NombProf
1924 Rosa Matemáticas 1920 Pedro
2024 Gustavo Computación 1923 Dora
3018 José Filosofía 1924 Rosa
1053 Luis Física
Vistas
Ventajas:

• Proporcionan un nivel mas de seguridad para


los datos.
• Hacen transparente la complejidad de los datos,
para el usuario final.
• Facilitan la claridad en la nomenclatura,
permitiendo mostrar la información usando
nombres significativos.
• Independizan la estructura de las tablas de las
aplicaciones, esta se puede cambiar sin que la
vista tenga que hacerlo.
Creación de una V
ista
Instrucción create
SINTAXIS: view
CREATE VIEW < NombreDeLaVista>
<Instrucción SELECT>

PROFESOR EJEMPLO:
CedProf NombProf Especialidad CREATE VIEW Matemáticos AS
1920 Pedro Matemáticas SELECT CedProf , NombProf
FROM PROFESOR
3018 José Historia
WHERE Especialidad = “Matemáticas”;
1923 Dora Matemáticas
2021 Antonio Computación CedProf NombProf
1924 Rosa Matemáticas 1920 Pedro
2024 Gustavo Computación 1923 Dora
3018 José Filosofía 1924 Rosa
1053 Luis Física
Consultas combinando tablas
PROFESOR ESTUDIANTE
CedProf NombProf COD_ASIG Grupo CodEst NombEst COD_ASIG Grupo
1920 Pedro M120 41 4117 Andrés M100 41
3018 José H100 41 4015 Ramiro M120 43
1923 Dora M120 43 4136 Felipe M100 41
1924 Rosa M110 41 4041 Lucero M120 43
3018 José H110 41 4143 Martha M110 41
1920 Pedro M120 45 4017 Samuel M120 41

NombProf NombEst 4015 Ramiro H110 41

Pedro Samuel 4117 Andrés H100 41

José Andrés 4087 Javier H110 41

José Samuel 4032 Iván M120 45

Dora Ramiro 4017 Samuel H110 41

Dora Lucero
EJEMPLO:
Rosa Martha SELECT NombProf , NombEst
José Ramiro FROM PROFESOR , ESTUDIANTE
José Javier WHERE PROFESOR . COD_ASIG = ESTUDIANTE . COD_ASIG
AND PROFESOR .Grupo = ESTUDIANTE . Grupo
Pedro Iván
Consultas con seudonimos

EMPLEADO

CodEmp NombEmp Sueldo CodJefe Ejemplo de Seudónimo sobre Tablas:


4127 Andrés 1.345 4017
SELECT E . NombEmp
FROM EMPLEADO E , EMPLEADO D
4015 Ramiro 2.500 4017
WHERE E . CodEmp = D . CodJefe
4136 Felipe 879 4087
4041 Lucero 1.345 4015 SELECT E . NombEmp
4143 Martha 1.150 4117 FROM EMPLEADO AS E , EMPLEADO AS D
4017 Samuel 3.700 WHERE E . CodEmp = D . CodJefe
4025 Rodolfo 987 4127
4117 Angel 2.645 4017
Ejemplo de Seudónimo sobre Tablas y Atributos:
4087 Javier 1.150 4017
SELECT E . No
4032 Iván 879 4143 FROM EMPLEADO E (C,No,S,CJ) ,
4037 Margarita 1.345 4117 EMPLEADO D (C,No,S,CJ)
WHERE E . C = D . CJ
Consultas sin where
EMPLEADO

CodEmp NombEmp Sueldo CodJefe CodEmp NombEmp


4127 Andrés 1.345 4017 4127 Andrés
4015 Ramiro 2.500 4017 4015 Ramiro
4136 Felipe 879 4087 4136 Felipe
4041 Lucero 1.345 4015 4041 Lucero
4143 Martha 1.150 4117 4143 Martha
4017 Samuel 3.700 4017 Samuel
4025 Rodolfo 987 4127 4025 Rodolfo
4117 Angel 2.645 4017 4117 Angel
4087 Javier 1.150 4017 4087 Javier
4032 Iván 879 4143 4032 Iván
4037 Margarita 1.345 4117 4037 Margarita

SELECT CodEmp , NombEmp


FROM EMPLEADO
Consultas sin especificar atributos

EMPLEADO

CodEmp NombEmp Sueldo CodJefe


4127 Andrés 1.345 4017
4015 Ramiro 2.500 4017 CodEmp NombEmp Sueldo CodJefe
4136 Felipe 879 4087 4127 Andrés 1.345 4017
4041 Lucero 1.345 4015 4041 Lucero 1.345 4015
4143 Martha 1.150 4117 4037 Margarita 1.345 4117
4017 Samuel 3.700
4025 Rodolfo 987 4127
4117 Angel 2.645 4017
4087 Javier 1.150 4017 SELECT *
4032 Iván 879 4143 FROM EMPLEADO
4037 Margarita 1.345 4117 WHERE Sueldo = 1345
CedProf NombProf Especialidad CodEest NombEst Carrera
1920 Pedro Matemáticas 4127 Manuel Sistemas
1920 Pedro Matemáticas 2010 Martha Economía
1920 Pedro Matemáticas 3113 José Industrial
1920 Pedro Matemáticas 1054 Samuel Derecho Consultas sin
1920 Pedro Matemáticas 2023 Rosa Economía
especificar
3018 José Historia 4127 Manuel Sistemas
atributos ni
3018 José Historia 2010 Martha Economía
clausula
where
3018 José Historia 3113 José Industrial
( EQUIVALE AL PRODUCTO
3018 José Historia 1054 Samuel Derecho CARTESIANO DEL ALGEBRA
RELACIONAL )
3018 José Historia 2023 Rosa Economía
. . . . . .
. . . . . .
. . . . . .

SELECT *
FROM PROFESOR , ESTUDIANTE
Consultas y subconsultas

R1 R2
Nombre
Nombre
R1  R2
Pedro
Manuel Nombre
José
Gustavo Pedro
Dora
José José
Antonio
Samuel Rosa
Rosa
Rosa Gustavo
Gustavo
Pedro
Luis

SELECT Nombre
FROM R1
WHERE Nombre IN
( SELECT Nombre
FROM R2)
MANEJO DE TABLAS
EMPLEADO COMO CONJUNTOS
CodEmp NombEmp Sueldo CodJefe Sueldo
4127 Andrés 1.345 4017 1.345
4015 Ramiro 2.500 4017 2.500
4136 Felipe 879 4087 879
SELECT Sueldo
4041 Lucero 1.345 4015 1.345
FROM EMPLEADO
4143 Martha 1.150 4117 1.150
4017 Samuel 3.700 3.700
4025 Rodolfo 987 4127 987
4117 Angel 2.645 4017 2.645
4087 Javier 1.150 4017 1.150
Sueldo
4032 Iván 879 4143 879
1.345
4037 Margarita 1.345 4117 1.345
2.500
879
1.150
SELECT DISTINCT Sueldo 3.700
FROM EMPLEADO
987
2.645
UNION
PROFESOR-ING
Cedula Nombre Especialidad PROFESOR-EC
1920 Pedro Matemáticas Cedula Nombre Especialidad
3018 José Historia 4127 Margarita Computación
1923 Dora Matemáticas 2010 Martha Economía
2021 Antonio Computación 3018 José Historia
1924 Rosa Matemáticas 1054 Samuel Computación
2024 Gustavo Computación 2023 Rosario Economía
3018 José Filosofía
1053 Luis Física

(SELECT Nombre
Nombre
FROM PROFESOR-ING
WHERE Especialidad=“Computación”) Antonio
UNION Gustavo
(SELECT Nombre Margarita
FROM PROFESOR-EC
Samuel
WHERE Especialidad=“Computación”)
INTERSECCION
PROFESOR-ING
Cedula Nombre Especialidad PROFESOR-EC
1920 Pedro Matemáticas Cedula Nombre Especialidad
3018 José Historia 4127 Margarita Computación
1923 Dora Matemáticas 2010 Martha Economía
1054 Samuel Computación 3018 José Historia
1924 Rosa Matemáticas 1054 Samuel Computación
2024 Gustavo Computación 2023 Rosario Economía
3018 José Filosofía
1053 Luis Física

(SELECT Cédula, Nombre


FROM PROFESOR-ING ) Cédula Nombre
INTERSECT 3018 José
(SELECT Cédula, Nombre
1054 Samuel
FROM PROFESOR-EC )

Para la diferencia se utiliza la palabra EXCEPT


OPERADOR ALL

EMPLEADO

CodEmp NombEmp Sueldo CodJefe


4127 Andrés 1.345 4017
(SELECT CodEmp, NombEmp
4015 Ramiro 2.500 4017
FROM EMPLEADO
4136 Felipe 879 4087 WHERE Sueldo <= ALL(SELECT Sueldo
4041 Lucero 1.345 4015 FROM EMPLEADO )
4143 Martha 1.150 4117
4017 Samuel 3.700
4025 Rodolfo 987 4127 CodEmp NombEmp
4117 Angel 2.645 4017 4136 Felipe
4087 Javier 1.150 4017 4032 Iván
4032 Iván 879 4143
4037 Margarita 1.345 4117
OPERADOR EXISTS

EMPLEADO

CodEmp NombEmp Sueldo CodJefe


4127 Andrés 1.345 4017 (SELECT E.CodEmp, E.NombEmp
FROM EMPLEADO E
4015 Ramiro 2.500 4017
WHERE EXIST (SELECT *
4136 Felipe 879 4087
FROM EMPLEADO
4041 Lucero 1.345 4015 WHERE E.CodEmp = CodJefe)
4143 Martha 1.150 4117
4017 Samuel 3.700
CodEmp NombEmp
4025 Rodolfo 987 4127
4127 Andrés
4117 Angel 2.645 4017
4015 Ramiro
4087 Javier 1.150 4017
4143 Martha
4032 Iván 879 4143
4017 Samuel
4037 Margarita 1.345 4117
4117 Angel
4087 Javier
Oracle SQL*Plus

POTENCIAS DE SELECT
Order By-Patrón–Li
EMPLEADO s t a SELECT NombEmp, Sueldo
CodEmp NombEmp Sueldo CodJefe FROM EMPLEADO
ORDER BY NombEmp;
4127 Andrés 1.345 4017
4015 Ramiro 2.500 4017 SELECT NombEmp, Sueldo
4136 Felipe 879 4087 FROM EMPLEADO
4041 Lucero 1.345 4015 ORDER BY NombEmp desc;
4143 Martha 1.150 4117 SELECT NombEmp, Sueldo
4017 Samuel 3.700 FROM EMPLEADO
4025 Rodolfo 987 4127 WHERE Sueldo IN (1345, 879);
4117 Angel 2.645 4017
SELECT NombEmp, Sueldo
4087 Javier 1.150 4017 FROM EMPLEADO
4032 Iván 879 4143 WHERE NombEmp LIKE ‘M%’;
4037 Margarita 1.345 4117
SELECT NombEmp, Sueldo
FROM EMPLEADO
WHERE NombEmp LIKE ‘%gel’;
OTROS OPERADOR

• IS
• IS NOT
• NULL
• ON
• JOIN FUNCIONES
• NATURAL JOIN • SUM
• LEFT OUTER JOIN • MAX
• MIN
• AVG
• COUNT
Oracle SQL*Plus

Privilegios a Usuarios
Instrucción Grant
SINTAXIS:
GRANT < Lista de privilegios>
ON <tabla>
TO <Lista de usuarios>

EJEMPLO: EJEMPLO:
GRANT SELECT GRANT INSERT, DELETE
ON EMPLEADO ON EMPLEADO
TO PUBLIC; TO Digitador, Revisor;
Oracle SQL*Plus

Privilegios a Usuarios
Creación de roles

EJEMPLO:
CREATE ROLE DIGITADOR;
GRANT Insert, Update
ON PEDIDO
TO DIGITADOR;
GRANT DIGITADOR TO DIGIT1, DIGIT2,DIGIT3;

Si se agrega otro privilegio al rol digitador,


automáticamente lo reciben los usuarios: digit1,
digit2,digit3.
Oracle SQL*Plus Formatos de Salida
Comandos:
SET LINESIZE n Indica que la pantalla se distribuya en n columnas (80n 130).
SET PAGESIZE n Indica que los resultados se muestren en páginas de n filas (55n 60).
TTITLE Permite definir un título para que aparezca en todas las páginas. Este se coloca centrado.
BTITLE Permite definir un pie de página para que aparezca en todas las páginas.
Este se coloca centrado.
SPOOL Almacena automáticamente en un archivo de datos todas las salidas SQL*Plus

Ejemplos:
SET LINESIZE 100 Indica que la pantalla se distribuya en 100 columnas.
SET PAGESIZE 40 Indica que los resultados se muestren en páginas de 40 filas.
TTITLE “INFORME” Título para cada página.
BTITLE “Aplicativo de Nómina” Pie de página
SPOOL a:\Reportes Se almacenan los resultados en un archivo
llamado Reportes.lis
Oracle SQL*Plus Formatos de Salida en Columnas
Sintaxis En caracteres:

COLUMN <NombreColumna> An WRAP HEADING ‘TituloColumna’

Sintaxis En datos numéricos:

COLUMN <NombreColumna> FORMAT 999,999,999.00 HEADING ‘TituloColumna’

WRAP Cuando el tamaño de la cadena almacenada en la columna sea mayor a n se


imprime lo faltante en la siguiente fila. Sin esta opción la cadena es truncada.
HEADING Permite darle un nombre a la columna dentro del informe (Se puede usar el
caracter | para que continúe en la siguiente línea.

Ejemplos:
COLUMN Nombre A10 WRAP HEADING ‘Nombre|Empleado’

COLUMN Sueldo FORMAT 999,999,999.00 HEADING ‘Sueldo a Pagar’


TALLER 3

Tomando como base la posible solución del taller 1 Describa las tablas que resultan de convertir
el modelo E/R a modelo relacional.

A partir de ese modelo relacional resuelva usando SQL, las preguntas siguientes:

1. ¿cuáles son las carreras ofrecidas por esa universidad?

2. ¿Para un estudiante de nombre XXXX, cuál es la lista de asignaturas cursadas y


aprobadas?

3. ¿cuál es la lista de asignaturas que conforman el plan de estudios de la carrera YYYY?

4. ¿cuál es la lista de asignaturas que tienen la mayor intensidad horaria?

5. Dado el nombre de una asignatura y el grupo, mostrar la lista de estudiantes inscritos y el


nombre del profesor que la dirige.

6. Dado el nombre de una carrera y un semestre entregar la lista de asignaturas de ese


semestre y y los estudiantes (Código, nombre, teléfono) inscritos en cada una de ellas.
TALLER 4

Terminar la implementación del modelo en el lenguaje manejador de BD. Y generando las


consultas que se describen a continuación.
Debe entregar un disco con la base de datos que contiene la base de datos y las consultas.
1. ¿cuáles son las carreras ofrecidas por esa universidad?

2. ¿Para un estudiante de nombre XXXX, cuál es la lista de asignaturas cursadas y


aprobadas?

3. ¿cuál es la lista de asignaturas que conforman el plan de estudios de la carrera YYYY?

4. ¿cuál es la lista de asignaturas que tienen la mayor intensidad horaria?

5. Dado el nombre de una asignatura y el grupo, mostrar la lista de estudiantes inscritos y el


nombre del profesor que la dirige.

6. Dado el nombre de una carrera y un semestre entregar la lista de asignaturas de ese


semestre y y los estudiantes (Código, nombre, teléfono) inscritos en cada una de ellas.
NORMALIZACION

REGLAS DE INTEGRIDAD

• Todo valor de un atributo debe provenir del


dominio pertinente.
• Ningún componente de la clave primaria puede
ser nulo. (Integridad de entidades)
• Si una relación R2, incluye una clave ajena C de
la relación R1, cada valor de de C en R2, debe
existir para C en R1. (restricción referencial).
NORMALIZACION

formas normales
Universo De relaciones
Relaciones 1FN
Relaciones 2FN
Relaciones 3FN
Relaciones BCFN
Relaciones 4FN
Relaciones PJ/NF (5FN)
NORMALIZACION

DEPENDENCIA
FUNCIONAL
En una relación R, el atributo Y de R depende funcionalmente del
atributo X de R , si y sólo si, un solo valor de Y en R está asociado
a cada valor X de R.

R.X R.Y

R.X determina funcionalmente a R.Y


R.Y depende funcionalmente de R.X

Para cualquier par de tuplas t1 y t2 de R, tales que t1[x] = t2[x], se


debe tener también que t1[y] = t2[y],
NORMALIZACION
DEPENDENCIA
FUNCIONAL
EMPLEADO
CedEmp NombEmp Cargo
1920 Pedro Albañil
3018 José plomero
1923 Dora Aseador
2021 Antonio plomero
1924 Felipe Aseador
2024 Gustavo Albañil
3044 Mauricio Ebanista
1053 Luis plomero

EMPLEADO.CedEmp EMPLEADO.NombEmp

EMPLEADO.CedEmp EMPLEADO.Cargo
EMPLEADO.Cargo EMPLEADO.NombEmp
NORMALIZACION

DEPENDENCIA FUNCIONAL

EMP-PROY
CedEmp NumProy NombEmp FechNac Dirección Horas NombProy CedGerenteProy

CedEmp { NombEmp, FechNac,Dirección }


NumProy { NombProy, CedGerenteProy }
{ CedEmp,NumProy } Horas
NORMALIZACION

REGLAS DE INFERENCIA EN LA DEPENDENCIA


FUNCIONAL
Existen dependencias funcionales que no son obvias.
Si el conjunto de dependencias funcionales que se especifican sobre una
relación R se notan con F, el conjunto de todas las dependencias posibles
se denota por F+ y se denomina cerradura de F.

EMP-DEP
CedEmp NumDep NombEmp FechNac Dirección Cargo NombDep CedGerenteDep

F = { CedEmp { NombEmp, FechNac,Dirección,NumDep } ,NumDep { NombDep, CedGerenteDep } ,


{ CedEmp,NumDep } Cargo }

Se obtienen otras dependencias funcionales:


CedEmp {NombDep, CedGerenteDep }
CedEmp CedEmp
NumDep  NombDep
NORMALIZACION

REGLAS DE INFERENCIA EN LA DEPENDENCIA


FUNCIONAL
F ⇒ X  Y Denota que la dependencia funcional X  Y se
infiere del conjunto de dependencias funcionales F

REGLAS:
RI1 Si X ⊇Y , entonces X  Y (Reflexiva)
RI2 {X Y} ⇒XZ  YZ (Aumentativa)
RI3 {X Y, Y Z} ⇒ X Z (Transitiva)
RI4 {X YZ} ⇒X Y (proyectiva o Descomposición)
RI5 {X Y, X Z} ⇒X YZ (Unión o aditiva)
RI6 {X Y, YW Z} ⇒WX Z (Seudo transitiva)
NORMALIZACION

Primera forma normal


( 1FN )

Una relación está en primera forma normal, si y sólo si


los dominios subyacentes contienen únicamente
valores atómicos. ( No son multivaluados)
PROFESOR
CedProf NombProf Especialidad PROFESOR
1920 Pedro Matemáticas
CedProf NombProf Especialidad
3018 José Historia
1920 Pedro Matemáticas, computación
1923 Dora Matemáticas
3018 José Historia, Filosofía
1920 Pedro Computación
1923 Dora Matemáticas, Física
1924 Rosa Matemáticas
1924 Rosa Matemáticas
2024 Gustavo Computación
2024 Gustavo Computación
3018 José Filosofía
1923 Dora Física
NORMALIZACION

Primera forma normal


( 1FN )

PROF-ESP
PROFESOR
CedProf Especialidad
CedProf NombProf 1920 Matemáticas
3018 Historia
1923 Dora
1923 Matemáticas
3018 José
1920 Computación
1920 Pedro
1924 Matemáticas
1924 Rosa
2024 Computación
2024 Gustavo
3018 Filosofía
1923 Física
NORMALIZACION

Segunda forma normal


( 2FN )

Una relación R está en segunda forma normal, si todo


atributo no primo en R depende funcionalmente de
manera total de la clave primaria de R.

EMP-PROY
CedEmp NumProy NombEmp FechNac Dirección Horas NombProy CedGerenteProy

Esta en 1FN pero no en 2FN, NombEmp, que es un


atributo no primo no está en dependencia funcional
total de la clave. Se elimina NumbProy y aún hay
dependencia funcional de CedEmp.
NORMALIZACION

Segunda forma normal


( 2FN )

EMPLEADO
CedEmp NombEmp FechNac Dirección

PROYECTO
NumProy NombProy CedGerentePro

EMP-PROY
CedEmp NumProy Horas
NORMALIZACION

Tercera forma normal


( 3FN )

Una relación R está en tercera forma normal (3FN) si está


en segunda forma normal (2FN) y ningún atributo no
primo de R depende transitivamente de la clave primaria.
EMPLEADO
CedEmp NombEmp FechNac Dirección NumDep NombDep CedGerenteDep

CedEmp  Numdep NumDep  CedGerenteDep

CedEmp  CedGerenteDep
NORMALIZACION

Tercera forma normal


( 3FN )

EMPLEADO
CedEmp NombEmp FechNac Dirección NumDep NombDep CedGerenteDep

EMPLEADO
CedEmp NombEmp FechNac Dirección NumDep

DEPARTAMENTO
NumDep NombDep CedGerenteDep
NORMALIZACION

GENERALIZACIONES DE LA 2FN Y 3FN

Una relación R está en segunda forma normal (2FN) , si


todo atributo no primo en R depende funcionalmente de
manera total de cualquier clave de R.

Una relación R está en tercera forma normal (3FN) si,


siempre que una dependencia funcional X  A se cumple
en R, o bien (a) X es una superclave de R, o (b) A es un
atributo primo de R.
NORMALIZACION

Forma normal de Boyce – Cood


( FNBC )

Una relación R está en BCFN si, siempre que una


dependencia funcional X  A es valida en R, entonces X
es una superclave de R.

LOTES
CodProp NombreMunic NumLot Area
NORMALIZACION

Forma normal de Boyce – Cood


( FNBC )

LOTES
CodProp NombreMunic NumLot Area

LOTES MUNC-AREA
CodProp NumLot Area Área NombreMunic

Se puede verificar que la descomposición permite


obtener un conjunto de tablas en 3FN y BCFN
NORMALIZACION
DEPENDENCIA MULTIVALUADA

Una dependencia multivaluada (DMV) X Y Especificada sobre la relación


R debe cumplir que, si existen tuplas t1 y t2 tales que t1[X] = t2 [X], deberán
existir otras dos tuplas t3 , t4 que cumplan las siguientes propiedades:
•t3 [X] = t4 [X] = t1 [X] = t2 [X]
•t3 [Y] = t1 [Y] y t4 [Y] = t2 [Y]
•t3 [R-(XY)] = t2 [R-(XY)] y t4 [R-(XY)] = t1 [R-(XY)], Siendo XY = X∪Y

X Y Z
t1 a b e
X Y Se lee en atributo Y es
t2 a c f multidependiente de X ó El atributo
t3 a b f X multidetermina al atributo Y.
t4 a c e
m r h
NORMALIZACION

DEPENDENCIA MULTIVALUADA

BIBLIOGRAFIA
Curso Profesor texto
t1 física Pedro Mecánica básica
t2 física Dora Principios de óptica
t3 física Dora Mecánica básica
t4 física Pedro Principios de óptica
Cálculo Rosa Mecánica básica
Cálculo Rosa Análisis vectorial X Y Es trivial si:
Cálculo Rosa Cálculo diferencial
•Y es subconjunto de X ó
•Y ∪ X = R
X Y
En caso contrario es no trivial.
Cuarta forma normal (4FN)
NORMALIZACION

Una relación R, está en cuarta forma normal (4FN) Respecto a un


conjunto de dependencias F si, para cada dependencia
multivaluada no trivial X Y en F+, X es una superclave de R
PROGRAMACION

BIBLIOGRAFIA Curso Profesor

Curso Profesor texto


física Pedro
física Pedro Mecánica básica
física Dora
física Dora Principios de óptica
Cálculo Rosa
física Dora Mecánica básica
BIBLIOGRAFIA
física Pedro Principios de óptica
Cálculo Rosa Mecánica básica Curso texto
Cálculo Rosa Análisis vectorial física Mecánica básica
Cálculo Rosa Cálculo diferencial física Principios de óptica
Cálculo Mecánica básica
Cálculo Análisis vectorial

¿Está en BCFN? Cálculo Cálculo diferencial


NORMALIZACION
Dependencia de reunión

Una descomposición de R denotada por (R1, R2 ,..., Rn) es dependencia de


reunión (DR) de R si la reunión natural de R1, R2 ,..., Rn equivale a R, es decir es
una reunión sin perdida de información.
R R1 R2 R3
X Y Z X Y Y Z X Z
a1 b1 c2
a1 b2 c1 a1 b1 b1 c2 a1 c2
a2 b1 c1 a1 b2 b2 c1 a1 c1
a1 b1 c1 a2 b1 b1 c1 a2 c1

R1  R2
X Y Z (R1  R2)  R3 = ?
a1 b1 c2
a1 b1 c1
R1, R2 ,..., Rn es una DR trivial
a1 b2 c1
si algún Ri = R
a2 b1 c2
a2 b1 c1
NORMALIZACION
Quinta forma normal (5FN)

Una relación R esta en 5FN (o Forma normal de proyección


reunión FNPR) respecto a un conjunto F de dependencias
funcionales, multivaluadas y de reunión si, para cada
dependencia de reunión no trivial DR(R1, R2 ,..., Rn) en F+, toda Ri
es una superclave de R

R R1 R2 R3
X Y Z X Y Y Z X Z
a1 b1 c2
a1 b2 c1 a1 b1 b1 c2 a1 c2
a2 b1 c1 a1 b2 b2 c1 a1 c1
a1 b1 c1 a2 b1 b1 c1 a2 c1

¿R está en 5FN? ¿R1, R2, R3 están en 5FN?


NORMALIZACION DEPARTAMENTO

EMPLEADO PROYECTO OFICINA

TRABAJO TELEFONO

TALLER 5
HISTORIA LABORAL

Una persona no muy experta en bases de datos definió un modelo de datos como el que se muestra en la figura. Siendo esta
una representación jerárquica (No normalizada) del conjunto de datos del personal de una compañía . La figura se debe
interpretar así:

• La compañía tiene un conjunto de departamentos.


• Cada departamento tiene un conjunto de empleados, un conjunto de proyectos y un conjunto de oficinas.
• Cada empleado tiene una historia laboral (Conjunto de trabajos que ha tenido el empleado), Para cada empleo, el empleado
también tiene una historia de salarios (salarios recibidos mientras tenía ese empleo).
• Cada oficina tiene un conjunto de teléfonos.

La base de datos fue definida mediante las siguientes tablas:


• Para cada departamento: Número de departamento (único), presupuesto y el número de empleado del gerente del
departamento.
• Para cada empleado: Número del empleado (único), número del proyecto actual, el número de oficina y el número telefónico;
además, los cargos que ha tenido el empleado, junto con la fecha y los salarios distintos obtenido en ese cargo.
• Para cada proyecto: Número de proyecto (único) y presupuesto.
• Para cada oficina: Número de oficina (único), área en metros cuadrados, y números de los teléfonos de esa oficina.

A partir de esas tablas aplicar normalización, generando un conjunto apropiado de relaciones normalizadas hasta BCFN.
Indicar cualquier suposición hecha respecto de las dependencias existentes.
Todos los componentes del sistema
residen en un solo computador o sitio:
•Los datos.
•El software del SGBD.
•Dispositivos de almacenamiento
secundario.
•Con un computador
potente desde el cual se
BD administra la base de
datos.
•Todos los demás
computadores se conectan
mediante una red y
disfrutan del software y la
Red de BD.
Comunicacione
s
Colección de datos
que pertenecen
lógicamente al mismo
sistema, pero se Red de
encuentran dispersos Comunicacione
s
entre los sitios
(computadores) de la
red.
VENTAJAS
• Naturaleza distribuida de
las bases de datos.
• Mayor fiabilidad.
• Mayor disponibilidad.
• Facilidad para compartir
datos.
• Mejor rendimiento.
REGLAS
1. Autonomía local. 7. Procesamiento distribuido de
2. No dependencia de un sitio consultas.
central. 8. Manejo distribuido de
3. Operación continua. transacciones.

4. Independencia con respecto a la 9. Independencia respecto al equipo.


localización. 10. Independencia respecto al sistema
5. Independencia con respecto a la operativo.
fragmentación. 11. Independencia con respecto a la
6. Independencia respecto a la red.
réplica. 12. Independencia con respecto al
DBMS
FRAGMENTACIO
N
• En cada sitio se encuentran
los datos que allí se
requieren frecuentemente. TIPOS DE
• Mejor tiempo de respuesta. FRAGMENTACION

• Operaciones locales Vertical


disminuyendo el trafico
sobre la red.
Horizontal
• Se pueden redistribuir los
datos, sin cambiar Mixta
aplicaciones.
FRAGMENTACION
VERTICAL
EMPLEADO

CC Nombre FechNac Dirección Salario Sexo CCsup CodDep

Basada en la 2345 María 23/12/56 Kr 7 #32-67 2356 F 1634 5


operación de 1126 Juan 03/05/67 Cll 13 # 12-80 5467 M 1634 6
1345 Alfredo 13/08/81 Av. 68 # 23-50 1234 M 2436 3
proyección.
1634 Rosario 12/09/76 Trav8 # 12-56 3456 F 1123 2
3342 Alba 03/09/81 Diag 5 # 76-34 2345 F 1365 3
1893 Felipe 18/10/84 Av. 76# 2-50 3256 M 1123 4
2365 Rafael 22/08/81 Kr. 68 # 23-55 1234 M 1634 5

EMPLEADO-DATOS-LABORALES
EMPLEADOS-DATOS-PERSONALES
CC Salario CCsup CodDep
CC Nombre FechNac Dirección Sexo

2345 María 23/12/56 Kr 7 #32-67 F 2345 2356 1634 5


1126 Juan 03/05/67 Cll 13 # 12-80 M 1126 5467 1634 6
1345 Alfredo 13/08/81 Av. 68 # 23-50 M 1345 1234 2436 3
1634 Rosario 12/09/76 Trav8 # 12-56 F 1634 3456 1123 2
3342 Alba 03/09/81 Diag 5 # 76-34 F 3342 2345 1365 3
1893 Felipe 18/10/84 Av. 76# 2-50 M 1893 3256 1123 4
2365 Rafael 22/08/81 Kr. 68 # 23-55 M 2365 1234 1634 5
FRAGMENTACI EMPLEADO

ON CC Nombre FechNac Dirección Salario Sexo CCsup CodDep


HORIZONTAL 2345 María 23/12/56 Kr 7 #32-67 2356 F 1634 5
1126 Juan 03/05/67 Cll 13 # 12-80 5467 M 1634 6
Basada en la 1345 Alfredo 13/08/81 Av. 68 # 23-50 1234 M 2436 3
1634 Rosario 12/09/76 Trav8 # 12-56 3456 F 1123 2
operación de
3342 Alba 03/09/81 Diag 5 # 76-34 2345 F 1365 3
selección
1893 Felipe 18/10/84 Av. 76# 2-50 3256 M 1123 4
2365 Rafael 22/08/81 Kr. 68 # 23-55 1234 M 1634 5

EMPLEADO-MASCULINO
CC Nombre FechNac Dirección Salario Sexo CCsup CodDep
1126 Juan 03/05/67 Cll 13 # 12-80 5467 M 1634 6
1345 Alfredo 13/08/81 Av. 68 # 23-50 1234 M 2436 3
1893 Felipe 18/10/84 Av. 76# 2-50 3256 M 1123 4
2365 Rafael 22/08/81 Kr. 68 # 23-55 1234 M 1634 5

EMPLEADO-FEMENINO
CC Nombre FechNac Dirección Salario Sexo CCsup CodDep
2345 María 23/12/56 Kr 7 #32-67 2356 F 1634 5
1634 Rosario 12/09/76 Trav8 # 12-56 3456 F 1123 2
3342 Alba 03/09/81 Diag 5 # 76-34 2345 F 1365 3
EMPLEADO
FRAGMENTACI
ON MIXTA CC Nombre FechNac Dirección Salario Sexo CCsup CodDep

2345 María 23/12/56 Kr 7 #32-67 2356 F 1634 5


1126 Juan 03/05/67 Cll 13 # 12-80 5467 M 1634 6
1345 Alfredo 13/08/81 Av. 68 # 23-50 1234 M 2436 3
Combinando 1634 Rosario 12/09/76 Trav8 # 12-56 3456 F 1123 2
los dos tipos de 3342 Alba 03/09/81 Diag 5 # 76-34 2345 F 1365 3
fragmentación. 1893 Felipe 18/10/84 Av. 76# 2-50 3256 M 1123 4
2365 Rafael 22/08/81 Kr. 68 # 23-55 1234 M 1634 5

EMPLEADOS-DATOS-MASCULINO
CC Nombre FechNac Dirección Sexo
EMPLEADO-DATOS-LABORALES
1126 Juan 03/05/67 Cll 13 # 12-80 M
CC Salario CCsup CodDep
1345 Alfredo 13/08/81 Av. 68 # 23-50 M
1893 Felipe 18/10/84 Av. 76# 2-50 M
2345 2356 1634 5
2365 Rafael 22/08/81 Kr. 68 # 23-55 M
1126 5467 1634 6
1345 1234 2436 3
1634 3456 1123 2
3342 2345 1365 3
EMPLEADOS-DATOS-FEMENINO 1893 3256 1123 4
CC Nombre FechNac Dirección Sexo 2365 1234 1634 5
2345 María 23/12/56 Kr 7 #32-67 F
1634 Rosario 12/09/76 Trav8 # 12-56 F
3342 Alba 03/09/81 Diag 5 # 76-34 F
REPLICACION

REPLICACIÓN TOTAL REPLICACION


PARCIAL
• En cada sitio se encuentra
una copia de la base de • Algunos datos
datos. replicados y otros no.
• Mejora la disponibilidad • Implica un diseño
de los datos. cuidadoso del reparto
de los datos.
• Mejora tiempo de
respuesta en consultas. • Es una opción cuando
hay muchas operaciones
• Mas costosa para las
de actualización.
operaciones de
actualización.
ALGUNOS
PROBLEMAS
• La velocidad en las redes,
especialmente a larga distancia.
• Procesamiento de consultas
• Administrador de catálogo.
• La propagación de las
actualizaciones.
• Control de recuperación.
• Control de concurrencia.
• Privacidad de los datos.
Son bases de datos que permiten
definir reglas, a partir de las
cuales se puede inferir
información adicional con base
en datos ya almacenados.
Elementos:
• Un lenguaje declarativo
• Mecanismos de deducción (Reglas de inferencia)
• Modelo relacional y el cálculo relacional.
• Programación lógica (Prolog: Datalog)
• Hechos y Reglas
• Evaluación y optimización.
• Encadenamiento hacia delante y encadenamiento
hacia atrás.
PREDICADOS

HECHO REGLA

Parámetros constantes:
Numéricos o cadenas Parámetros variables
de caracteres iniciando iniciando con letras
con letras minúsculas. mayúsculas.
Predicado base

Sintaxis:
nombre(ParamX,ParamY,...,ParamZ)
•Cada parámetro tiene un
Predicado: significado dependiendo de su
ubicación.
nombre(ParamX,ParamY,...,ParamZ)
•Las reglas pueden ser
recursivas.
•Cabeza: constituido por un
solo predicado. Conclusión de
la regla.
Reglas: •Cuerpo: Constituido por uno o
mas predicados: Premisa de la
Cabeza : - cuerpo regla. La coma se lee y
equivale al enlace lógico Y
(and).
•Una Cabeza asociada a dos
cuerpos equivale al al enlace
lógico O (or).
Hechos:
Reglas:
Supervisa(luis, josé). Superior(X,Y) : - Supervisa(X,Y).
Supervisa(luis, ramón). Superior(X,Y) : - Supervisa(X,Z), Superior(Z,Y).
Subordinado(X,Y) : - Superior(Y,X).
Supervisa(luis, ruth).
Supervisa(lucia, alicia).
Supervisa(lucia, antonio). Consultas:

Supervisa(jaime, luis). Superior(jaime,Y)?


Superior(jaime, ruth)?
Supervisa(jaime,lucia).
Formulas atómicas:
Son Expresiones de la forma:

Predicado(a1, a2, . . . ,an)


Literal: Es una forma atómica. Puede ser:

Literal positiva P(a1, a2, . . . ,an)

Literal negativa not P(a1, a2, . . . ,am)


PREDICADOS INTEGRADOS
Less <
EJEMPLOS
Less_or_equal <=
Less( X, 10). X<10
Greater >
Less( X, Y). X<Y
Greater_or_equal >=
Less_or_equal(5,Y). 5<=Y
Equal =
Not_equal /=
CLAUSULAS DE HORN
Una clausula puede contener a lo mas una literal
positiva. Por lo tanto tiene la forma:

not(P1) OR not(P2) OR. . . OR not(Pn) OR Q


FORMA CLAUSAL Esta equivalen a :

•Todas las variables de la (P1) AND (P2) AND. . . AND (Pn) => Q
formula están cuantificadas Que traducido a datalog se escribe:
universalmente.
Q: - P1 , P2 ,. . . , Pn .
•Cláusulas : Unión de literales
mediante el enlace OR
(disyunción de literales). O también la forma:
•La formula Clausal es una
not(P1) OR not(P2) OR. . . OR not(Pn)
unión de cláusulas mediante el
enlace and (conjunción de Que equivale a:
cláusulas).
(P1) AND (P2) AND. . . AND (Pn)
Que traducido a datalog se escribe:

P1 , P2 ,. . . , Pn .
ENCADENAMIENTO ENCADENAMIENTO
HACIA DELANTE HACIA ATRAS
•Se parte de los hechos, se aplican •Se parte del predicado objeto
las reglas para generar nuevos buscando determinar hechos que lo
hechos. satisfagan.
•Los nuevos hechos se comparan •En esta técnica no se generan
con el predicado objeto de la nuevos hechos en forma explicita.
consulta para verificar si coinciden.
•Si no hay hechos base que lo
•Se deben generar solo los hechos satisfagan, continua con las reglas
que tengan que ver con la consulta, cuya cabeza coincida con el
mediante una estrategia adecuada. predicado objeto. Aplica la regla
buscando encontrar valores que
coincidan.
Reglas: Consultas:
Superior(X,Y) : - Supervisa(X,Y). Superior(jaime,Y)?
Superior(X,Y) : - Supervisa(X,Z), Superior(Z,Y).
Subordinado(X,Y) : - Superior(Y,X). Nuevos hechos por la primera regla
Superior(luis, josé).
Superior(luis, ramón).
Superior(luis, ruth).
Hechos: Superior(lucia, alicia).
Supervisa(luis, josé). Superior(lucia, antonio).

Supervisa(luis, ramón). Superior(jaime, luis). Solución.


Superior(jaime,lucia). Solución.
Supervisa(luis, ruth).
Nuevos hechos por la segunda regla
Supervisa(lucia, alicia).
Superior(jaime, josé). Solución.
Supervisa(lucia, antonio).
Superior(jaime,ramón). Solución.
Supervisa(jaime, luis). Superior(jaime,ruth). Solución.
Supervisa(jaime,lucia). Superior(jaime, alicia). Solución.
Superior(jaime,antonio). Solución.
Reglas: Consultas:
Superior(X,Y) : - Supervisa(X,Y). Superior(jaime,Y)?
Superior(X,Y) : - Supervisa(X,Z), Superior(Z,Y).
Subordinado(X,Y) : - Superior(Y,X).

Nuevos hechos por la primera regla


Hechos: Superior(jaime, y):- supervisa(Jaime,Y)

Supervisa(luis, josé). Superior(jaime, luis). Solución.


Superior(jaime,lucia). Solución.
Supervisa(luis, ramón).
Nuevos hechos por la segunda regla
Supervisa(luis, ruth).
Superior(jaime,Y) : - Supervisa(jaime,Z),
Supervisa(lucia, alicia). Superior(Z,Y).
Supervisa(lucia, antonio). El problema ahora consiste en solucionar
la consulta compuesta:
Supervisa(jaime, luis).
Supervisa(jaime,Z), Superior(Z,Y).
Supervisa(jaime,lucia).
Reglas: Consultas:
Superior(X,Y) : - Supervisa(X,Y). Superior(jaime,Y)?
Superior(X,Y) : - Supervisa(X,Z), Superior(Z,Y).
Subordinado(X,Y) : - Superior(Y,X).

Supervisa(jaime,Z), Superior(Z,Y).

Hechos: Supervisa(jaime,Z)
Supervisa(luis, josé).
Supervisa(luis, ramón). Z=luis Z=lucia
Supervisa(luis, ruth).
Supervisa(lucia, alicia).
Supervisa(lucia, antonio). Superior(luis,Y) Superior(lucia,Y)

Supervisa(jaime, luis).
Supervisa(jaime,lucia). Y=jose,ramon,ruth Y=alicia,antonio
Reglas: Consultas:
Superior(X,Y) : - Supervisa(X,Y). Superior(jaime,Y)?
Superior(X,Y) : - Supervisa(X,Z), Superior(Z,Y).
Nuevos hechos por la primera regla
Subordinado(X,Y) : - Superior(Y,X).
Superior(jaime, y):- supervisa(Jaime,Y)
Superior(jaime, luis). Solución.
Superior(jaime,lucia). Solución.

Hechos: Nuevos hechos por la segunda regla

Supervisa(luis, josé). Superior(jaime,Y) : - Supervisa(jaime,Z),


Superior(Z,Y).
Supervisa(luis, ramón). El problema ahora consiste en solucionar
Supervisa(luis, ruth). la consulta compuesta:
Supervisa(jaime,Z), Superior(Z,Y).
Supervisa(lucia, alicia).
Superior(jaime, josé). Solución.
Supervisa(lucia, antonio).
Superior(jaime,ramón). Solución.
Supervisa(jaime, luis).
Superior(jaime,ruth). Solución.
Supervisa(jaime,lucia). Superior(jaime, alicia). Solución.
Superior(jaime,antonio). Solución.
Reglas:
Superior(X,Y) : - Supervisa(X,Y).
Superior(X,Y) : - Supervisa(X,Z), Superior(Z,Y).
Subordinado(X,Y) : - Superior(Y,X).

Hechos:
Mediante las técnicas de
Supervisa(luis, josé). encadenamiento hacia delante
Supervisa(luis, ramón). y encadenamiento hacia atrás,
resuelva las siguientes
Supervisa(luis, ruth). consultas:
Supervisa(luis, francisco). Superior(jaime,Y)?
Supervisa(alicia, flor). Superior (luis,flor)?
Supervisa(lucia, alicia). Subordinado(flor, jaime)?
Supervisa(lucia, antonio). Subordinado(francisco, Y)?
Supervisa(jaime, luis).
Supervisa(jaime,lucia).
Término Acuñado por

Bill Inmon
Almacén de datos
Depósito de Datos.
Se caracteriza por ser:
• Integrado.
• Histórico.
• Temático.
• No volátil.
Código Nombre ventas Detalle
MC304Nombre
Código Juan 22.345.678
ventas metalmecánica
Detalle
Código PG289 NombreLuis ventas34.456.900
Detalleagroindustria
MC304MC120 Juan Rodrigo ventas
22.345.678 metalmecánica
v Código
MC304
Nombre
Juan
33.600.800
Detalle veterinaria
e PG289PF157 Luis Francisco 22.345.678
34.456.900 metalmecánica
12.453.000agroindustria
hardware
n MC304
PG289 Juan
Luis
MC120 . Rodrigo . 22.345.678
34.456.900
33.600.800.metalmecánica
agroindustria
veterinaria .
d PG289
MC120 Luis
Rodrigo
PF157 . Francisco . 34.456.900
33.600.800
12.453.000.agroindustria
veterinaria
hardware .
e MC120
PF157 . Rodrigo
. Francisco . . 33.600.800
12.453.000
. veterinaria
. hardware . .
d PF157 . . Francisco. . 12.453.000
. . hardware . .
o . . . . . . . . . . . .
r . . . . . . . .
e . . . .
s

Detalle Por almacen


Altamente
Resumido

Ligeramente
Resumido

META Estado actual


DATOS de los datos

Detalle histórico
de los datos
Venta nacional Venta nacional
por mes 1985- por mes 1980-
1995 1990

Venta semanal Venta semanal


por regiones 1980- por tipo de
1995 producto 1980-
1995

META Detalle de
DATOS ventas 1980 -
1995

Detalle de ventas
de 1990- 1995
• Extracción: Obtención de la información de fuentes internas y
externas.
• Elaboración: Filtrado, limpieza, depuración, homogeneización y
agrupación de la información.
• Carga: Organización y actualización de los datos, y los
metadatos.
• Explotación: Extracción y análisis de la información agrupada.
• Query & Reporting
• On-line analytical processing (OLAP)
• Executive Information System (EIS) ó Información
de gestión
• Decision Support Systems (DSS)
• Visualización de la información
• Data Mining ó Minería de Datos, etc.
OBJETIVOS
• Herramienta para la toma de decisiones, en cualquier área
con base en información global.
• Facilita el análisis estadístico, obteniendo así información
oculta de enorme valor agregado.
• Permite aprender del pasado y predecir situaciones
futuras.
• Simplifica la implementación de sistemas integrales que
permitan la relación con el cliente.
• Obliga a una optimización tecnológica, económica y de
información con excelente retorno de inversión.
BD TRADICIONALES VS. DATA WAREHOUSE
BD OPERACIONALES DATA WARE HOUSE
Predomina la actualización. Predomina la consulta.

Orientado a las aplicaciones Orientado al tema. Al negocio.

Consultas predefinidas y actualizables Consultas complejas, frecuentemente


no anticipadas
Mayor importancia a la estabilidad Mayor importancia al dinamismo.

Operativo (día a día) Análisis y la decisión estratégica.

Predomina el proceso puntual Predomina el proceso masivo.

Importante el dato actual Importante el dato histórico.

Estructura relacional. Visión multidimensional.

Usuarios de perfiles medios y bajos Usuarios de perfiles altos.

Muchos usuarios concurrentes Pocos usuarios concurrentes

Detallada Resumida.

Requerimiento de respuesta inmediata Requerimiento de respuesta no crítico.


Es una aplicación de data warehouse, construida para soportar una línea o
área del negocio. Por lo tanto son localizados y se basan en un subconjunto de
información contenida en el data warehouse.

Data Marts Integración de Data Marts


Un data warehouse no se puede comprar
de debe construir
• Data warehouse debe estar separada de la base de datos
Operacional.
• Claridad sobre le enfoque de las DW, Hacia el análisis.No
orientado a procesos.
• El sistema se debe desarrollar con un enfoque gradual. Usar un
departamento como piloto.
• Departamento piloto preferible con pocos usuarios, con
necesidad de DW muy alta. Alta probabilidad de éxito.
• Estructura de hardware que la soporte.
SMP (Symmetric multiprocessing, o Multiprocesadores
Simétricos):
MPP (Massively parallel processing, o Multiprocesadores
Masivamente Paralelos)
• Bases de datos relacionales o multidimensionales.
1. On-line analytical processing (OLAP)
2. Query & Reporting
3. Executive Information System (EIS) ó
Información de gestión
4. Decision Support Systems (DSS)
5. Visualización de la información
6. Data Mining ó Minería de Datos, etc.
OLAP
Enfocado al análisis multidimensional de datos. Soporta
requerimientos complejos de análisis desde diferentes
perspectivas. Algunas operaciones son:
• Rotar (Swap): alternar las filas por columnas (permutar dos
dimensiones de análisis).
• Bajar (Down):bajar el nivel de visualización en las filas a una
jerarquía inferior.
• Detallar (Drilldown): informar para una fila en concreto, los datos
a un nivel inferior.
• Expandir (Expand): identico al anterior sin perder la información
a nivel superior para éste y el resto de los valores.
• Colapsar (Collapse): operación inversa de la anterior. Código Nombre ventas Detalle
MC304Nombre
Código Juan 22.345.678
ventas metalmecánica
Detalle
Código PG289 NombreLuis ventas34.456.900
Detalleagroindustria
MC304
Código MC120 Juan Rodrigo
Nombre 22.345.678
ventas 33.600.800metalmecánica
Detalle veterinaria
MC304
PG289PF157Juan
Luis Francisco 22.345.678
34.456.900 metalmecánica
12.453.000agroindustria
hardware
MC304MC120 Juan
PG289 . Luis
Rodrigo . 22.345.678
34.456.900
33.600.800 metalmecánica
. agroindustria
veterinaria .
PG289PF157 Luis
MC120 . Rodrigo
Francisco . 34.456.900
33.600.800
12.453.000 agroindustria
. veterinaria
hardware .
MC120
PF157 Rodrigo
. Francisco. 33.600.800
12.453.000 veterinaria
. hardware
Existen dos técnicas OLAP: MOLAP y ROLAP. PF157

. .
.
. .
. . .
Francisco. .
. . .
. .
.
12.453.000
.
. .
. . .
. .
hardware . .
. . .
. .
. .

. . . .
MOLAP

Usa una base de datos propietaria multidimensional, en la que la


información se almacena multidimensionalmente, para ser
visualizada multidimensionalmente.
Usa dos niveles:
• El manejador de base de datos multidimensional.Captura mediante
procesos en batch
• Motor analítico. Que a nivel de aplicación se encarga de los
requerimientos OLAP, mediante algoritmos hash.
ROLAP

La premisa de los sistemas ROLAP es que las capacidades


OLAP se soportan mejor usando bases de datos relacionales.
El sistema ROLAP utiliza una arquitectura de tres niveles:
• El nivel de base de datos relacionales para el manejo, acceso y
obtención del dato.
• Un motor nivel de aplicación que ejecuta las consultas
multidimensionales de los usuarios.
• Un motor ROLAP se integra con niveles de presentación, a
través de los cuales los usuarios realizan los análisis OLAP.
QUERY & REPORTING

El énfasis se hace a las consultas y a la generación de reportes


orientados directamente al usuario. Los cuales pueden ser de tres
tipos:
• Los usuarios poco expertos quienes podrán solicitar la ejecución de
informes o consultas predefinidas según unos parámetros
establecidos.
• Los usuarios con cierta experiencia podrán generar consultas
flexibles mediante una aplicación que proporcione una interfaz
gráfica de ayuda.
• Los usuarios altamente experimentados podrán escribir, total o
parcialmente, la consulta en un lenguaje de interrogación de datos.
DATA MINING

El Data Mining es un proceso que, a través del descubrimiento y


cuantificación de relaciones predictivas en los datos, permite transformar
la información disponible en conocimiento útil de negocio.
Es considerada una de las vías clave de explotación del Data Warehouse,
dado que es este su entorno natural de trabajo.
no se basa en coeficientes de gestión o en información altamente
agregada, sino en la información de detalle contenida en el almacén.
Adicionalmente, el usuario no se conforma con la mera visualización de
datos, sino que trata de obtener una relación entre los mismos que tenga
repercusiones en su negocio.
TECNICAS DE DATA MINING
• Análisis estadístico.
• Métodos basados en árboles
de decisión.
• Algoritmos genéticos.

•Redes neuronales.
•Lógica difusa.
•Series de tiempos.
• Sistemas de Marketing.
• Análisis de riesgos
financieros.
• Análisis de riesgos de
crédito.
• Otras: Control de gestión,
Logística, recurso humano.

También podría gustarte