Вы находитесь на странице: 1из 132

BASES DE DATOS

Francisco Barajas Martnez


Diseo de Bases de Datos
Relacionales
Introduccin Antecedentes
Modelado de Datos
Modelo Entidad Relacin
Modelo Relacional
Diseo de Bases de Datos Relacionales
Traduccin de un Modelo Entidad Relacin al Modelo
Relacional
Modelado con UML
Arquitecturas y Sistemas Relacionales
SQL
Desarrollo de una APLICACION

Diseo de Bases de Datos
Relacionales
Introduccin Antecedentes
Modelado de Datos
Modelo Entidad Relacin
Diseo de Bases de Datos Relacionales
Traduccin de un Modelo Entidad Relacin
al Modelo Relacional
SQL
Desarrollo de una APLICACION

BASE DE DATOS ???
Qu es un DATO ???

Datos son hechos conocidos que pueden registrarse y que
tienen un significado implcito.

Ramez Elmasri y Shamkant B. Navathe
Ejemplo:
Pueden constituir datos los nombres, nmeros telefnicos y
direcciones de personas que conocemos.
3256789
Elena Snchez
alma@ueh.edu.mx
Sarand 100
Jos Martnez
18 de Julio 1980
Problemas con los datos
Todas las empresas requieren almacenar informacin. Desde
siempre lo han hecho. La informacin puede ser de todo tipo.
Cada elemento informativo (nombre, direccin, sueldo, etc.) es
lo que se conoce como dato (en ingls data).
Las soluciones utilizadas por las empresas para almacenar los
datos son diversas.
Antes de la aparicin de la informtica se almacenaban en
archivos con cajones y carpetas y fichas. Tras la aparicin de
la informtica estos datos se almacenan en archivos digitales
dentro de las unidades de almacenamiento de la computadora
(a veces en archivos binarios, o en hojas de clculo, o
procesadores de palabras...).
Problemas con los datos
En los inicios de la era informtica, cada programa almacenaba
y utilizaba sus propios datos de forma un tanto catica.

La ventaja de este sistema (la nica), es que los procesos
eran independientes por lo que la modificacin de uno no
afectaba al resto. Pero tiene grandes inconvenientes:
Costo de almacenamiento elevado histricos
Datos redundantes (se repiten continuamente)
Probabilidad alta de inconsistencia en los datos
Difcil modificacin en los datos y facilidad de problemas de
inconsistencia al realizar esas modificaciones (ya que es difcil
que esa modificacin afecte a todos los datos)
Problemas con los datos
Lgicamente la solucin a este problema es hacer que todas
las aplicaciones utilicen los mismos datos. Esto provoca
que los datos deban estar mucho ms protegidos y
controlados. Adems los datos forman una estructura fsica y
funcional que es lo que se conoce como base de datos.

De esta forma una base de datos es una serie de datos
relacionados que forman una estructura lgica, es decir
una estructura reconocible desde un programa informtico.

Esa estructura no slo contiene los datos en s, sino la forma
en la que se relacionan. Las bases de datos empiezan a
aparecer en los aos 60 y triunfan en los aos setenta y
ochenta.
Estructura de una Base de Datos
Las bases de datos estn compuestas (como ya se
ha comentado), de datos y de metadatos.

Los metadatos son datos (valga la redundancia)
que sirven para especificar la estructura de la base
de datos; por ejemplo qu tipo de datos se
almacenan (si son texto o nmeros o fechas ...), qu
nombre se le da a cada dato (nombre, apellidos,...),
cmo estn agrupados, cmo se relacionan, etc....
Estructura de una Base de Datos
Estructura lgica.
Indica la composicin y distribucin terica de la base de datos. La
estructura lgica sirve para que las aplicaciones puedan utilizar los
elementos de la base de datos sin saber realmente cmo se estn
almacenando.
Es una estructura que permite idealizar a la base de datos. Sus
elementos son objetos, entidades, nodos, relaciones, enlaces,... que
realmente no tienen presencia real en la fsica del sistema. Por ello
para acceder a los datos tiene que haber una posibilidad de traducir la
estructura lgica en la estructura fsica.

Estructura fsica.
Es la estructura de los datos tan cual se almacenan en las unidades
de disco. La correspondencia entre la estructura lgica y la fsica se
almacena en la base de datos (en los metadatos).
Definicin YA ????
Base de Datos o BD
Coleccin de todos los datos operativos de una Empresa de
acuerdo a un modelo especfico que son accesibles desde
cualquier lugar fsico y nivel de la empresa (Estratgico, Tctico,
Operativo)

Una BD debe cumplir con las caractersticas de:

Unicidad Consistencia
Seguridad Privaca
Disponibilidad Integridad
El campo de las BD
Eficiencia
Acceso y modificacin de grandes volmenes de datos
Adaptabilidad
Supervivencia de datos bajo errores, reduciendo inconsistencias
Control del acceso
Simultaneidad de uso mltiple dentro de una congruencia con
control de concurrencia y seguridad
Persistencia
Existencia y mantenimiento de datos por largos perodos de tiempo,
independientemente del modo de acceso
Comparacin entre
Archivos y Base de Datos
Dependencia de ligas externas a los
datos

Datos sin compartir en toda la empresa

Redundancia de los datos

Archivos no relacionados entre s

Acceso limitado y con poca flexibilidad,
eficiencia y seguridad
Independencia a ligas externas a los
datos

Datos compartidos y compatibles en la
empresa
Redundancia mnima y controlada

Datos relacionados de acuerdo a un
modelo
Flexibilidad, Integridad, Eficiencia y
seguridad

DEFINICIN DE BASE DE DATOS (1)

