Logo Studenta
¡Este material tiene más páginas!

Vista previa del material en texto

Preparado por: Miguel Cotaña 1
BASES DE DATOSBASES DE DATOS
Una BD es una colección de datos 
operacionales almacenados sin 
redundancia perjudiciales y utiliza-
Preparado por: Miguel Cotaña 2
redundancia perjudiciales y utiliza-
das para una o mas aplicaciones, de 
una empresa en particular
…..empresa y datos…..empresa y datos
� Una compania 
manufacturera
� Un banco
� Datos de Producto
� Datos de cuenta
� Datos de paciente
Preparado por: Miguel Cotaña 3
� Un hospital
� Una universidad
� Una dependencia del 
gobierno
� Datos de paciente
� Datos de estudiantes
� Datos de planifacion
ARQUITECTURA DE SBDARQUITECTURA DE SBD
� NIVEL EXTERNO: Describe solo parte de 
la BD(mundo real)
� NIVEL CONCEPTUAL: Describe que 
datos son almacenados en la BD y las 
Preparado por: Miguel Cotaña 4
datos son almacenados en la BD y las 
relaciones que existen entre los datos. 
(mundo de ideas)
� NIVEL INTERNO: Describe el 
almacenamiento fisico de los datos(mundo 
de datos)
….niveles….niveles
� El nivel internoes el mas cercano al 
almacenamiento fisico, es decir, es el que se ocupa 
de la forma como se almacenan fisicamente los 
datos.
Preparado por: Miguel Cotaña 5
datos.
� El nivel externoes el mas cercano a los usuarios, 
es decir, es el que se ocupa de la forma como los 
usuarios individuales perciben los datos.
� El conceptual es el nivel de mediacion
SISTEMA DE BD (SBD)SISTEMA DE BD (SBD)
Un SBD es un siste-
ma cuyo proposito 
general es el de 
� DATOS: Un SBD 
puede comprender 1 o 
varias BD´s.
� USUARIOS:personas 
Preparado por: Miguel Cotaña 6
general es el de 
almacenar y recu-
perar informacion 
inherente a la 
organización donde 
opera.
� USUARIOS:personas 
que accesan a las BD.
� HARD: Donde recide 
las BD.
� SOFT:Se lo conoce 
como DBMS.
USUARIOSUSUARIOS
� USUARIO FINAL: Realiza consultas o 
mapeos de subconjuntos de la BD.
� PROGRAMADOR DE APLICACIONES:
Preparado por: Miguel Cotaña 7
� PROGRAMADOR DE APLICACIONES:
Escribe los programas.
� DBA: Usuario sofisticado, hace las veces de 
diseñador y consolidador del sistema
CARACTERISTICAS DE LOS CARACTERISTICAS DE LOS 
SBDSBD
� Control de la redundancia.
� Evitar la inconsistencia
� Compartimiento de los datos
Preparado por: Miguel Cotaña 8
� Compartimiento de los datos
� Integridad y seguridad de los datos
� Estandarizar la informacion en el sistema
� Independencia de datos.
TIPOS DE BASE DE DATOSTIPOS DE BASE DE DATOS
� Base de Datos Jerárquica
� Base de Datos Relacional
� Base de Datos de Red
Preparado por: Miguel Cotaña 9
� Base de Datos de Red
� Base de Datos Orientada a Objetos
� Base de Datos Distribuidas
� Base de Datos Objeto Relacional
� Base de Datos Declarativas (deductivas y 
funcionales)
1.2 1.2 MODELMODELADOADO
� El modelado es la etapa en donde identificamos y 
“dibujamos” los conjuntos de datos que el usuario 
requiere en un SI.
El diseño Logico, es la etapa donde 
Preparado por: Miguel Cotaña 10
� El diseño Logico, es la etapa donde 
transformamos ese modelo en un diseño 
relacional.
� El diseño fisico, es donde se especifica 
caracteristicas propias como tipo de datos, 
longitud, etc.
MODELO DE OBJETOSMODELO DE OBJETOS
� La tecnologia OO, proporciona una forma 
practica y productiva de desarrollo de Soft.
� Se trata de pensar de modo abstracto, acerca 
del problema empleando conceptos del 
Preparado por: Miguel Cotaña 11
Se trata de pensar de modo abstracto, acerca 
del problema empleando conceptos del 
mundo real y no conceptos de 
computadoras.
� Para lograr un software adecuado para el 
cliente, existen el AOO, DOO y POO
…….…….MODELO DE OBJETOSMODELO DE OBJETOS
• La tecnologia orientada a objetos se apoya 
en los solidos fundamentos de la ingenieria, 
cuyos elementos reciben el nombre global 
Preparado por: Miguel Cotaña 12
cuyos elementos reciben el nombre global 
de modelo de objetos.
• Abarca los principios de abstraccion, 
encapsulacion, modularidad, jerarquia, 
tipos, concurrencia y persistencia.
1.3 BASE DE DATOS 1.3 BASE DE DATOS 
RELACIONALRELACIONAL
Este es el modelo mas utilizado para 
modelar problemas reales y administrar 
datos dinamicamente.
Preparado por: Miguel Cotaña 13
datos dinamicamente.
Su idea fundamental es el uso de 
“relaciones”. Durante su diseño, una BD 
relacional pasa por el proceso de 
normalizacion.
DISEÑO CONCEPTUALDISEÑO CONCEPTUAL
MODELO E-R
El modelo de datos entidad-relacion (E-R) 
se basa en una percepcion del mundo real 
Preparado por: Miguel Cotaña 14
se basa en una percepcion del mundo real 
que consiste en un conjunto de objetos 
basicos llamados entidades y relaciones 
entre estos objetos.
…..modelo E…..modelo E--RR
� Entidad: un objeto, distinguible de otros 
objetos. Cosas que se pueden identificar 
claramente. Ej. Ximena Mendez y C.I.
Preparado por: Miguel Cotaña 15
claramente. Ej. Ximena Mendez y C.I.
� Conjunto de entidades: Conjunto de 
entidades del mismo tipo. Ej.Funcionario
� Atributo: Propiedad de una entidad. 
Ej.Funcionario(nombre,edad,direccion)
Entendiendo los conceptos de: Entidad, Conjunto de Entidades y Atributo. 
� Dominio de un atributo: Conjunto de valores 
válidos para el atributo. Ej:
Dominio del nombre: texto o strings
Preparado por: Miguel Cotaña 16
Dominio de edad: enteros positivos
� RELACIONAMIENTO:Asociación entre 2 
entidades. Ej:
Patty trabaja en el proyecto Nro.2
….conceptos y grafica….conceptos y grafica
� Conjunto de relaciones: Conjunto de relacionamientos 
del mismo tipo. 
Ej:
Preparado por: Miguel Cotaña 17
Funcionario TRABAJA en el Proyecto
FUNCIONARIO PROYECTOTRABAJA
en
DIRECCION
EDAD
NOMBRE
CODIGO
NOMBRE
DEPTO
DISEDISEÑÑO DE BDO DE BD
� METODOLOGIA DE 
DISEÑO:
Consiste en un 
conjunto de tecnicas 
Preparado por: Miguel Cotaña 18
conjunto de tecnicas 
que se aplican de 
acuerdo a una 
secuencia de pasos.
DISEDISEÑÑO LOGICOO LOGICO
� Transformación del diagrama E-R 
extendido para elementos de un modelo 
logico.
Los modelos logicos son:
Preparado por: Miguel Cotaña 19
� Los modelos logicos son:
Jerárquico
Relacional
De red
Orientado a Objetos
TABLA RELACIONALTABLA RELACIONAL
CODIGO NOMBRE SEXO EDAD
A1 Ximena F 21
FUNCIONARIO
ATRIBUTOS
T
U
Preparado por: Miguel Cotaña 20
A1 Ximena F 21
A2 Marcos M 26
A3 Zulma F 28
U
P
L
A
S
REPRESENTACION LOGICA:
FUNCIONARIO(codigo,nombre,sexo,edad)
….modelo relacional….modelo relacional
� Modelo formal por naturaleza, estructuras 
de datos simples y uniformes.
� Este modelo se basa en la teoria matematica 
Preparado por: Miguel Cotaña 21
� Este modelo se basa en la teoria matematica 
de conjuntos, donde los datos son 
representados por medio de una colección 
de relaciones o tablas.
� Es el modelo mas utilizado comercialmente
OBJETIVOS DEL M.R.OBJETIVOS DEL M.R.
� Proveer esquemas de facil utilizacion
� Mejorar la independencia lógica y fisica de datos
� Proveer a los usuarios de lenguajes de 
manipulación de BD de alto nivel, permitiendo el 
Preparado por: Miguel Cotaña 22
manipulación de BD de alto nivel, permitiendo el 
acceso a usuarios sin experiencia.
� Optimizar el acceso a BD
� Mejorar la integridad y seguridad de los datos
� Proveer un enfoque metodológico para el diseño 
de esquemas
CARACTERISTICAS DE CARACTERISTICAS DE BASES DE BASES DE 
DATOS RELACIONALDATOS RELACIONAL
� Una BD, puede ser organizada en relaciones
� Se caracteriza por utilizar una tabla 
bidimensional, para la organización de los 
Preparado por: Miguel Cotaña 23
bidimensional, para la organización de los 
datos (filas y columnas)
� Cada fila contiene la informacion a una 
entrada en la BD.
� Cada columna define un item de la BD.
LENGUAJES DE BDLENGUAJES DE BD
� Lenguaje de definicion de datos(LDD)
Usualmente el LDD incorpora la definicion de 
constraints y la definicion de vistas.
� Lenguaje de manipulacion de datos(LMD)
Preparado por: Miguel Cotaña 24
� Lenguaje de manipulacion de datos(LMD)
- Alto nivel: orientada a conjuntos
- Bajo nivel:orientada a registros
� Lenguaje huesped
Lenguaje de programacion en el cual 
comandos del LMD son embutidos.
REPRESENTACION DE EREPRESENTACION DE E--RR
VENDEDOR PRODUCTOSVENDE
CODVEN NOMBRE SUELDO
CANTIDAD
CANTIDADPRE_UNITCODPROD
Preparado por: Miguel Cotaña 25
VENDEDOR PRODUCTOS
PROVEEDOR
PROVEE
CLIENTE
FECHA-VEN
COD_CLI
NOMBRE FONO
NOMBRE DIRECCION
FONO
COD_PROV
TECNICAS UTILIZADASTECNICAS UTILIZADAS
� Tecnica de analisis de datos para tratar la semántica 
de datos desde el punto de vista del usuario.
� Tecnica para el mapeamiento(definen 
Preparado por: Miguel Cotaña 26
Tecnica para el mapeamiento(definen 
correspondencias entre los esquemas de los varios 
niveles) realizado a partir de los resultados del 
analisis de los datos a una implementación de BD
Diseño Conceptual modelo E-R
Diseño Logico modelo relacional
Diseño Fisico modelo relacional
RESTRICCIONES DERESTRICCIONES DE
ASIGNACIONASIGNACION
(Mapping)(Mapping)
Preparado por: Miguel Cotaña 27
(Mapping)(Mapping)
RESTRICCIONES DE ASIGNACIRESTRICCIONES DE ASIGNACIÓÓNN
� Una planificación E-R de una empresa pueden 
definir ciertas restricciones: CARDINALIDAD, 
que expresan el número de entidades con las que 
puede asociarse otra entidad mediante un conjunto 
Preparado por: Miguel Cotaña 28
puede asociarse otra entidad mediante un conjunto 
de entidades.
� Para un conjunto binario de relaciones R entre los 
conjuntos de entidades A y B, la cardinalidad de 
asignación debe ser una de las siguientes:
……restricciones de asig.
� Una a una. Una entidad en A esta asociada 
a lo sumo con una entidad en B, y una 
entidad en B esta asociada a lo sumo con 
Preparado por: Miguel Cotaña 29
entidad en B esta asociada a lo sumo con 
una entidad en A.
� Una a muchas. Una entidad en A esta 
asociada con numero cualquiera de 
entidades en B. Una entidad en B puede 
asociarse a lo sumo con una entidad en A
……restricciones de asig.
� Muchas a una. Una entidad en A esta asociada a 
lo sumo con una entidad en B, sin embargo, puede 
estar asociada con un numero cualquiera de 
entidades en A.
Preparado por: Miguel Cotaña 30
entidades en A.
� Muchas a muchas. Una entidad en A esta 
asociada con numero cualquiera de entidades en 
B, y una entidad en B esta asociada con un 
numero cualquiera de entidades en A
CARDINALIDAD: grado de asociaciCARDINALIDAD: grado de asociacióónn
MUJERCasado con
1:1
HOMBRE
N:1
1 1
1N
Preparado por: Miguel Cotaña 31
PROVEEDOR EMPRESAProvee para
N:M
PADREHIJO Descend.
1N
N M
TIPOS DE TIPOS DE 
RELACIONAMIENTORELACIONAMIENTO
FUNCIONARIO FUNC_JEFE
UNARIO
Preparado por: Miguel Cotaña 32
PROVEEDOR PIEZA
FUNCIONARIO
provee
FUNC_JEFE
CANTIDAD
BINARIO
….tipos de rel….….tipos de rel….
TERNARIO
Preparado por: Miguel Cotaña 33
PROVEEDOR PIEZA
FUNCIONARIO
Provee
para
EjemploEjemplo
Un cliente tiene la opción de que se cargue su cuenta automaticamente en 
el momento de la compra (combustible, mantenimiento, o 
estacionamiento) o de que se le envie mensualmente una factura en 
papel. En cualquier caso, los clientes pueden pagar con dinero en 
efectivo, tarjeta de credito o cheque personal. En la estación de 
servicio “amigos” el combustible se vende por galon a un precio que 
depende de que el combustible sea gasolina, normal o especial. Los 
Preparado por: Miguel Cotaña 34
depende de que el combustible sea gasolina, normal o especial. Los 
servicios estan cotizados de acuerdo con el costo de los insumos y de 
la labor realizada. El estacionamiento se vende segun tarifas que 
pueden ser diarias, semanales o mensuales. Los precios del 
combustible, servicios de mantenimiento, partes y estacionamiento 
pueden variar; solamente el gerente de la estacion puede ingresar o 
cambiar un precio. A su criterio, el gerente puede dar un descuento en 
sus compras a un cliente en particular; este descuento puede variar de 
un cliente a otro. Un 2,5% de impuesto local sobre ventas se aplica a 
todas las operaciones
1.4 BASE DE DATOS O.O.1.4 BASE DE DATOS O.O.
Para todas las cosas orientadas a objetos, el 
marco de referencia conceptual es el 
modelo de objetos. Se menciono 4 
elementos en este modelo:
Preparado por: Miguel Cotaña 35
elementos en este modelo:
- Abstracción
- Encapsulamiento
- Modularidad
- Jerarquia
a)a) ABSTRACCIONABSTRACCION
Una abstraccion denota las 
caracteristicas esenciales de un objeto 
que lo distinguen de todos los demas 
Preparado por: Miguel Cotaña 36
que lo distinguen de todos los demas 
tipos de objeto y proporciona asi 
fronteras conceptuales nitidiamente 
definidas respecto a la perpectiva del 
observador.
Preparado por: Miguel Cotaña 37
b)b) ENCAPSULAMIENTOENCAPSULAMIENTO
Es el proceso de almacenar en un mismo 
compartimiento los elementos de una 
abstraccion que constituyen su 
Preparado por: Miguel Cotaña 38
abstraccion que constituyen su 
estructura y su comportamiento
Preparado por: Miguel Cotaña 39
c)c) MODULARIDADMODULARIDAD
La modularidad es la propiedad que tiene 
un sistema que ha sido descompuesto 
en un conjunto de modulos cohesivos y 
Preparado por: Miguel Cotaña 40
en un conjunto de modulos cohesivos y 
debilmente acoplados.
Preparado por: Miguel Cotaña 41
d)d) JERARQUIAJERARQUIA
La jerarquia es una clasificacion u ordenacion 
de abstracciones.
Preparado por: Miguel Cotaña 42
Preparado por: Miguel Cotaña 43
POO, DOO, AOOPOO, DOO, AOO
� POO: Es un método de implementación en el que 
los programas se organizan como colecciones 
cooperativas de objetos.
� DOO: Es un método de diseño que abarca el 
Preparado por: Miguel Cotaña 44
� DOO: Es un método de diseño que abarca el 
proceso de descomposición y una notación para 
describir los modelos lógico y fisico.
� AOO: Es un método de analisis que examina los 
requisitos desde la perpectiva de las clases y 
objetos que se encuentran en el vocabulario del 
dominio del problema.
PARADIGMA O.O.PARADIGMA O.O.
La Orientacion a Objetos (OO), es una tecnica 
para el modelado de sistemas como un 
conjunto de objetos relacionados que 
interactuan entre si. La OO es similar a la 
Preparado por: Miguel Cotaña 45
interactuan entre si. La OO es similar a la 
forma en que las personas observan su 
entorno.
La OO es un enfoque de desarrollo de 
software que organiza tanto el problema 
como su solucion.
OBJETOSOBJETOS
OBJETO. Es la representacion abstraida de las cosas
Desde la perspectiva de la cognición humana un 
objeto es:
Preparado por: Miguel Cotaña 46
- Una cosa tangible y/o visible.
- Algo que puede comprenderse.
- Algo hacia lo que se dirige una acción o 
pensamiento.
Todo lo que hay en el mundo seran objetos?
OBJETOSOBJETOS
Los objetos tienen atributos y operaciones.
Los atributos son sus caracteristicas y sus 
operaciones (servicios, metodos) son las acciones 
Preparado por: Miguel Cotaña 47
operaciones (servicios, metodos) son las acciones 
que el objeto puede realizar
La definicion de objetos implica la descripcion de 
atributos, comportamientos, operaciones y 
mensajes
EJEMPLOEJEMPLO
TOYOTA: CORONA OBJETO
Preparado por: Miguel Cotaña 48
- Placa
- Modelo
- Color
- Nro-motor
- Frenar()
- Cambiar-caja()
ATRIBUTOS
OPERACIONES
Comportamiento del objeto
Para verificar un objeto previamente 
identificado se pueden utilizar los 
siguientes criterios:
- Relevancia para el dominio del 
Preparado por: Miguel Cotaña 49
- Relevancia para el dominio del 
problema.
- Existencia independiente
- Atributos y Operaciones
CLASECLASE
Clase es una agrupacion de objetos con 
los mismos tipos de caracteristicas
Preparado por: Miguel Cotaña 50
Los objetos son instancias de las clases.
Las clases definen atributos y 
operaciones para sus objetos, no para 
ellas mismas.
……….CLASES Y OBJETOS……….CLASES Y OBJETOS
CLASE. Es un conjunto de objetos que comparten una 
estructura comun y un comportamiento común.
Preparado por: Miguel Cotaña 51
TIPOS DE RELACION TIPOS DE RELACION 
ENTRE CLASESENTRE CLASES
asociacionagregacion (tiene)
Preparado por: Miguel Cotaña 52
composicion (incluye)(parte de)
dependencia
navegacion (es un)
VENDEDOR ORDEN_COMPRA
recibe
incluye tiene
Preparado por: Miguel Cotaña 53
ITEM_SOLICITADO CLIENTE
GENERALIZACIONGENERALIZACION
Es el proceso (durante las etapas de 
analisis y diseno de sistemas) de 
identificar y definir los atributos y 
Preparado por: Miguel Cotaña 54
identificar y definir los atributos y 
operaciones comunes en una coleccion 
de objetos.
• Permite identificar nuevas clases
• Reduce la redundancia
• Promueve la reutilizacion de codigo
HERENCIAHERENCIA
Es el mecanismo para definir una clase 
en terminos de una clase ya existente.
Preparado por: Miguel Cotaña 55
Una subclase hereda los miembros de 
una superclase
VEHICULO
precio
Veloc_max
Frenar()
Preparado por: Miguel Cotaña 56
AUTO
descapotable
turbo
subir()
CAMION
capacidad
traccion
cargar()
ESPECIALIZACION Y ESPECIALIZACION Y 
GENERALIZACIONGENERALIZACION
Mientras la generalizacion se concentra en las 
clases mayores del sistema y ayuda a 
encontrar nuevas clases, la especializacion 
Preparado por: Miguel Cotaña 57
encontrar nuevas clases, la especializacion 
se concentra en crear clases mas especificas.
La especializacion es herencia con la adicion 
o modificacion de operaciones para resolver 
un problema especifico.
ESPECIALIZACION Y ESPECIALIZACION Y 
GENERALIZACIONGENERALIZACION
Generalizacion
Preparado por: Miguel Cotaña 58especializacion
CLASIFICACICLASIFICACIÓÓNN
Identificar clases y objetos es fundamental en el 
DOO. Implica descubrimiento e invención.
Preparado por: Miguel Cotaña 59
ABSTRACCIONES CLAVEABSTRACCIONES CLAVE
Es una clase u objeto que forma parte del vocabulario 
del dominio del problema.
Preparado por: Miguel Cotaña 60
SISTEMAS DE GESTIONSISTEMAS DE GESTION
DEDE
BASES DE DATOSBASES DE DATOS
Preparado por: Miguel Cotaña 61
BASES DE DATOSBASES DE DATOS
SISTEMA DE BDSISTEMA DE BD
Preparado por: Miguel Cotaña 62
SGBD BD
Procesador de consulta Metadatos(DD)
+
Archivos de datos
OBJETIVOS de SGBDOBJETIVOS de SGBD
� Proveer un ambiente que sea adecuado y 
eficiente para recuperary almacenar
información de la Base de Datos.
Preparado por: Miguel Cotaña 63
información de la Base de Datos.
� Gestionar grandes volumenes de 
información.
� Proveer seguridad a la informacion 
almacenada en las Bases de Datos.
CARACTERCARACTERÍÍSTICAS PARA STICAS PARA 
USAR UN SGBDUSAR UN SGBD
REDUNDANCIA
� Sin SGBD: La misma 
información es almace-
nada en diversos archivos 
INTEGRIDAD
� Sin SGBD: Ej: Una consulta 
que revele que un empleado 
trabajó 400 horas/semana. Las 
reglas a ser obedecidas estan en 
cada una de las aplicaciones.
Preparado por: Miguel Cotaña 64
nada en diversos archivos 
privados.
� Con SGBD: Redundancia 
es reducida al mínimo, 
inconsistencias son evita-
das por la integración de 
datos.
cada una de las aplicaciones.
� Con SGBD: Asegura que la 
información de la BD es 
correcta. Una vez que sean 
definidas las reglas para el 
SGBD, estas reglas valen para 
todas las aplicaciones 
automáticamente.
…….usar un SGBD…….usar un SGBD
TOMA DE DECISIONES
� Sin SGBD:La información 
necesaria estan esparcidas 
en archivos pertenecientes a 
ACCESO A 
INFORMACION
� Sin SGBD: Los formatos 
de archivos dependen del 
Preparado por: Miguel Cotaña 65
en archivos pertenecientes a 
sistemas distintos.
� Con SGBD: La integración 
de los datos facilita la 
obtención rapida de las 
informaciones(ayuda en la 
toma de decisiones)
de archivos dependen del 
lenguaje o del producto 
usado para generarlos
� Con SGBD: Los formatos 
de archivos son accedidos 
por el SGBD, no por 
programas de aplicación
…….usar un SGBD…….usar un SGBD
INDEPENDENCIA DE LOS 
DATOS
� Sin SGBD: Los programas 
de aplicación dependen de 
los formatos del archivo. 
SEGURIDAD Y 
PROTECCION
� Sin SGBD: Formas 
estandares de seguridad 
Preparado por: Miguel Cotaña 66
los formatos del archivo. 
� Con SGBD: Los farmatos de 
registros se almacenan en la 
misma BD(junto con los 
datos) y son accedidos por el 
SGBD, no por el programa 
de aplicación.
estandares de seguridad 
utilizando codigos y señas
� Con SGBD: Hay esquema 
adicional de proteccion: el 
usuario ve la BD por 
medio de “ventanas”
…….usar un SGBD…….usar un SGBD
USO CONCURRENTE DE LOS DATOS
� Sin SGBD: Los archivos son utilizados por varios 
usuarios simultaneamente. Alquien tiene que 
sincronizar los eventos.
Preparado por: Miguel Cotaña 67
sincronizar los eventos.
Ej: dos clientes del banco, que depositan en la misma 
cuenta, al mismo tiempo:
Estado inicial de la cuenta Bs.500
Cli_A deposita 200
Cli_B deposita 300
…….usar un SGBD…….usar un SGBD
CASO1:
Cli_A: lee 500
Cli_A: 500 + 200
total : 700
CASO2:
Cli_A: lee 500
Cli_B: lee 500
Cli_A: 500+200=700
Preparado por: Miguel Cotaña 68
total : 700
Cli_B: lee 700
Cli_B: 700 + 300
total: 1000
OKOK
Cli_B: 500+300=800
….problema
Con SGBD: Control de concurrencia de transacciones 
con actualizaciones atomicas (una por cada vez)
FUNCIONES DEL ABDFUNCIONES DEL ABD
� Identifica información relevante.
� Definiciones de esquema (LDD)
� Definición de la estructura de almacenamiento y del método de 
acceso.
� Modificación del esquema y de la organización fisica.
Preparado por: Miguel Cotaña 69
� Modificación del esquema y de la organización fisica.
� Definición de aspectos de seguridad(usuarios, entornos, 
infraestructura)
� Especificación de las restricciones de integridad
� Reorganización
� Administracion del uso de la BD
� Estadisticas
� Auditoria
� Backup y recuperacion
1.5 1.5 BASES DE DATOS BASES DE DATOS 
DISTRIBUIDASDISTRIBUIDAS
� Es una colección de múltiples y 
lógicamente relacionadas BD sobre una red 
de ordenadores.
Es una BD almacenada en varios 
Preparado por: Miguel Cotaña 70
� Es una BD almacenada en varios 
ordenadores que se comunican mediante 
una red de comunicaciones.
� Una de las cosas que debe ser distribuido es 
el procesamiento logico.
SISTEMAS DISTRIBUIDOSSISTEMAS DISTRIBUIDOS
� Un SGBDD, es el software que administra 
los mecanismos de acceso, de forma 
transparente para los usuarios.
Preparado por: Miguel Cotaña 71
transparente para los usuarios.
� Los datos son localizados en diferentes 
maquinas.
� Datos son compartidos por los usuarios
DISEDISEÑÑO DE BDDO DE BDD
� Las dos decisiones principales que se deben 
realizar en el diseño de BDD son: Dividir 
las bases en partes y saber donde almacenar 
Preparado por: Miguel Cotaña 72
las bases en partes y saber donde almacenar 
cada una.
� Los terminos para estas actividades son:
- Fragmentación
- Asignación
FRAGMENTACIONFRAGMENTACION
� HORIZONTAL: particiona una relación en 
sus tuplas. Asi cada fragmento tiene un 
subconjunto de las tuplas de la relacion.
Preparado por: Miguel Cotaña 73
subconjunto de las tuplas de la relacion.
� VERTICAL: produce fragmentos R1,R2…., 
cada cual contiene un subconjunto de 
atributos de R tambien como la llave 
primaria de R.
APLICACIONESAPLICACIONES
� Fabricas, especialmente empresas con 
multiples plantas industriales
� Sistemas de apoyo a decisiones corporativos
Preparado por: Miguel Cotaña 74
� Sistemas de apoyo a decisiones corporativos
� Empresas aéreas.
� Cadenas de hoteles
� Cualquier institución que tenga una estruc-
tura de organización descentralizada
VENTAJASVENTAJAS
� Gestión transparente de la localización de 
datos.
� Aumento de confiabilidad y disponibilidad 
a traves de transacciones distribuidas.
Preparado por: Miguel Cotaña 75
Aumento de confiabilidad y disponibilidad 
a traves de transacciones distribuidas.
� Expansion mas facil y simple
� Economica: es mejor invertir en un 
conjunto de maquinas de pequeño porte que 
en una única maquina de gran capacidad.
DESVENTAJASDESVENTAJAS
� Poca experiencia de profesionales
� Complejidad del sistema
� Seguridad
Preparado por: Miguel Cotaña 76
� Seguridad
�Consistencia de la BD.
1.6 NORMALIZACION1.6 NORMALIZACION
Preparado por: Miguel Cotaña 77
1.6 NORMALIZACION1.6 NORMALIZACION
DEPENDENCIADEPENDENCIA
� Dependencia funcional: Sea el esquema 
R(A,DF), y sean X, Y dos subconjuntos de A, a 
los que llamamos descriptores. Se dice que Y 
“DF” de X o que X implica o determina a Y, y se 
Preparado por: Miguel Cotaña 78
“DF” de X o que X implica o determina a Y, y se 
denota como X � Y si, y solo si, a cada valor x
del atributo X, le corresponde un unico valor y del 
atributo Y.
Ej: Codigo de estudiante determina el nombre 
del mismo
DEPENDENCIADEPENDENCIA
� Dependencia funcional completa: Se dice 
que Y tiene dependencia funcional completa 
o plena de X, si depende funcionalmente de 
Preparado por: Miguel Cotaña 79
o plena de X, si depende funcionalmente de 
X, pero no depende de ningun subconjunto 
de este. Se representa por X => Y, por tanto 
X=>Y Sii no existe un X’ subconjunto X |
X’ �Y
DEPENDENCIADEPENDENCIA
� Dependencia funcional trivial: Una dependencia 
funcional X � Y se dice que es trivial si Y es un 
subconjunto propio de X.
� Dependencia funcional elemental: Decimos que 
Preparado por: Miguel Cotaña 80
� Dependencia funcional elemental: Decimos que 
una dependencia funcional X � Y es elemental si Y 
es un atributo unico no incluido en X, y no existe X’ 
incluido en X tal que X’ � Y, es decir, la DFE es 
una DFC, no trivial y en la que el implicado es un 
atributo unico.
DEPENDENCIADEPENDENCIA
� Dependencia funcional transitiva: Dado el 
esquema de relacion R(X,Y,Z) en las que 
existen las siguientes DF:
X � Y Y � Z
Preparado por: Miguel Cotaña 81
X � Y Y � Z
Se dice que Z tiene una dependencia transitiva 
respecto a X a traves de Y, lo que se 
representa por:
X - -> Z
CLAVESCLAVES
� Clave candidata: Una clave cadidata de una 
relacion es un conjunto no vacio de atributos 
que identifican univocamente y minimamente 
Preparado por: Miguel Cotaña 82
cada tupla de una relacion.
En toda relacion siempre hay, al menos, una 
clave candidata, ya que el conjunto de 
atributos que constituye la relacion gozara de 
la propiedad de unicidad.
CLAVESCLAVES
Una relacion puede tener mas de una clave 
candidata:
� Clave primaria: Los atributos que forman 
parte de la clave primaria no pueden tomar 
Preparado por: Miguel Cotaña 83
parte de la clave primaria no pueden tomar 
valores nulos.
� Clave alternativa: Son aquellas claves 
candidatas que no han sido elegidas como 
claves primarias de la relacion.
CLAVESCLAVES
� Clave ajena: Una clave ajena (externa o 
foranea) de una relacion R2 es un conjunto no 
vacio de atributos cuyos valores han de 
Preparado por: Miguel Cotaña 84
coincidir con los valores de la clave primaria 
de una relacion R1. Se dice que R2 es la 
relacion que “referencia”, mientras que R1 es 
la relacion “referenciada”.
FORMAS NORMALESFORMAS NORMALES
� Cuando se disena una BD mediante el MR, 
al igual que ocurre con otros modelos, 
obtenemos diferentes esquemas relacionales 
Preparado por: Miguel Cotaña 85
obtenemos diferentes esquemas relacionales 
y no todos ellos son equivalentes, ya que 
unos van a representar la realidad mejor que 
otros.
� Con la teoria de la normalizacion, se 
consigue una formalizacion en el diseno 
logico de BDR.
1ra. FORMA NORMAL1ra. FORMA NORMAL
Para que una tabla pueda ser considerada una 
relacion no debe admitir grupos repetitivos, 
esto es, debe estar en primera forma normal
Preparado por: Miguel Cotaña 86
esto es, debe estar en primera forma normal
Se dice que una relacion esta en 1FN cuando 
cada atributo solo toma un valor del dominio 
simple subyacente.
2da. FORMA NORMAL2da. FORMA NORMAL
Esta basada en el concepto de dependencia 
plena y en las interrelaciones existentes entre 
los atributos principales de una relacion.
Preparado por: Miguel Cotaña 87
los atributos principales de una relacion.
Se dice que una relacion esta en 2FN si: Esta en 
1FN y cada atributo no principal tiene DFC 
respecto de cada una de las claves.
3ra. FORMA NORMAL3ra. FORMA NORMAL
Esta basada en el concepto de DFT
Un esquema de relacion R esta en 3FN Sii.
Esta en 2FN y no existe ningun atributo no 
Preparado por: Miguel Cotaña 88
Esta en 2FN y no existe ningun atributo no 
principal que dependa transitivamente de 
alguna clave R
FORMA NORMAL BoyceFORMA NORMAL Boyce--CoddCodd
Para ciertos problemas fueron insuficientes las 
tres primeras formas normales, en relaciones 
que presentaban varias claves candidatas 
Preparado por: Miguel Cotaña 89
que presentaban varias claves candidatas 
compuestas que se solapaban.
Se dice que una relacion se encuentra en FNBC 
si, y solo si, todo determinante es una clave 
candidata.
SQL SQL 
(Structured Query Languaje)(Structured Query Languaje)
� La mayoria de los SGBD relacionales 
proveen un lenguaje de alto nivel, en el que 
el usuario solo especifica lo que desea como 
resultado, dejando las decisiones de como 
Preparado por: Miguel Cotaña 90
resultado, dejando las decisiones de como 
ejecutar la consulta para el sistema.
� El SQL es lenguaje standard de BD.
� Incorpora el algebra relacionaly el calculo 
relacional
OPERACIONES OPERACIONES 
FUNDAMENTALESFUNDAMENTALES
� Seleccion (σ): σ p(R) R’
p – predicado de la seleccion
(condicion a ser satisfecha)
Preparado por: Miguel Cotaña 91
(condicion a ser satisfecha)
� Proyeccion (π): π LA(R) R’
LA – Lista de atributos deseados
� Producto cartesiano (x): R1xR2 R’
…..operaciones fund..…..operaciones fund..
� Union (U):R1 U R2
a) R1 y R2 necesitan ser del mismo orden. 
Igual numero de atributos
Preparado por: Miguel Cotaña 92
Igual numero de atributos
b) El dominio del i-esimo atributo en R1 es 
igual al i-esimo atributo en R2
� Diferencia (-): R1 – R2 R’
mismas observaciones de la union