Base de Datos es un conjunto de
datos relacionados entre s y que
tienen un significado implcito.
Ramez Elmasri y Shamkant B. Navathe
La definicin presentada anteriormente hace referencia a dos elementos
para que un conjunto de datos constituya una Base de Datos:
1) Relaciones entre datos, tema que se trata ms adelante.
2) Significado implcito de los datos que se atribuye dependiendo del
contexto en que se utilizan los mismos.
Por ejemplo, el dato fecha en una base de datos de ventas puede referirse a
la fecha de emisin de las facturas, mientras que si la base de datos es de
msica quizs corresponda a la fecha en que se grab un tema musical.
Archivos tradicionales y Bases de Datos
En un sistema de informacin se cuenta con dos enfoques
principales para definir el almacenamiento de los datos:
1. Archivos tradicionales. Consiste en almacenar los datos
en archivos individuales, exclusivos para cada aplicacin
particular. En este sistema los datos pueden ser
redundantes (repetidos innecesariamente) y la
actualizacin de los archivos es ms lenta que en una base
de datos.
2. Base de datos. Es un almacenamiento de datos
formalmente definido, controlado centralmente para
intentar servir a mltiples y diferentes aplicaciones. La
base de datos es una fuente significativa de datos que son
compartidos por numerosos usuarios para diversas
aplicaciones.
Kendall y Kendall
Facturas
......
900
1250
Precio
.......
Pintura
Azulejos
Producto
........ ....... .....
Misiones
1456
Fernando
Martnez
1226
Rincn
1224
Joaqun Garca 1225
Dom. Nombre Num
Ejemplo Archivos Tradicionales
........ ......... ......... ....... ....
Fmar@gmail.com 9157878 Rincn 876 Fernando
Martnez
1226
jgarcia@adinet.co
m.uy

4182569 Guan
1202
Juan Garca 1225
E-mail Telefono Direccin Nombre Num
Clientes
Se cuenta con dos archivos Clientes y Facturas. El primer archivo
tiene los datos bsicos de los clientes, mientras que en el segundo
se almacenan las ventas realizadas. Al emitir cada factura se
ingresan nuevamente los datos num, nombre, domicilio.
Desventajas:
-Se duplican esfuerzos
-Se presentan
redundancias de
datos (datos repetidos
innecesaramente)
-Se pueden producir
contradicciones entre
los datos, si por
ejemplo se ingresan
nombres diferentes para
un mismo cliente.
DEFINICIN DE BASE DE DATOS (2)
.

Una base de datos tiene
una fuente de la cual se
derivan los datos, cierto
grado de interaccin con los
acontecimientos del mundo
real y un pblico que est
activamente interesado en el
contenido de la base de
datos.

Ramez Elmasri y Shamkant B. Navathe

Definicin Wiki ????
Una base de datos o banco de datos (en ocasiones
abreviada con la sigla BD o con la abreviatura b. d.)
es un conjunto de datos pertenecientes a un
mismo contexto y almacenados sistemticamente
para su posterior uso. En este sentido, una
biblioteca puede considerarse una base de datos
compuesta en su mayora por documentos y textos
impresos en papel e indexados para su consulta. En
la actualidad, y debido al desarrollo tecnolgico de
campos como la informtica y la electrnica, la
mayora de las bases de datos estn en formato
digital (electrnico), que ofrece un amplio rango de
soluciones al problema de almacenar datos.
Tipos de Base de Datos
Segn la Variabilidad de los Datos Almacenados

Estticas
Dinmicas
Bases de Datos Estticas
son bases de datos de slo lectura,
utilizadas primordialmente para almacenar
datos histricos que posteriormente se
pueden utilizar para estudiar el
comportamiento de un conjunto de datos a
travs del tiempo, realizar proyecciones y
tomar decisiones.
Ejemplos

Bases de Datos Dinmicas
stas son bases de datos donde la
informacin almacenada se modifica con el
tiempo, permitiendo operaciones como
actualizacin, borrado y adicin de datos,
adems de las operaciones fundamentales
de consulta. Un ejemplo de esto puede ser la
base de datos utilizada en un sistema de
informacin de una tienda de abarrotes, una
farmacia, un videoclub.
Ejemplos

Tipos de Base de Datos
Segn el Contenido de los Datos Almacenados

Bases de datos Bibliogrficas
Bases de datos de Texto Completo
Bases de datos Directorios
Bases de datos bibliotecas

Bases de Datos Bibliogrficas
Solo contienen un subrogante (representante) de la fuente
primaria, que permite localizarla.
Un registro tpico de una base de datos bibliogrfica contiene
informacin sobre el autor, fecha de publicacin, editorial,
ttulo, edicin, de una determinada publicacin, etc.
Puede contener un resumen o extracto de la publicacin
original, pero nunca el texto completo, porque si no, estaramos
en presencia de una base de datos a texto completo (o de
fuentes primarias).
Como su nombre lo indica, el contenido son cifras o nmeros.
Por ejemplo, una coleccin de resultados de anlisis de
laboratorio, entre otras.
Modelos de Bases de Datos
Adems de la clasificacin por la funcin de las bases
de datos, stas tambin se pueden clasificar de
acuerdo a su modelo de administracin de datos.
Un modelo de datos es bsicamente una "descripcin"
de algo conocido como contenedor de datos (algo en
donde se guarda la informacin), as como de los
mtodos para almacenar y recuperar informacin de
esos contenedores. Los modelos de datos no son
cosas fsicas: son abstracciones que permiten la
implementacin de un sistema eficiente de base de
datos; por lo general se refieren a algoritmos, y
conceptos matemticos.
Modelo Jerrquico
stas son bases de datos que, como su nombre indica,
almacenan su informacin en una estructura jerrquica. En
este modelo los datos se organizan en una forma similar a un
rbol (visto al revs), en donde un nodo padre de informacin
puede tener varios hijos. El nodo que no tiene padres es
llamado raz, y a los nodos que no tienen hijos se los conoce
como hojas.
Las bases de datos jerrquicas son especialmente tiles en el
caso de aplicaciones que manejan un gran volumen de
informacin y datos muy compartidos permitiendo crear
estructuras estables y de gran rendimiento.
Una de las principales limitaciones de este modelo es su
incapacidad de representar eficientemente la redundancia de
datos.
Modelo Jerrquico
La informacin se organiza con un jerarqua en la
que la relacin entre las entidades de este modelo
siempre es del tipo padre / hijo. De esta forma hay
una serie de nodos que contendrn atributos y que
se relacionarn con nodos hijos de forma que puede
haber ms de un hijo para el mismo padre (pero un
hijo slo tiene un padre).
Las entidades de este modelo se llaman segmentos
y los atributos campos. La forma visual de este
modelo es de rbol invertido, en la parte superior
estn los padres y en la inferior los hijos.
Modelo Jerrquico
DEPARTAMENTO
DOCUMENTOS PERSONAL
TAREAS
Modelo de Red
ste es un modelo ligeramente distinto del
jerrquico; su diferencia fundamental es la
modificacin del concepto de nodo: se permite que
un mismo nodo tenga varios padres (posibilidad no
permitida en el modelo jerrquico).
Fue una gran mejora con respecto al modelo
jerrquico, ya que ofreca una solucin eficiente al
problema de redundancia de datos; pero, aun as, la
dificultad que significa administrar la informacin en
una base de datos de red ha significado que sea un
modelo utilizado en su mayora por programadores
ms que por usuarios finales.
Modelo de Red
El modelo se utiliz durante mucho tiempo. Organiza la
informacin en registros y enlaces. Los registros
representan las entidades del modelo entidad / relacin. En
los registros se almacenan los datos utilizando atributos.
Los enlaces permiten relacionar los registros de la base de
datos.
El modelo en red ms aceptado es el llamado codasyl, que
durante mucho tiempo se ha convertido en un estndar.
Las bases de datos en red son parecidas a las jerrquicas
slo que en ellas puede haber ms de un padre. En este
modelo se pueden representar perfectamente relaciones
varios a varios. Pero su dificultad de manejo y complejidad
hace que se estn abandonando completamente.
Modelo Transaccionales
Son bases de datos cuyo nico fin es el envo y
recepcin de datos a grandes velocidades, estas
bases son muy poco comunes y estn dirigidas por
lo general al entorno de anlisis de calidad, datos de
produccin e industrial, es importante entender que
su fin nico es recolectar y recuperar los datos a la
mayor velocidad posible, por lo tanto la redundancia
y duplicacin de informacin no es un problema
como con las dems bases de datos, por lo general
para poderlas aprovechar al mximo permiten algn
tipo de conectividad a bases de datos relacionales.
Modelo Relacional
ste es el modelo utilizado en la actualidad para modelar
problemas reales y administrar datos dinmicamente. Su idea
fundamental es el uso de "relaciones". Esto es pensando en
cada relacin como si fuese una tabla que est compuesta por
registros (las filas de una tabla), que representaran las tuplas,
y campos (las columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los
datos no tienen relevancia (a diferencia de otros modelos como
el jerrquico y el de red). Esto tiene la considerable ventaja de
que es ms fcil de entender y de utilizar para un usuario
espordico de la base de datos. La informacin puede ser
recuperada o almacenada mediante "consultas" que ofrecen
una amplia flexibilidad y poder para administrar la informacin.
Modelo Multidimencional
Son bases de datos ideadas para desarrollar
aplicaciones muy concretas, como creacin de
Cubos OLAP. Bsicamente no se diferencian
demasiado de las bases de datos relacionales (una
tabla en una base de datos relacional podra serlo
tambin en una base de datos multidimensional), la
diferencia est ms bien a nivel conceptual; en las
bases de datos multidimensionales los campos o
atributos de una tabla pueden ser de dos tipos, o
bien representan dimensiones de la tabla, o bien
representan mtricas que se desean estudiar.
Modelo OO
Este modelo es propio de los modelos informticos orientados a
objetos, trata de almacenar en la base de datos los objetos completos
(estado y comportamiento).
Una base de datos orientada a objetos es una base de datos que
incorpora todos los conceptos importantes del paradigma de objetos:
Encapsulacin - Propiedad que permite ocultar la informacin al resto de
los objetos, impidiendo as accesos incorrectos o conflictos.
Herencia - Propiedad a travs de la cual los objetos heredan
comportamiento dentro de una jerarqua de clases.
Polimorfismo - Propiedad de una operacin mediante la cual puede ser
aplicada a distintos tipos de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir
operaciones sobre los datos como parte de la definicin de la base de
datos. Una operacin (llamada funcin) se especifica en dos partes.
La interfaz (o signatura) de una operacin incluye el nombre de la
operacin y los tipos de datos de sus argumentos (o parmetros).
Diversos Modelos de una BD
En realidad han existido diversos modelos para
modelar la realidad, aqu presentamos algunos de ellos

Modelo Jerrquico Primer modelo de BD, IMS es la mas popular
Modelo de Redes Definido por C. Bachman, IDMS fue el producto comercial
Modelo Relacional Funcional Diseo de Codd popularizado por Date
(RDB, Oracle, Sybase, Informix )
Modelo Entidad - Relacin Concepcin de Chen, muy usado aplicable a
diversos modelos ( j,r,rel)
Modelo Semntico Inicialmente de R. Quillian usado solo en investigacin
Modelo Binario Instrumentado por Stonebraker basado en el modelo de Codd
(Ingres)
Modelo Orientado a Objetos Popular al representar la tendencia actual
(Ilustra, O2 )
Modelo Mutlirelacional Extensin al relacional con inversin total
Cuando se requiere una BD ?
Ciclo de Vida de Desarrollo de Sistemas

Fuente: Kendall y Kendall
En la etapa 4)
Diseo se
definen los
detalles a fin de
cumplir con los
requerimientos
identificados en
la etapa 3)
Anlisis.
Niveles de Instrumentacin
Niveles de Instrumentacin
Niveles de Instrumentacin
Niveles de Instrumentacin
Qu es una Base de Datos???

Conceptos Bsicos
Byte 01001010 Letra J
Bit 0 1
Campo Juan Snchez (campo NOMBRE)
Registro
NOMBRE CURSO FECHA NOTA
Juan Snchez IS 101 Nov04 15
Archivo
Archivo de cursos
NOMBRE CURSO FECHA NOTA
Juan Snchez I2 101 Nov04 15
Carla Tovar I2 101 Nov 04 18
Base de Datos
Finanzas Cursos
Expedientes Personales
Conceptos Bsicos
Archivo
Archivo de Pedidos
Pedido Fecha Prov Total Bs
1401 04/11 0051 5.689
1404 05/11 0064 9.468
1405 06/11 0051 6.562
Campo clave: el archivo se
ordena por un campo
seleccionado cuyos elementos
son irrepetibles.
Campos calculados:
Surgen de la
combinacin de otros
campos, el usuario no
escribe su contenido.
B.D. Relacionales
Para entender lo que son y significan las bases
de datos relacionales, veamos el siguiente
ejemplo:
Queremos registrar los datos de una venta:
Fecha Producto Proveedor
Cantidad
Precio
Unit
Precio Total
05/11 Azucar Central 1200 500 600000
05/11 Leche Parmalar 100 5600 560000
06/11 Margarina Comprolat 600 800 480000
05/11 Melaza Central 600 600 360000
06/11 Arroz Marty 700 800 560000
B.D. Relacionales
Con las BD relacionales, se ingresan solo los
datos mnimos indispensables
05-11-04
Central Proveedor
Fecha Factura 1401
Azcar 1200 500 600000
Melaza 600 600 360000
Producto Cant. P.Unitario P.Total
B.D. Relacionales
Con las BD relacionales, se ingresan solo los
datos mnimos indispensables
Proveedores
Central
Comprolat
Parmalar
Marty
Lef
Productos
Nombre PU Exist
Arroz 800 12324
Azcar 500 840
Leche 5600 917
Margarina 800 1854
Melaza 600 744
Salsa 400 1465
Pedidos
Cod Fecha Proveed .
1401 05/11/04 Central
1402 05/11/04 Trx
1403 06/11/04 Comprolat
1404 06/11/04 Marty
Detalle de Pedidos
Num Prod Cant PU Ptotal .
1401 Azcar 1200 500 600000
1401 Melaza 600 600 360000
Modelado de Datos
Modelar datos es una Pasarela ?
Es el proceso de analizar los aspectos de inters
para una organizacin y la relacin que tienen unos
con otros.
Resulta en el descubrimiento y documentacin de
los recursos de datos del negocio.
El modelado hace la pregunta " Qu ? " en lugar de "
Cmo ? ", esta ltima orientada al procesamiento de
los datos.
Es una tarea difcil, bastante difcil, pero es una
actividad necesaria cuya habilidad solo se adquiere
con la experiencia.

Modelado: Metas y Beneficios
Registrar los requerimientos de datos de un proceso
de negocio.
Dicho proceso puede ser demasiado complejo y se
tendr que crear un "enterprise data model", el cual
deber estar constituido de lneas individuales.
Permite observar:
Patrones de datos
Usos potenciales de los datos

Modelado: Tipos
Bsicamente son 3:
Conceptual: muy general y abstracto, visin
general del negocio/institucin.
Lgico: versin completa que incluye todos
los detalles acerca de los datos.
Fsico: esquema que se implementar en un
manejador de bases de datos (DBMS).
Modelando hay que..
No pensar fsicamente, si no
pensar conceptualmente
No pensar en procesos, pensar en
estructura
No pensar en navegacin, pensar
en trminos de relaciones

Modelando Graficando
Generalmente todo modelo tiene una
representacin grfica, para el caso de datos el
modelo mas popular es el modelo entidad-
relacin o diagrama E/R.
Se denomina as debido a que precisamente
permite representar relaciones entre entidades
(objetivo del modelado de datos).
La figura siguiente muestra distintos ejemplos
de notaciones, todas son muy similares.
Ejemplo de Notaciones
Modelando
Lo importante es que, se use la Notacin
que se use, toda la organizacin debe
conocer y usar la misma, para que haya un
estndar de uso en la organizacin.
El Modelo debe estar compuesto de..
Entidades: todo lo que existe y es capaz de ser
descrito (sustantivo).
Atributos: es una caracterstica (adjetivo) de
una entidad que puede hacer 1 de tres cosas:
Identificar Relacionar y/o Describir
Relaciones: la conexin que existe entre 2
entidades (verbo).
Cardinalidad: nmero de ocurrencias que
pueden existir entre un par de entidades.

El Modelo debe estar compuesto de..
Llave primaria: la seleccionada para identificar
a los elementos nicos de un conjunto de
entidades.
Super llave: conjunto de uno o ms atributos
que "juntos" identifican de manera nica a una
entidad
Llave candidata: es una sper llave mnima
Restricciones: enunciado de restricciones.



Resumen del Modelado de
Datos
Los modelos se utilizan en todo tipo de
ciencias.
Su finalidad es la de simbolizar una parte del
mundo real de forma que sea ms fcilmente
manipulable.
En definitiva es un esquema mental
(conceptual) en el que se intentan reproducir
las caractersticas de una realidad especfica.
Resumen del Modelado de
Datos
En el caso de los modelos de datos, lo que
intentan reproducir es una informacin real que
deseamos almacenar en un sistema
informtico.
Se denomina esquema a una descripcin
especfica en trminos de un modelo de
datos.
El conjunto de datos representados por el
esquema forma la base de datos.
Clasificacin de Modelado de Datos

Actores del Modelado de Datos
Mundo real.
Contiene la informacin tal cual la percibimos como
seres humanos. Es el punto de partida

Esquema conceptual.
Representa el modelo de datos de forma
independiente del DBMS que se utilizar.

Esquema cannico (o de base de datos).
Representa los datos en un formato ms cercano a
la computadora.
Actores del Modelado de Datos
Esquema interno.
Representa los datos segn el modelo concreto de
un sistema gestor de bases de datos (por ejemplo:
Oracle, MySql,)

Base de datos fsica.
Los datos tal cual son almacenados en disco.
Recoleccin y Anlisis de
requerimientos
Un Buen Diseo de Base de Datos
Reflejar la estructura del problema en el mundo real.
Ser capaz de representar todos los datos esperados,
incluso con el paso del tiempo.
Evitar el almacenamiento de informacin redundante.
Proporcionar un acceso eficaz a los datos.
Mantener la integridad de los datos a lo largo del
tiempo.
Ser claro, coherente y de fcil comprensin.

Ejercicios.

Modelo Entidad Relacin
Definicin
Modelo de datos entidad-relacin est basado en
una percepcin del mundo real que consta de un
conjunto de objetos bsicos llamados entidades y de
relaciones entre estos objetos.
Conjuntos de entidades
Conjuntos de relaciones
Conjuntos de atributos
Conjunto de entidades
Definicin de entidad
Una entidad es una cosa u objeto en el mundo real
que es distinguible de todos los dems

Definicin de conjunto de entidades
Es la totalidad de las entidades del mismo tipo que
comparten las mismas propiedades o atributos
fsica o real (una persona, un libro, un empleado)
abstracta o conceptual (una asignatura, un viaje)

Persona, lugar, cosa, concepto o suceso, real o abstracto,
de inters para la empresa (ANSI, 1977)

Conjunto de atributos
Definicin
Los atributos describen propiedades que
posee cada miembro de un conjunto de
entidades.
Se clasifican en:

Simples y compuestos
Univalorados y multivalorados
Nulos
Derivado
Clasificacin de atributos
Atributos compuestos
Pueden dividirse en otros con significado propio


Valor compuesto = concatenacin de valores de
componentes

Atributos simples
No divisibles. Atmicos
fechanacim
dia mes ao
direccion
calle ciudad provincia codpostal
genero
Clasificacin de atributos
Atributos monovalorados (monovaluados)
slo un valor para cada entidad
fechanacim [de un EMPLEADO particular]
aoestreno [de una PELICULA concreta]

Atributos multivalorados (multivaluados)
ms de un valor para la misma entidad
nacionalidad [ PELICULA coproducida por varios pases ]
telefono [ EMPLEADO con varios telfonos de contacto]
Pueden tener lmites superior e inferior
del n de valores por entidad
nacionalidad (1-2)
telefono (0-3)
Clasificacin de atributos
El nulo (null value) es usado cuando...

Se desconoce el valor de un atributo para cierta entidad
El valor existe pero falta
altura [de un EMPLEADO]
No se sabe si el valor existe o no
numtelfono [de un EMPLEADO]

La entidad no tiene ningn valor aplicable para el atributo:
fechaalquiler [PELICULA slo en vdeo-venta (no alquiler)]
Clasificacin de atributos
Atributos derivados
Valor calculado a partir de otra informacin ya
existente (atributos, entidades relacionadas)
Son informacin redundante...
edad [de EMPLEADO], clculo a partir de fechanacim
atributo derivado del valor de otro atributo
numcopias [de una PELICULA], cuenta del n de
entidades copia relacionadas con cada pelcula concreta
atributo derivado de entidades relacionadas

Atributos almacenados
nacionalidad [de una PELICULA]
fechanacim [de un EMPLEADO]
Relaciones
Relacin: Una relacin es una asociacin entre
diferentes entidades.
Conjunto de relaciones: un conjunto de relaciones
del mismo tipo.
Es una relacin matemtica de
N> 2
E1, E2, E3
En
Relaciones
Tambin interrelacin
Asociacin, vnculo o correspondencia
entre instancias de entidades relacionadas de
alguna manera en el mundo real
el director Julio Mdem ha rodado la pelcula
Tierra
el empleado 87654321 trabaja en el local de
videoclub principal
la pelcula El imperio contraataca es una
continuacin de la pelcula La guerra de las
galaxias
Relaciones
Estructura genrica o abstraccin del conjunto
de relaciones existentes entre dos o ms tipos
de entidad
un DIRECTOR ha rodado PELICULAs

DIRECTOR PELICULA
HA_RODADO
Relaciones
ACTOR PELICULA
ACTUA_EN
CLIENTE PELICULA
LOCAL_VIDEOCLUB
ALQUILA
Nmero de tipos de entidad que participan
en el tipo de relacin
Binaria: grado 2 (el ms frecuente)
Ternaria: grado 3
Reflexiva (o recursiva): grado 1
PELICULA CONTINUACION
DE
Relaciones
Todo tipo de entidad que participa en un tipo de
relacin juega un papel especfico en la relacin


Es en los tipos de relacin reflexivos donde se deben
usar los roles
original
versin
PELICULA
VERSION_DE
DIRECTOR
PELICULA
HA_RODADO
realizador film
Relaciones
Limitan las posibles combinaciones de
entidades que pueden participar en las
relaciones
Extradas de la situacin real que se modela
Una pelcula debe haber sido dirigida por uno y
slo un director
Un director ha dirigido al menos una pelcula y
puede haber dirigido muchas
Clases de restricciones estructurales:
Razn de cardinalidad (o tipo de correspondencia)
Razn de participacin
Ligaduras de correspondencia
Correspondencia de cardinalidades: expresa el nmero
de entidades a las que otra entidad puede estar
asociada va un conjunto de relaciones.
Uno-uno 1-1 Varios-uno n-1
Uno-varios 1-n Varios-varios n-n


ACTOR
PELICULA
personaje
film
M
ACTUA_EN
N
EMPLEADO
LOCAL_VIDEOCLUB
encargado
sucursal
1
trabajador
lugar trabajo
1
TRABAJA_EN SUPERVISA
N
1
Ligaduras de correspondencia
Dependencia de existencia: si la existencia de la entidad x
depende de la existencia de la entidad y, entonces se dice que
x tiene dependencia de y.
Si y se borra tambin se borrara x
La entidad y es la entidad dominante
La entidad x es la entidad subordinada


Clases de participacin:
Participacin total (dependencia en existencia)
Participacin parcial
DIRECTOR
PELICULA
HA_ RODADO
1
N
PELICULA
personaje
film
M
ACTUA_EN
N
ACTOR
Atributos en relacin
salario de un actor por participar en cierta pelcula
tipo de papel que interpreta un actor en una pelcula
(prota, secundario, reparto,...)

Ojo: una relacin puede tener atributos, pero nunca una clave.
PELICULA
(0,m)
ACTUA_EN
(1,n)
ACTOR
salario
papel
M:N
Ligaduras de correspondencia
Tipo de entidades
Dbil: es aquella que no tiene llave primaria.
Fuerte: es aquella que tiene llave primaria
Entidad Dbil
No tiene atributos clave propios
Una instancia se identifica por su relacin con una instancia de otro
tipo de entidad
Tipo de relacin identificador
Relaciona un tipo de entidad dbil y un tipo de entidad regular (fuerte,
dominante, padre, propietaria)
Clave parcial (o discriminante)
Atributos de la entidad dbil, que identifican de forma nica cada instancia,
siempre que est relacionada con una instancia del tipo de entidad regular
Clave = (clave_entidad_regular,clave_parcial)
PELICULA
numcopia


titulo
1
N
COPIA
TIENE
Una entidad dbil siempre tiene una
restriccin de participacin total en la
relacin que la une a su entidad propietaria

Llaves claves
Superllave: Uno o ms atributos que nos permite
identificar una entidad en especfico dentro de un
conjunto de entidades y ninguna otra entidad la
tiene.
Toda relacin tiene por lo
menos una superllave
llamada llave primaria.
Llaves claves
Llave candidata: Son aquellos atributos que tienen
caractersticas para ser super llaves, pero hay dos o
mas en una entidad; una se tomar como llave
primaria y otra como llave secundaria.
El atributo que es la llave primaria en una entidad se
subraya.
Modelo E-R extendido
Caractersticas
Especializacin.
Generalizacin.
Herencia de atributos
Ligas de diseo
Agregacin.

Modelo E-R Extendido
Especializacin: Un conjunto de entidades que pueden incluir subgrupos de
entidades que se diferencian de alguna forma de las otra entidades del
conjunto.
Proceso de definicin de un conjunto de subtipos de un tipo de entidad (
supertipo)
Subtipos suelen estar definidos segn caracterstica distintiva de las
entidades del supertipo
Discriminante de la especializacin

Otro ejemplo
Un ANIMAL es un FELINO
Un REPTIL es un tipo de ANIMAL
Un insecto es un tipo de ANIMAL

VEHCULO
tipo motorS/N
VEHCULO_SIN_MOTOR VEHCULO_A_MOTOR MOTOCICLETA CAMIN TURISMO
Modelo E-R Extendido
Generalizacin: Conjunto de entidades en niveles de subgrupos de entidades,
representado un proceso de diseo descendente (top down), tambin puede
ser en forma ascendente (bottom up)
Proceso inverso de la especializacin
Suprimir diferencias entre varios tipos de entidad: identificar atributos y
relaciones comunes, y formar un supertipo que los incluya

numBastidor
precio
numEjes
TURISMO
fechaFab
numBastidor
precio
numEjes tonelaje
numPuer
fechaFab
numBastidor
precio
fechaFab
CAMIN
TURISMO
CAMIN
numPuer tonelaje
VEHCULO
G
Agrupacin de instancias dentro de un tipo de entidad, que
debe representarse explcitamente debido a su importancia
para el diseo o aplicacin
Subtipos del tipo de entidad VEHCULO:
CAMIN
TURISMO
AUTOBS
CICLOMOTOR
Subtipos del tipo de entidad EMPLEADO:
SECRETARIO
GERENTE
COMERCIAL

El tipo de entidad que se especializa en otros se llama supertipo
( VEHICULO, EMPLEADO )
Modelo E-R extendido
Generalizacin
nfasis en las similitudes
Cada instancia del supertipo es tambin una instancia de
alguno de los subtipos

Especializacin
nfasis en las diferencias
Alguna instancia del supertipo puede no ser instancia de
ningn subtipo
Modelo E-R extendido
Herencia de atributos: Los atributos de los conjuntos de entidades de niveles
mas altos se dicen que son heredados por los conjuntos de entidades del nivel
mas bajo.
Un subtipo puede tener atributos propios (especficos) y participar en relaciones
por separado
Un subtipo hereda todos los atributos del supertipo, y toda relacin en la que
participa el supertipo
Un subtipo, con sus atributos y relaciones especficos, ms los atributos y relaciones
que hereda del supertipo, es un tipo de entidad por derecho propio
VEHCULO
CAMIN
FABRICANTE
SIDECAR
FABRICA

LLEVA
numBastidor
precio
numEjes
tonelaje numPuer
numPlazas
cilindrada
ID
(1,1) (1,n)
(1,1) (0,1)
TURISMO
N:1
1:1
MOTOCICLETA
Modelo E-R extendido
Modelo E-R Extendido
Ligaduras de diseo: Son usadas en la generalizacin, en el diagrama
Entidad Relacin que determina que entidades pueden ser miembros del
conjunto de entidades del nivel mas bajo.
Dos (o ms) tipos de relacin son exclusivos,
respecto de un tipo de entidad que participa en ambos, si cada instancia del tipo de
entidad slo puede participar en uno de los tipos de relacin
CONSUME y GASTA son exclusivas respecto del tipo de entidad VEHICULO
GASOLINA
GASTA CONSUME
GASOIL
VEHCULO
Otro ejemplo sera el de un ARTCULO que pudiera publicarse en un
PERIDICO o en una REVISTA, pero nunca en ambos.

Modelo E-R Extendido
Agregacin: Una limitacin del modelo E-R que no es posible expresar
entre relaciones
Restriccin inherente del MER:
No puede expresar relaciones
entre varias relaciones, ni
entre un tipo de relacin y un tipo de entidad

La agregacin...
Permite combinar varios tipos de entidad, relacionados
mediante un tipo de relacin, para formar un tipo de entidad
agregada de nivel superior
til cuando el tipo de entidad agregado debe relacionarse con
otros tipos de entidad

Esquema en el MERE que almacena informacin sobre las entrevistas que
una ETT organiza entre solicitantes de empleo y diferentes empresas
Algunas entrevistas dan lugar a ofertas de empleos y otras no
nombre
SOLICITANTE
nomContacto
telefContacto fecha
nif
nombre
ENTREVISTA_A
EMPRESA
direccin
(1,m)
M
N
(1,n)
telef
EMPRESA SOLICITANTE
ENTREVISTA
ENTREVISTA_A
OFERTA_EMPLEO
RESULTA_EN
EMPRESA SOLICITANTE
OFERTA_EMPLEO
ENTREVISTA_A
EMPRESA SOLICITANTE
RESULTA_EN
OFERTA_EMPLEO
ENTREVISTA_A
98
Antes
Empleados
Clientes
Inventario
Ventas Cuentas
SGBD
Empleados
Clientes
Ventas
Inventario
Cuentas
Dpto. Personal
Dpto. Ventas
Dpto. Contabilidad
BASE DE DATOS
Ahora
Personal
Ventas
Contabilidad
Definicin
Una base de datos es un conjunto
estructurado de datos coherentes
Coleccin disponible de
informacin
Definicin
Una base de datos es un conjunto
estructurado de datos coherentes
Coleccin organizada en
subconjuntos, en funcin de
ligas y de relaciones entre las
diferentes informaciones
(estructura lgica)
Definicin
Una base de datos es un conjunto
estructurado de datos coherentes
No hay contradiccin entre los
datos ligados, no hay prdida de
informacin, aun sabiendo que
hay una utilizacin compartida
de los datos entre varios
usuarios

Definicin
Un Sistema de Gestin de Bases de Datos
(SGBD) es un software que permite
manipular las bases de datos
Construir
Utilizar
Mantener
Reorganizar
Sistema de Gestin de Bases de
Datos
Propiedades fundamentales

Independencia de los datos (OJO es muy importante)
Acceso eficiente a los datos
Integridad y seguridad de los datos
Administracin de los datos
Acceso concurrente y recuperacin en caso de crash

Los SGBD deben cumplir con las propiedades ACID para las
transacciones:
Atomicity (Atomicidad: las transacciones son atmicas)
Consistency (Consistencia: una transaccin transforma
un estado consistente de la BD en otro)
Isolation (Aislamiento: las transacciones estn aisladas
entre si)
Durability (Durabilidad: despus que una transaccin ha
sido confirmada ella persiste)
Usuario final: El que interacta con la base de
datos, por lo general a travs de aplicaciones e
interfaces
Usuario especialista: El que disea y programa
aplicaciones para usuarios finales.
DBA (Database Administrator): El que
administra la base de datos.

Qu hace?
Algunas definiciones
Bases de datos I
105
Funciones y componentes principales de un
SGBD
DDL: lenguaje de definicin de datos
DML: lenguaje de manipulacin de datos
Procesador
DDL
Procesador
DML
Procesador
Lenguaje
Consulta
Esquemas
externos
Datos
y
Metadatos
Base de datos
Peticiones
DML planeadas
Peticiones
compiladas
Peticiones
optimizadas
Optimizador
Peticiones
DML No planeadas
Esquemas y
transformaciones
Manejador de transacciones
Manejador de almacenamiento
Componentes funcionales de un
SGBD
Metadatos o Diccionario de Datos (D.D): Contiene el
esquema de la B.D, los usuarios, los permisos de acceso,
etc. Son datos sobre los datos. Almacena la informacin
que permite la traduccin entre los 3 niveles de la
Arquitectura ANSI/SPARC*
Optimizador de consultas: Define el plan de ejecucin de
operaciones solicitadas por los usuarios, de tal manera que
se lleven a cabo de la manera ms eficiente posible
Manejador de transacciones: Controla el acceso y la
concurrencia de operaciones

*Se ver mas adelante en el curso
Componentes funcionales de un
SGBD
Manejador de almacenamiento tiene dos
componentes:
-Manejador de archivos recupera desde
disco los bloques que contienen la informacin
solicitada por una transaccin.
-Manejador de buffer mantiene en memoria
principal la informacin ms usada y decide
cuando llevar a disco alguno de sus bloques.
SGBD - Funciones
Soporta DML: Lenguaje para actualizacin,
almacenamiento y recuperacin de datos
Ofrece optimizacin en la bsqueda de la
informacin
Soporta DDL : Lenguaje para definir los datos
Metadatos (DD): Catlogo autodescriptivo,
informacin sobre los objetos existentes en el
sistema Datos sobre los datos
Ventajas de un SGBD
1. Reutilizacin de datos y programas
2. Control de redundancia
3. Estandarizacin En qu sentido?
4. Consistencia (No hay redundancia)
5. Es posible equilibrar las cargas de los
requerimientos (establecer prioridades)
Ventajas de un SGBD
6. Integridad (Se cumplen las reglas establecidas
Por quin?)
7. Seguridad
8. Rapidez de desarrollo
9. Mantenimiento y reingeniera: cambios en la
estructura de datos sin cambiar los programas
que los usan (hasta cierto punto)
Desventajas de un SGBD
1. Tamao
2. Susceptibilidad a fallas (Discutible)
3. Complejidad en la recuperacin a fallas
(Discutible)
4. Puede llegar a trabajar en forma lenta
debido a la cantidad de verificaciones que
debe hacer
Niveles de abstraccin
(ANSI/SPARC)
Nivel interno
gestin de acceso
Nivel conceptual
integridad-coherencia
Nivel externo
confidencialidad
Esquema fsico
Esquema lgico, resultado de
un proceso de modelamiento
Vista usuario 1
Vista usuario 2
Vista usuario n
n esquemas
externos
Nivel de Visin
Externo
El ms cercano a los usuarios finales
Percepcin de la base de datos por parte de
los usuarios finales
Tantas visiones como tipos de usuarios
Cada visin de usuario final se puede
caracterizar como un subesquema
Nivel de Visin
Cada visin puede proporcionar diferentes
representaciones de los mismos datos

Visin Vendedor
Fechas con formato:
(dd-mm-yy)
Visin Contador
Fechas con formato:
(yyyy-dd-mm)
BD
Nivel de Visin
Algunas visiones de usuario pueden incluir:
Datos Agrupados: Totales por Dpto.
Datos Derivados:
Sueldo total = bsico + comisin
Datos Calculados:
Edad de una persona (inferida a partir de su
fecha de Nacimiento)
Nivel de Visin
Los conceptos de dato derivado y calculado
podran usarse indistintamente para
significar, en general, que un dato se genera
a partir de otro(s)
Pueden haber a su vez datos agregados
derivados, datos agregados calculados etc.
Nivel Conceptual
Mediador entre los otros 2 niveles
Interesante para el usuario especialista
Se ocupa de los datos almacenados en la base
de datos fsica y las relaciones entre ellos
Descripcin semntica de los datos que
conforman la base de datos
Soporta a cada visin de usuario externa
Nivel Conceptual
Es una visin completa de todos los requerimientos y
elementos de inters para la organizacin
Debe incluir restricciones sobre los datos
La descripcin del nivel conceptual no debe tener
detalles dependientes del almacenamiento*
Tiene asociado un lenguaje de alto nivel

* Sin embargo en algunos SGBD esto no se logra expresar de esta
manera

Nivel Fsico
Interno
Ms cercano a la mquina
Interesa al Administrador y al usuario
Especialista
Esquema fsico: Descripcin y tipos de datos:
tamao y precisin, tipos de ndices y de
estructuras de almacenamiento concretas que
se manejan, de acuerdo con un SGBD
particular
Nivel Fsico
Describe cmo los datos son almacenados en
trminos de estructuras de datos particulares
Se encarga de:
- Reservar espacio para datos e ndices
- Compresin de datos
- Tcnicas de encriptamiento de datos

Independencia de los datos
Es uno de los objetivos de la arquitectura
ANSI/SPARC
Permite modificar la definicin de un nivel sin afectar
(en lo posible) el nivel inmediatamente superior
Sin independencia de datos se requerira mucho
esfuerzo para cambiar las aplicaciones de tal forma
que se adaptasen a la nueva estructura de la base de
datos.
Hay dos tipos: fsica y lgica
Independencia de los datos
Fsica: inmunidad que tienen los usuarios y
las aplicaciones ante los cambios en la
forma de almacenar fsicamente los datos.

Conceptual o lgica: inmunidad que poseen
los usuarios y las aplicaciones ante los
cambios en la estructura lgica de la base de
datos
Independencia Fsica
Se presenta entre el nivel conceptual y el nivel fsico
Un cambio en el esquema fsico (usar otras
estructuras de almacenamiento) no conduce a
cambios en el esquema conceptual
Ej. Cambio en la forma de almacenar un ndice: B+
por Hashing, con qu propsito se hace un cambio
de este tipo?
Inmunidad del esquema conceptual ante cambios
del esquema fsico
Independencia Lgica
Se presenta entre el nivel de visin y el nivel
conceptual
Significa que un cambio en el nivel
conceptual no debe conllevar a un cambio
en el nivel de visin
Es ms difcil de lograr. Por qu?

Independencia Lgica
Algunos de los posibles cambios en el nivel
conceptual:
Adicin de nuevos elementos (atributos,
entidades etc.)
Eliminacin de elementos Puede afectar a
subesquemas externos
Tendencias de los SGBD
Sistemas para el soporte para toma de decisiones (Data
Warehouse) y/o con capacidades deductivas y bases de
datos temporales
Manejar informacin multimedial: Imgenes, audio,
videos
Bases de datos orientadas a objetos y objeto-
relacionales
Manejar informacin georeferenciada: Sistemas de
Informacin Geogrficos (SIG)
Manejo de informacin documental: Motores de
bsqueda, sistemas para el manejo de documentos.
Bases de datos nativas para XML

La descripcin completa de una base de datos se
denomina esquema
Cada visin de usuario tiene su esquema
(subesquema), existe un esquema conceptual y uno
interno
Existen correspondencias (mappings)
- Entre cada subesquema externo y el conceptual
- Entre el esquema conceptual y el interno
Estas correspondencias le permiten al SGBD por
ejemplo saber un registro conceptual con qu
registro(s) del nivel fsico se corresponde
RESUMEN
En teora debera existir un lenguaje de
descripcin para cada nivel*
En la prctica sin embargo en muchos SGBD
el esquema conceptual queda fusionado con
la especificacin del esquema interno.

* No siempre sucede as en los SGBD actuales
RESUMEN
Usos de una Base de Datos
Entorno de operacin
EXTRANET / INTRANET: El entorno actual
Interaccin actual entre el WWW y la BD

Вам также может понравиться