Sunteți pe pagina 1din 47

1.1. BASE DE DATOS.

DEFINICIN
Un conjunto, coleccin o depsito de datos almacenados en un soporte
informtico no voltil. Los datos estn interrelacionados y estructurados de
acuerdo con un modelo capaz de de recoger el mximo contenido semntico .
Una base de datos es un sistema de archivos electrnico que se organizan por
campos, registros y archivos. (Howe, 1983)
Un campo es una pieza nica de informacin; un registro es un sistema
completo de campos; y un archivo es una coleccin de registros.
Por ejemplo, una gua de telfono es anloga a un archivo. Contiene una lista
de registros, cada uno de los cuales consiste en tres campos: nombre,
direccin, y nmero de telfono.

1.2 OBJETIVOS DE UNA BASE DE DATOS.


1. Independencia lgica y fsica de los datos.
Se refiere a la capacidad de modificar una definicin de esquema en un nivel
de la arquitectura sin que esta modificacin afecte al nivel inmediatamente
superior.
El conjunto de datos contenidos en la base debe ser nica y estar integrada por
los mismos datos.
2. Redundancia mnima.
Debe ser controlada, de forma que no exista duplicidad innecesaria, y que las
redundancias fsicas, convenientes muchas veces a fin de responder a
objetivos de eficiencia, sean tratadas por el mismo sistema, de modo que no
puedan producirse inconsistencias.
Se trata de usar la base de datos como repositorio comn de datos para
distintas aplicaciones.
Un dato se actualizar lgicamente por el usuario en forma nica, y el sistema
se preocupar de cambiar fsicamente todos aquellos campos en los que el
dato estuviese repetido en caso de existir redundancia fsica (redundancia
controlada).
3. Acceso concurrente por parte de mltiples usuarios
Las bases de datos pretenden servir al conjunto de la organizacin, manejando
los datos como otro recurso. Por lo tanto, las bases de datos han de atender a
mltiples usuarios y a diferentes aplicaciones. En contraposicin a los sistemas
de ficheros, en donde cada fichero atiende a determinada aplicacin.
4. Distribucin espacial de los datos.
Los datos pueden encontrarse en otra habitacin, otro edificio e incluso otro
pas, el usuario no tiene por qu preocuparse de la localizacin espacial de los
datos a los que accede.
5. Integridad de los datos.
Se refiere a las medidas de seguridad que impiden que se introduzcan datos
errneos.
Esto puede suceder tanto por motivos fsicos (defectos de hardware,
actualizacin incompleta debido a causas externas), como de operacin
(introduccin de datos incoherentes).
6. Consultas complejas optimizadas.
Permite la rpida y ejecucin de las mismas.
7. Seguridad de acceso y auditora.
Se refiere al derecho de acceso a los datos contenidos en la base por parte de
personas y organismos.
El sistema de auditora mantiene el control de acceso a la base, con el objeto
de saber qu o quin realiz una determinada modificacin y en qu momento.
Por ejemplo, un profesor quiere cambiar una calificacin por alguna omisin, el
sistema de la base le permitir hacer el cambio, pero quedara el registro del
da y el motivo del cambio, esto lo checan los jefes de academia y observan si
el profesor le ayuda al alumno o realizan su trabajo adecuadamente.
8. Respaldo y recuperacin.
Se refiere a la capacidad de un sistema de base de datos de recuperar su
estado en un momento previo a la prdida de datos.
9. Acceso a travs de lenguajes de programacin estndar.
Se refiere a la posibilidad ya mencionada de acceder a los datos de una base
mediante lenguajes de programacin ajenos al sistema de base de datos. en
pocas palabras son los programas o software con los que se mandarn llamar y
disear los datos que aparecern en la pantalla.
1.3 Usos y Aplicaciones del BD
Actualmente las bases de datos se utilizan en todas las organizaciones tanto
pblicas como privadas algunos ejemplos son:
Banca: informacin de clientes, cuentas, transacciones, prstamos, etc.
Lneas areas: informacin de clientes, horarios, vuelos, destinos, etc.
Universidades: informacin de estudiantes, carreras, horarios, materias, etc.
Transacciones de tarjeta de crdito: para comprar con tarjetas de crdito y la
generacin de los extractos mensuales.
Telecomunicaciones: para guardar registros de llamadas realizadas, generar
facturas mensuales, mantener el saldo de las tarjetas, telefnicas de prepago y
almacenar informacin sobre las redes.
1.4 ARQUITECTURA DE LA BASE DE DATOS.
Podemos destacar tres niveles principales segn la visin y la funcin que
realice el usuario sobre la base de datos basados en la arquitectura que son:
1.- La separacin entre los programas de aplicacin y los datos.
Los programas de aplicacin son los que nos permiten visualizar los datos de la
base mediante un cdigo predefinido en tanto que los datos se encuentran
almacenados en la base de datos.
2.- El manejo de mltiples vistas por parte de los usuarios.
El usuario puede estar trabajando con diferentes aplicaciones a la vez.
3.- El uso de un catlogo para almacenar el esquema de la base de datos.
la base de datos se divide en distintas tablas donde cada tabla tiene un
objetivo especfico.
1.4.1 NIVELES DE ABSTRACCIN DE UNA BASE DE DATOS

En esta arquitectura, el esquema de una base de datos se define en tres


niveles de abstraccin distintos:
1.- En el nivel interno.
Este esquema se especifica mediante un modelo fsico y describe todos los
detalles para el almacenamiento de la base de datos, as como los mtodos de
acceso.
Es el nivel ms cercano al almacenamiento fsico de los datos. Permite
escribirlos tal y como estn almacenados en el ordenador. En este nivel se
disean los archivos que contienen la informacin, la ubicacin de los mismos y
su organizacin, es decir se crean los archivos de configuracin.
2.- En el nivel conceptual.
Este esquema oculta los detalles de las estructuras de almacenamiento y se
concentra en describir entidades, atributos, relaciones, operaciones de los
usuarios y restricciones.
En este nivel se representan los datos que se van a utilizar sin tener en cuenta
aspectos como lo que representamos en el nivel interno.
3.- En el nivel externo.
Se describen varios esquemas externos o vistas de usuario. Cada esquema
externo describe la parte de la base de datos que interesa a un grupo de
usuarios determinados y ocultos a ese grupo el resto de la base de datos.
Es el ms cercano al usuario. En este nivel se describen los datos o parte de los
datos que ms interesan a los usuarios.
Una base de datos especfica tiene un nico nivel interno y un nico nivel
conceptual, pero puede
Tener varios niveles externos.

1.4.1.2 INDEPENDENCIA LGICA Y FISICA DE LOS DATOS.


Lo podemos definir como la capacidad para modificar el esquema en un nivel
del sistema sin tener que modificar el esquema del nivel inmediato superior.
Se pueden definir dos tipos de independencia de datos:
1.- Independencia lgica.
Es la capacidad de modificar el esquema conceptual sin tener que alterar los
esquemas externos ni los programas de aplicacin.
Se puede modificar el esquema conceptual para ampliar la base de datos o
para reducirla.
Por ejemplo, el aadir cuentas de mercado de valores en un sistema bancario.
Son ms difciles de lograr que las independencias fsicas, ya que los
programas de aplicacin son fuertemente dependientes de la estructura lgica
de los datos a los que acceden.
2.- Independencia Fsica.
Es la capacidad de modificar el esquema interno sin tener que alterar el
esquema conceptual (o los externos).
se refiere slo a la separacin entre las aplicaciones y las estructuras fsicas de
almacenamiento.
Por ejemplo, puede ser necesario reorganizar ciertos ficheros fsicos con el fin
de mejorar el rendimiento de las operaciones de consulta o de actualizacin de
datos.

1.5 ESTRUCTURA GENERAL DE UN SISTEMA DE BASE DE DATOS


Un sistema de base de datos se encuentra dividido en mdulos cada uno de los
cuales controla una parte de la responsabilidad total de sistema. En la mayora
de los casos, el sistema operativo proporciona nicamente los servicios ms
bsicos y el sistema de la base de datos debe partir de esa base y controlar
adems el manejo correcto de los datos. As el diseo de un sistema de base
de datos debe incluir la interfaz entre el sistema de base de datos y el sistema
operativo.
Los componentes funcionales de un sistema de base de datos, son:
Gestor de archivos.
Gestiona la asignacin de espacio en la memoria del disco y de las estructuras
de datos usadas para representar informacin.
Manejador de base de datos.
Sirve de interfaz entre los datos y los programas de aplicacin.
Procesador de consultas.
Traduce las proposiciones en lenguajes de consulta a instrucciones de bajo
nivel. Adems, convierte la solicitud del usuario en una forma ms eficiente.
Compilador de DDL.
Convierte las proposiciones DDL en un conjunto de tablas que contienen
metadatos, estas se almacenan en el diccionario de datos.
Archivo de datos.
En l se encuentran almacenados fsicamente los datos de una organizacin.
Diccionario de datos.
Contiene la informacin referente a la estructura de la base de datos.
ndices.
Permiten un rpido acceso a registros que contienen valores especficos.
Una forma grfica de representar los componentes antes mencionados y la
relacin que existe entre ellos sera la siguiente.
1.5.1 EL GESTOR DE BASE DE DATOS.
Un sistema de gestin de bases de datos: Es un conjunto de programas que
proporciona el interfaz entre los datos de bajo nivel almacenados en la base de
datos y los programas de aplicacin y consultas hechas al sistema.
Por tanto, el SGBD es un sistema de software de propsito general que facilita
el proceso de definir, construir y manipular bases de datos para diversas
aplicaciones.
las funciones principales de un gestor de base de datos son:
1.- Crear y organizar la Base de datos.
Guardar los datos en algn medio controlado por el mismo SGBD, asi como especificar
tipos, estructuras y restricciones de datos.
2.- Establecer y mantener las trayectorias de acceso a la base de datos de tal
forma que los datos puedan ser accesados rpidamente.
Realizar consultas, actualizarla, generar informes.
3.-Manejar los datos de acuerdo a las peticiones de los usuarios.
4.- Registrar el uso de las bases de datos.
5.- Interaccin con el manejador de archivos.
Esto a travs de las sentencias en DML al comando del sistema de archivos. As
el Manejador de base de datos es el responsable del verdadero
almacenamiento de los datos.
6.- Respaldo y recuperacin.
Consiste en contar con mecanismos implantados que permitan la recuperacin
fcilmente de los datos en caso de ocurrir fallas en el sistema de base de
datos.
7.- Control de concurrencia.
Consiste en controlar la interaccin entre los usuarios concurrentes para no
afectar la inconsistencia de los datos.
8.- Seguridad e integridad.
Consiste en contar con mecanismos que permitan el control de la consistencia
de los datos evitando que estos se vean perjudicados por cambios no
autorizados o previstos.
El DBMS es conocido tambin como Gestor de Base de datos.

La figura muestra el DBMS como interface entre la base de datos fsica y las
peticiones del usuario. El DBMS interpreta las peticiones de entrada/salida del
usuario y las manda al sistema operativo para la transferencia de datos entre
la unidad de memoria secundaria y la memoria principal.
En s, un sistema manejador de base de datos es el corazn de la base de
datos ya que se encarga del control total de los posibles aspectos que la
puedan afectar.
1.5.2 USUARIOS DE LA BASE DE DATOS.
Se consideran 5 clases generales de usuarios:
1.- Programador de aplicaciones.
Estos programas de aplicacin operan con los datos de todas las maneras
usuales: recuperan informacin, crean informacin nueva, suprimen o cambian
informacin existente, etc.
Los profesionales en computacin que interactan con el sistema por medio de
llamadas en DML (Lenguaje de Manipulacin de Datos), las cuales estn
incorporadas en un programa escrito en un lenguaje de programacin (Por
ejemplo, COBOL, PL/I, Pascal, C, etc.)
2.-Usuario final.
Accesa a la base de datos desde una terminal, puede emplear un lenguaje de
consulta proporcionado como parte integral del sistema o recurrir a un
programa de aplicacin escrito por un usuario programador que acepte
rdenes desde la terminal y a su vez formule solicitudes al DBMS.
3.- Administrador de bases de datos o DBA.
Es la persona (o grupo de personas) encargadas del control general del sistema
de bases de datos.
4.- Usuarios sofisticados.
Los usuarios sofisticados interactan con el sistema sin escribir programas. En
cambio, escriben sus preguntas en un lenguaje de consultas de base de datos.
5.- Usuarios especializados.
Algunos usuarios sofisticados escriben aplicaciones de base de datos
especializadas que no encajan en el marco tradicional de procesamiento de
datos.
1.5.3 EL ADMINISTRADOR DE LA BASE DE DATOS
El administrador de base de datos (DBA) es la persona responsable de los
aspectos ambientales de una base de datos.
En general esto incluye:
1.- Recuperabilidad.
La recuperabilidad significa que, si se da algn error en los datos, hay un bug
de programa de hardware, el DBA (Administrador de base de datos) puede
traer de vuelta la base de datos al tiempo y estado en que se encontraba.
Las actividades de recuperacin incluyen el hacer respaldos de la base de
datos y almacenar esos respaldos de manera que se minimice el riesgo de
dao o prdida de los mismos.
2.-Integridad.
La integridad de una base de datos significa que, la base de datos o los
programas que generaron su contenido, incorporen mtodos que aseguren que
el contenido de los datos del sistema no se rompa, as como las reglas del
negocio.
3.-Seguridad.
Seguridad significa la capacidad de los usuarios para acceder y cambiar los
datos de acuerdo a las polticas del negocio, as como, las decisiones de los
encargados.
4.- Disponibilidad.
Que los datos estn accesibles.
5.- Desempeo.
Asegurarse del mximo desempeo incluso con las limitaciones
6.- Desarrollo y soporte a pruebas.
Las actividades de soporte incluyen la colecta de datos de produccin para
llevar a cabo pruebas con ellos; consultar a los programadores respecto al
desempeo; y hacer cambios a los diseos de tablas de manera que se puedan
proporcionar nuevos tipos de almacenamientos para las funciones de los
programas.
1.5.4 EL SISTEMAS DE COMUNICACION ENTRE LOS
DISTINTOS COMPONENTES
Un sistema de base de datos est compuesto por:
I. Base de Datos.
a) Datos de usuario.
Son los que introduce o necesita el usuario.
b) Metadatos.
Conjunto de datos que representan a un dato.
c) ndices.
Es la forma de acceder rpidamente a la base de datos. Sin olvidar que es el
campo que controla todos los caracteres o datos.
d) Metadatos de aplicacin.
Se usan para almacenar la estructura y el formato de formas, reportes,
consultas de usuarios, y otros componentes de aplicacin. Normalmente no se
accede de forma directa a los metadatos de aplicacin, sino que se hace a
travs de herramientas proporcionadas por el DBMS para tal fin.
II. Aplicaciones de Base de Datos.
a) Formas.
Se utilizan para que el DBMS identifique cada fila de cada tabla y se denominan
claves sustitutas.
b) Consultas.
Se usan cuando los usuarios desean consultar los datos para contestar
preguntas o para identificar problemas o situaciones particulares.
c) Reportes.
Es una presentacin que tiene un formato de la informacin de una base de
datos (hoja de papel o virtual).
d) Mens.
Se usan para organizar los distintos componentes de la aplicacin con el
propsito de que el usuario final acceda a ellos con facilidad, mostrndole las
opciones disponibles y ayudndole a seleccionar las acciones que desea
realizar.
e) Programas de aplicacin.
Vienen a ser como el pegamento que nos permite unir el resto de los
componentes de manera coherente y permite realizar procesos y clculos a la
aplicacin. en pocas palabras es el software que nos permiten llamar los datos
de la base de datos.
1.6 ARQUITECTURA CLIENTE SERVIDOR.
La arquitectura cliente/servidor es un modelo para el desarrollo de sistemas de
informacin, en el que las transacciones se dividen en procesos independientes
que cooperan entre s para intercambiar informacin, servicios o recursos.
Se denomina cliente al proceso que inicia el dilogo o solicita los recursos y
servidor, al proceso que responde a las solicitudes. Es el modelo de interaccin
ms comn entre aplicaciones en una red.
Por otro lado, los clientes suelen ser estaciones de trabajo que solicitan varios
servicios al servidor. Ambas partes deben estar conectadas entre s mediante
una red.
Beneficios.
1.- Mejor aprovechamiento de la potencia de cmputo (Reparte el trabajo).
2. -Reduce el trfico en la Red. (Viajan requerimientos).
3.- Opera bajo sistemas abiertos.
4.- Permite el uso de interfaces grficas variadas y verstiles.
Este tipo de arquitectura es la ms utilizada en la actualidad, debido a que es
la ms avanzada y la que mejor ha evolucionado en estos ltimos aos.
Podemos decir que esta arquitectura necesita tres tipos de software para su
correcto funcionamiento:
Software de gestin de datos: Este software se encarga de la manipulacin y
gestin de los datos almacenados y requeridos por las diferentes aplicaciones.
Normalmente este software se aloja en el servidor.
Software de desarrollo: este tipo de software se aloja en los clientes y solo en
aquellos que se dedique al desarrollo de aplicaciones.
Software de interaccin con los usuarios: Tambin reside en los clientes y es la
aplicacin grfica de usuario para la manipulacin de datos, siempre claro a
nivel usuario (consultas principalmente).
Los Clientes interactan con el usuario, usualmente en forma grfica.
Frecuentemente se comunican con procesos auxiliares que se encargan de
establecer conexin con el servidor, enviar el pedido, recibir la respuesta,
manejar las fallas y realizar actividades de sincronizacin y de seguridad.
caractersticas:
El Cliente oculta al Servidor y la Red.
Detecta e intercepta peticiones de otras aplicaciones y puede
redireccionarlas.
Dedicado a la cesin del usuario (IniciaTermina).
El mtodo ms comn por el que se solicitan los servicios es a travs de RPC
(Remote Procedure Calls).
funciones comunes del cliente:
Mantener y procesar todo el dialogo con el usuario.
Manejo de pantallas.
Mens e interpretacin de comandos.
Entrada de datos y validacin.
Procesamiento de ayudas.
Recuperacin de errores.
Generacin de consultas e informes sobre las bases de datos.
el servidor:
Conjunto de Hardware y Software que responde a los requerimientos de un
cliente. Los Servidores proporcionan un servicio al cliente y devuelven los
resultados.
Normalmente el servidor es una mquina bastante potente que acta de
depsito de datos y funciona como un sistema gestor de base de datos (SGBD).
tipos comunes de servidor:
Servidor de Archivos (FTP, Novell).
Servidor de Bases de Datos (SQL, CBASE, ORACLE, INFORMIX).
Servidor de Comunicaciones
Servidor de Impresin.
Servidor de Terminal.
Servidor de Aplicaciones (Windows NT, Novell).
Funciones comunes del servidor:
Acceso, almacenamiento y organizacin de datos.
Actualizacin de datos almacenados.
Administracin de recursos compartidos.
Ejecucin de toda la lgica para procesar una transaccin.
Procesamiento comn de elementos del servidor (Datos, capacidad de CPU,
almacenamiento en disco, capacidad de impresin, manejo de memoria y
comunicacin).
Gestin de perifricos compartidos.
Control de accesos concurrentes a bases de datos compartidas.
Enlaces de comunicaciones con otras redes de rea local o extensa

1.7 COMPONENTES DE UN GESTOR DE LA BASE DE DATOS.


El SGBD es una aplicacin que permite a los usuarios definir, crear y mantener
la BD y proporciona un acceso controlado a la misma.
Debe proporcionar los siguientes servicios.
1.- Creacin y definicin de la base de datos.
2.- Manipulacin de los datos.
3.- Acceso controlado a los datos mediante mecanismos de seguridad
4.- Mantener integridad y consistencia de los datos.
5.- Acceso compartido a la base de datos.
6.- Mecanismos de copias de respaldo y recuperacin
COMPONENTES DE UN GESTOR DE BASE DE DATOS.
1.-Lenguajes
1.1.- Lenguaje de definicin de datos (DDL).
1.2.- Lenguaje de manipulacin de datos (DML)
2.- Diccionario de datos: lugar donde se deposita informacin sobre todos los
objetos que forman la base de datos (estructura lgica y fsica de los datos,
definiciones de todos los objetos de la base de datos).
3.- Usuarios de los SGBD.
3.1.- Usuarios de la categora DBA (administradores).
3.2.- Usuarios de tipo RESOURCE, que pueden crear sus propios objetos y tener
acceso a los objetos sobre los que se les ha concedido permisos.
3.3.- Usuarios de tipo CONNECT, que solamente pueden utilizar los objetos a
los que se les ha concedido permiso.
4.- Todos los SGBD proporcionan una serie de herramientas de administracin.
5.- Permite a los administradores la gestin de la BD y gestin de usuarios y
permisos, entre otros.
estos temas ya han sido abordados con anterioridad por lo que no se describir
cada accin que realizan.
1.7.1 ESTRUCTURA GENERAL DE UN GESTOR DE BASE DE DATOS.
DEFINICIN.
Consiste en una coleccin de datos interrelacionados y un conjunto de
programas para acceder a esos datos. El Objetivo primordial de un SGBD es
proporcionar un entorno que sea a la vez conveniente y eficiente para ser
utilizado al extraer y almacenar informacin de la base de datos (KORTH,
1995).
ESTRUCTURA GENERAL DE UN SISTEMA DE GESTIN DE BASE DE DATOS.
Un Sistema de Gestin de Base de Datos se divide en mdulos que tratan cada
una de las responsabilidades del sistema general. Los componentes
funcionales de un SGBD (KORTH, 1995) incluyen:
1.- Procesador de Consultas. Traduce sentencias en un lenguaje de consultas a
instrucciones de bajo nivel que entiende el gestor de la base de datos.
2.- Gestor de la Base de Datos. Proporciona la interface entre los datos de bajo
nivel almacenados en la base de datos y los programas de aplicacin y las
consultas que se hacen en el sistema.
3.- Gestor de Archivos. Gestiona la asignacin de espacio en la memoria del
disco y de las estructuras de datos usadas para representar la informacin
almacenada en disco.
4.- Pre compilador del Lenguaje de Manipulacin de Datos DML. Convierte las
sentencias en DML incorporadas en un programa de aplicacin en llamadas
normales a procedimientos en el lenguaje principal.
5.- Compilador del Lenguaje de Definicin de Datos DDL. Convierte sentencias
en DDL en un conjunto de tablas metadatos o datos sobre datos.
6.- Gestor del Diccionario de Datos. Almacena metadatos sobre la estructura de
la base de datos.
7.- Control de autorizacin. Este mdulo comprueba que el usuario tiene los
permisos necesarios para llevar a cabo la operacin que solicita.
8.- Procesador de comandos. Una vez que el sistema ha comprobado los
permisos del usuario, se pasa el control al procesador de comandos.
9.- Control de la integridad. Cuando una operacin cambia los datos de la base
de datos, este mdulo debe comprobar que la operacin a realizar satisface
todas las restricciones de integridad necesarias.
10.- Optimizador de consultas. Este mdulo determina la estrategia ptima
para la ejecucin de las consultas.
11.- Gestor de transacciones. Este mdulo realiza el procesamiento de las
transacciones.
12.- Planificador (scheduler). Este mdulo es el responsable de asegurar que
las operaciones que se realizan concurrentemente sobre la base de datos
tienen lugar sin conflictos.
13.- Gestor de recuperacin. Este mdulo garantiza que la base de datos
permanece en un estado consistente en caso de que se produzca algn fallo.
14.- Gestor de buffers. Este mdulo es el responsable de transferir los datos
entre memoria principal y los dispositivos de almacenamiento secundario. A
este mdulo tambin se le denomina gestor de datos.
1.7.2 FUNCIONES DE UN GESTOR DE BASE DE DATOS.
Un S.G.B.D. debe incluir al menos las siguientes funciones.
Definicin de los Datos. El SGBD debe ser capaz de aceptar las definiciones de
datos en versin fuente y convertirlas en la versin objeto. El SGBD debe incluir
componentes procesadores para cada uno de los lenguajes de definicin de
datos (LDD). (DATE, 1993).
Manipulacin de los Datos. El SGBD debe atender las solicitudes de los usuarios
para extraer, actualizar, adicionar o suprimir datos. El SGBD debe incluir un
componente procesador del Lenguaje de manipulacin de datos (LMD).
Seguridad e Integridad de los Datos. El SGBD debe supervisar las solicitudes de
los usuarios y rechazar los intentos de violar las medidas de seguridad e
integridad definidas por el Administrador de la Base de Datos DBA. (DATE,
1993).
Recuperacin y concurrencia de los datos. El principal objetivo de la
implantacin de una base de datos es poner a disposicin de un gran nmero
de usuarios en conjunto integrado de datos, estos datos podrn ser
manipulados por los diferentes usuarios y es ahora cuando se debe garantizar
la coherencia de los datos despus de las diversas manipulaciones.
Estos temas ya se han analizado con anterioridad por consiguiente no se
describirn.

2.1 DEFINICIN DE UN MODELO DE DATOS.


Un modelo de datos es un sistema formal y abstracto que permite describir los
datos de acuerdo con reglas y convenios predefinidos o podramos decir que es
un conjunto de concepto que permiten describir, a distintos niveles de
abstraccin, la estructura de una base de datos.
Segn Codd.
Un modelo de datos es una combinacin de tres componentes:
1.Una coleccin de estructuras de datos (los bloques constructores de
cualquier base de datos que conforman el modelo). En pocas palabras es crear
la base de datos.
2.Una coleccin de operadores o reglas de inferencia, los cuales pueden ser
aplicados a cualquier instancia de los tipos de datos listados en (1), para
consultar o derivar datos de cualquier parte de estas estructuras en cualquier
combinacin deseada. Esto nos quiere decir que existen reglas para la
estructura de los datos.
3.Una coleccin de reglas generales de integridad, las cuales explcita o
implcitamente definen un conjunto de estados consistentes estas reglas
algunas veces son expresadas como reglas de insertar-actualizar-borrar. Son
los procedimientos bsicos de insertar, actualizar y borrar.
USO DE UN MODELO DE DATOS.
I. Como una herramienta para especificar los tipos de datos y la organizacin
de los mismos que son permisibles en una base de datos especfica. En esta
parte podremos explicar en qu consisten los tipos de datos, as como la
organizacin.
II. Como una base para el desarrollo de una metodologa general de diseo
para las bases de datos. En esta parte es necesario tener el conocimiento para
implementar una base de datos.
III. Como una base para el desarrollo de familias de lenguajes de alto nivel para
manipulacin de consultas (querys) y datos. En este apartado lo que se desea
es entrar a la base para buscar la informacin.
IV. Como el elemento clave en el diseo de la arquitectura de un manejador de
bases de datos. Aqu podramos decir que es el archivo la pieza clave.
LOS MODELOS DE DATOS SE CLASIFICAN EN:
1.- Modelos externos.
persiguen satisfacer las necesidades de los usuarios.
2.- modelos conceptuales.
busca optimizar los recursos de informacin de las organizaciones en su
conjunto.
3- modelos internos.
sirven para construir el esquema fsico o interno
2.2 MODELO ENTIDAD RELACIN.
El modelo entidad relacin (Modelo E-R) fue introducido por Peter Chen.
En la actualidad no hay un solo modelo estandarizado del modelo E-R. Por el
contrario, hay estructuras, a partir de las cuales se conforman la mayora de
las variantes E-R.
El modelo E-R consiste en los siguientes pasos:
1.- Se parte de una descripcin textual del problema o sistema de informacin
a automatizar (los requisitos). Hacer un diagrama a partir del texto.
2.- Se hace una lista de los sustantivos y verbos que aparecen. Relacionarlos
con tablas y columnas para los sustantivos y verbos.
3.- Los sustantivos son posibles entidades o atributos. Esto quiere decir que
puede ser una entidad como lo es la de alumnos o los sustantivos como
nombre, apellido, etc.
4.- Los verbos son posibles relaciones. un ejemplo seria la venta de un carro a
un cliente la relacin es la venta.
5.- Analizando las frases se determina la cardinalidad de las relaciones y otros
detalles. Podramos decir que un auto es vendido a un cliente, pero un cliente
compra varios autos. La cardinalidad es de la empresa que vende al cliente y
despus del cliente que compra ms de un auto.
6.- Se elabora el diagrama (o diagramas) entidad-relacin.
7.- Se completa el modelo con listas de atributos y una descripcin de otras
restricciones que no se pueden reflejar en el diagrama.

2.2.1 ENTIDADES, ATRIBUTOS Y RELACIONES.

Entidad: Objeto del mundo real distinguible de otros objetos. Una entidad se
describe usando un conjunto de atributos. Puede ser una persona, lugar, cosa,
concepto o suceso, real o abstracto, de inters para la empresa. Es aquel
objeto del cual queremos almacenar informacin en la base de datos.

TIPOS DE ENTIDADES.
Regulares: La ocurrencia de un tipo de entidad regular tienen extensin propia,
es decir, existen por s mismos.
Dbiles: La existencia de cada ocurrencia de entidad dbil depende de la
existencia de la entidad regular.
Si se elimina una ocurrencia del tipo entidad regular, desaparecern tambin
con ella todas las ocurrencias de la entidad dbil dependientes de la misma.
Un tipo de entidad dbil se representa con dos rectngulos concntricos con su
nombre en el interior.
ATRIBUTOS.
Cada entidad tiene propiedades especficas, llamadas atributos, que la
describen. As, el tipo de entidad autor tiene como atributos el nombre, la
nacionalidad, la fecha de nacimiento, la bibliografa, etc.
TIPOS DE ATRIBUTOS.
a) Simples o compuestos.
SIMPLES. - Es un atributo que tiene un solo componente, que no se puede
dividir en partes ms pequeas que tengan un significado propio.
COMPUESTO. - Es un atributo con varios componentes, cada uno con un
significado por s mismo. Un grupo de atributos se representa mediante un
atributo compuesto cuando tienen afinidad en cuanto a su significado, o en
cuanto a su uso. Se representa grficamente mediante un valo.
b) Monovaluados o multivaluados.
MONOVALENTE. - Es aquel que tiene un solo valor para cada ocurrencia de la
entidad o relacin a la que pertenece.
POLIVALENTE. - Es aquel que tiene varios valores para cada ocurrencia de la
entidad o relacin a la que pertenece. Tambin se les denomina multivaluados,
y pueden tener un nmero mximo y un nmero mnimo de valores
c)Almacenados o derivados.
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 nmero de entidades COPIA
relacionadas con cada pelcula concreta
atributo derivado de entidades relacionadas
Atributos almacenados
fechanacim [de cada EMPLEADO]
nacionalidad [de una PELICULA].
INTERRELACIONES.
Asociacin, vnculo o correspondencia entre instancias de entidades
relacionadas de alguna manera en el mundo real.
Representamos el tipo de interrelacin mediante un rombo etiquetado con el
nombre de la interrelacin.

2.2.2 LLAVES.
En esta ocasin nos toca hablar de las llaves las cuales se dividen en primarias
y secundarias.
La llave primaria es aquel atributo que nosotros consideramos claves como,
por ejemplo:
Se desea crear una base de datos para un instituto educativo en el cual se
desea saber los datos de los profesores a los que se tendr que registrar. la
informacion requerida es la siguiente: R.F.C., direccin, telfono, etc., la llave
clave es el r.f.c. Ya que varios profesores se pueden llamar Antonio, Julio, Elena,
etc., pero el r.f.c. es distinto para cada uno. Los dems datos sern llaves
secundarias.
2.2.3 CARDINALIDADES DE LAS ENTIDADES EN LA RELACIN.

La cardinalidad no es ms que checar la relacin que tiene cada una de las


entidades en base al texto que se nos da. La cardinalidad es de uno a uno,
supongamos que tenemos el siguiente texto que nos dice que para cada
mdulo corresponde un profesor, en este texto la cardinalidad es de uno a uno
por que para cada mdulo le corresponde un solo profesor.
De uno a varios cuando tenemos un solo bebedero de agua para un equipo de
futbol o un vaso de agua para un grupo de porristas.
Varios a uno en este caso se da de la misma manera que en el de uno a varios
nada ms que en viceversa, esto quiere decir que un grupo de porristas para
un solo vaso.
De varios a varios este se da de la siguiente manera supongamos que tenemos
un equipo de futbol y una bolsa de balones, ya sea uno o ms miembros del
equipo de futbol se puede relacionar con uno o ms balones de la bolsa de
balones.
2.2.4 DEPENDENCIA EN EXISTENCIA Y DE IDENTIFICACIN.
Hay una dependencia en existencia cuando en un tipo de interrelacin est
vinculada con un tipo de entidad regular con una dbil. mientras que la
dependencia en identificacin se da cuando, las ocurrencias de la entidad dbil
no se pueden identificar solo mediante sus propios atributos, si no que se tiene
que aadir la clave de la ocurrencia de la entidad regular de la cual dependen.
2.2.5 GENERALIZACIN Y ESPECIALIZACIN.
La generalizacin es un tipo de interrelacin que existe entre un tipo de
entidad y los tipos de entidad ms especficos que dependen de l.
Una de las caractersticas ms importantes de las jerarquas es la herencia, por
la cual, los atributos de un supertipo son heredados por sus subtipos.
Ejemplo: Libro como articulo son documentos, por lo que los tipos de entidad
ARTICULO y LIBRO poseern (heredarn) todos los atributos del tipo entidad
DOCUMENTO.
2.2.6 AGREGACIN.
Es un tipo especial de relacin en la que se modela una semntica de tipo
tiene o es parte de, en la que una entidad represente una entidad de
mayor tamao (el todo), compuesta de entidades ms pequeas (las
partes).
Existen dos clases de agregacin:
Compuesto/Componente.
Abstraccin que permite representar que un todo o agregado se obtiene por la
unin de diversas partes o componentes que pueden ser tipos de entidades
distintas y que juegan diferentes roles en la agregacin.
Miembro/Coleccin.
Abstraccin que permite representar un todo o agregado como una coleccin
de miembros, todos de un mismo tipo de entidad y todos jugando el mismo rol.
Esta agregacin puede incluir una restriccin de orden de los miembros dentro
de la coleccin (indicando el atributo de ordenacin).

Web del Autor


https://tombasededatos.wordpress.com/?s=1.1+base+de+datos

Normalizar o Desnormalizar una Base de Datos ?

1. Descomposicin y Normalizacin

Siempre que un analista de sistemas de base de datos arma una base de datos, queda a su
cargo descomponer dicha base en grupos y segmentos de registros. Este proceso es la
descomposicin; el mismo es necesario independientemente de la arquitectura de la base de
datos - relacional, red o jerrquica-. Sin embargo, para la base de datos relacional,
la accin correspondiente puede dividirse y expresarse en trminos formales y se
denomina normalizacin a la misma.

La normalizacin convierte una relacin en varias sub-relaciones, cada una de las cuales
obedece a reglas. Estas reglas se describen en trminos de dependencia. Una vez que
hayamos examinado las distintas formas de dependencia, encontraremos procedimientos a
aplicar a las relaciones de modo tal que las mismas puedan descomponerse de acuerdo a la
dependencia que prevalece. Esto no llevar indefectiblemente a formar varias subrelaciones a
partir de la nica relacin preexistente.

2. Dependencia

Significado :

Antes de entrar en el tpico principal de dependencia, vamos a rever algunos conceptos


acerca de los individuos y acerca de las tuplas que los describen en la base de datos
relacional (BDR). Restringiremos la discusin a la BDR, si bien la misma se aplica igualmente
a las otras arquitecturas.

Los individuos tienen muchos atributos que pueden ser de inters a diferentes personas en
diferentes momentos. Nuestro problema actual es con una sola aplicacin o conjunto de
aplicaciones: solemne son de inters algunos de los atributos.

Los smbolos aplicables a la relacin han sido introducidos previamente.

R es una tupla general o vector que describe a un individuo;

R es una relacin, una matriz o un conjunto de vectores que pertenecen la poblacin de


inters.

U es el universo consistente en todas las posibles descripciones individuales, obtenido


mediante una combinacin exhaustiva de los valores a atributos.

La tupla general toma la siguiente forma

R = (a, b, c, ...., n) La pertenencia con respecto a relaciones, tuplas y universos se indica


mediante. Con respecto a los atributos:

A es el smbolo del nombre de un atributo

a es el smbolo de un valor del atributo.

Dominio (A) es el dominio para el atributo cuyo nombre es A.

Campo de aplicacin

Estamos interesados en relaciones dependientes entre atributos de los individuos en una o


varias poblaciones. Consideramos a los atributos D, E, y F. La dependencia es una relacin
funcional tal que los valores de una (o ms de una) de las variables determina y fija el valor de
las otras variables en la relacin dependiente. Consideramos el caso en el que E y F
dependen de D. Esto se describe ms brevemente en forma simblica:

e = e (d) f = f(d)

Existen tres tipos distintos de dependencia.

Total uno-uno-sinnimo

Completa - subtupla

Transitiva - mltiple.

La dependencia es una relacin funcional que penetra en el universo de posibilidades. La


dependencia no puede deducirse solamente de los datos de nuestra, ya que stos son
necesariamente incompletos, sino que debe ser inherente al comportamiento del sistema. Por
ejemplo, si los datos revelan que cada uno de nuestros proveedores tiene exactamente una
planta y que todas estas plantas estn en diferentes ciudades, podemos asumir una
dependencia total entre proveedor, planta y ciudad. Es decir, dada una ciudad, la misma est
asociada con un proveedor; y dado este proveedor estar asociado con una ciudad. En la
prctica, solamente cuando un nuevo proveedor se incorpore con una planta en la misma
ciudad que uno de nuestro antiguos proveedores, resultar claro que no existe dicha
dependencia total, Esto no podra ser deducido a partir de los datos previos.

Dependencia Total

Consideremos los atributos x e y. Cada valor de x tiene uno y solo un valor de y asociados a
el; e inversamente, dado un valor de y existe solamente un valor de x asociado a ste. Se
trata de una funcin unitaria de una variable tanto en sentido directo como inverso y por o
tanto se denomina dependencia total. Otra forma de expresar lo mismo es decir que x e y son
sinnimos; ambas expresiones son equivalentes.

Ejemplo con clave

Si una de las variables es al mismo tiempo la clave, como consecuencia todo valor de ambas
variables es nico en cualquier tupla de la relacin. Por ejemplo, consideremos
un archivo de personal donde cada uno de los empleados es identificado de tres maneras.

Su nombre

Su nmero de seguridad social

Su nmero de empleado

Los tres pueden representar una dependencia total. Tanto el nmero de seguridad social como
el nmero de empleado identifican al individuo en forma nica. El nmero de seguridad social
atae a la poblacin completa de trabajadores de los Estados Unidos. El nmero de empleado
se aplica solamente al personal de una empresa en particular. El nombre puede no ser
totalmente nico y la dependencia total existe solamente cuando cada empleado tiene un
nombre nico.

Si el nmero de empleado es al clave de la relacin, el nmero de seguridad social es


sinnimo de aquel. Podemos en consecuencia decir que el nmero de seguridad social, el
campo no clave, es totalmente dependiente de la clave, y es una clave candidata.

Si los nombres de todos nuestros empleados son nicos, tambin pueden, ser claves
candidatas. Sin embargo puede existir alguna duplicacin, dos personas llamadas John Smith,
por ejemplo. Dado que esta es una posibilidad, no puede establecerse una dependencia total
con respecto total con respecto al nombre. Puede incorporarse a la firma un nuevo empleado
y este puede tener el mismo nombre que uno de nuestros empleados actuales.

Ejemplo con estado Consideremos una relacin que contiene informacin sobre estado en dos
formas :

Una identificacin de estado con dos letras, tal como CA para California.

Una designacin con un nmero de dos dgitos tal como 12 para

California.

Estas dos formas de informacin sobre estado ilustran una dependencia total. Debe notarse
sin embargo que muchas tuplas pueden contener la misma identificacin de Estado, dado que
muchos de nuestros clientes pueden provenir de California. En consecuencia resulta claro que
la dependencia total no significa unicidad.

Dependencia Completa

El concepto de dependencia completa se aplica solamente cuando:

Tenemos ms de dos variables, y

Una variable dependiente depende de dos o ms variables

independientes.

Consideramos una relacin que abarca las variables P, Q y R. Supongamos que P es la


variable dependiente. Si el valor de P est determinado por una funcin de Q y R combinados,
se trata de una dependencia completa. Esto es, el valor de P no depende nicamente ni de Q
ni de R.

Vamos a repetir esto simblicamente. El valor de P es completamente dependiente de los


valores de q y r.

p = p (q,r)

Ejemplo con orden de compra


Como un ejemplo de dependencia completa, consideremos el caso de una orden de compra.
Supongamos que esta orden de compra describe mediante tres variables que son de inters
para nosotros:

El nmero de orden de compra (PON) designa la orden completa;

El nmero de parte de pieza designa una de las partes ordenadas por el pedido;

La cantidad de piezas es el nmero de unidades de dicha pieza requerida para satisfacer el


pedido.

Los pedidos describen en consecuencia una orden por medio de varias partes diferentes, y
para cada una distinta asociada. El sistema contable ve varios pedidos diferentes. La misma
parte puede aparecer en distintos pedidos y, cuando ello sucede, puede estar asociadas
distintas cantidades con la misma parte.

Un tupla de la base de datos relacional contendr un PON un nmero de parte y una cantidad.
La cantidad es completamente dependiente del PON y del nmero de parte. Resulta claro que
el nmero de pedido no es suficiente para determinar la cantidad todas las partes de un
determinado pedido no tiene la misma cantidad). Anlogamente, un nmero de parte no es
suficiente para determinar la cantidad ordenada, dado que diferentes pedidos pueden requerir
distintas cantidades de dicha parte. Por lo tanto, es nuestro ejemplo, la cantidad no es
dependiente solamente del PON o del nmero de parte; es completamente dependiente de
ambos.

Puede imaginarse, aunque no es muy probable el caso de que cada vez ordenados una parte
la ordenamos solamente por una cantidad como una docena, o tres gruesas o cualquier otro
valor fijo. Si esto ocurre para todas las partes y para todos los pedidos de nuestro sistema, en
consecuencia, no existir dependencia completa. En efecto podemos decir que hay
dependencia total entre cantidad y nmero de partes - condicin improbable-.

Hemos examinado anteriormente un ejemplo acadmico y las variables profesor, clase y


seccin. Tenemos en esta caso una dependencia completa de profesor respecto de clase y
seccin. Si en nuestra facultad est establecido existir dependencia completa. Esto existira
que un profesor ensee siempre a todas las secciones de una clase particular - una condicin
no muy factible con un curso de 20 secciones-.

Dependencia transitiva

La dependencia transitiva se aplica o tres o ms variables. Consideremos el caso de solo tres


variables y llammoslas S, T y V.

Diremos que S es la variable independiente si los valores de S determinan tanto a T como a V,


y se simbolizar as:

S ----> T; S ----> V

Sin embargo, sera deseable encontrar una relacin ms restrictiva o definida.


Tenemos dependencia transitiva cuando S determina a T y V, pero los valores de V pueden
considerarse siempre como dependiendo de los valores de T. Esto puede escribirse como

S ----> T; T ---->

o alternativamente como

v = v(t); t = t(s) v = v(t(s))

Reduccin

Si podemos manejar las dependencias transitivas, podremos reducir el espacio total requerido
para almacenar los datos. Varios valores de S pueden generar un nico valor de T. De modo
similar, pueden existir varios valores de T asociados solamente con un valor de V. La
separacin de estas relaciones permite conservar espacios. Esto puede observarse mejor con
respecto al ejemplo que se describe ms abajo.

Ejemplo

Consideramos un ejemplo que asocia cursos con departamento y con escuela. En


consecuencia, canto ser dictado por el departamento de msica en la escuela de Artes
y Ciencias; hidrulica ser dictada por ingeniera civil en la Escuela
de Ingeniera; impuestos ser dictado por el departamento contable en la Escuela
de Administracin.

Llamemos

S al curso

T al departamento

V a la escuela

Por lo tanto

S ----> T ----> V

la descomposicin consiste en la asociacin de un curso con un departamento en una


relacin. Otras relacin identifica a cada departamento con una escuela. Esta segunda
relacin es necesariamente menor tanto en grado como en cardinalidad y aqu reside
el ahorro de espacio.

3. Normalizacion

Qu es normalizacin?

Normalizacin es un proceso que clasifica relaciones, objetos, formas de relacin y dems


elementos en grupos, en base a las caractersticas que cada uno posee. Si se identifican
ciertas reglas, se aplica un categora; si se definen otras reglas, se aplicar otra categora.
Estamos interesados en particular en la clasificacin de las relaciones BDR. La forma de
efectuar esto es a travs de los tipos de dependencias que podemos determinar dentro de la
relacin. Cuando las reglas de clasificacin sean ms y ms restrictivas, diremos que la
relacin est en una forma normal ms elevada. La relacin que est en la forma normal ms
elevada posible es que mejor se adapta a nuestras necesidades debido a que optimiza las
condiciones que son de importancia para nosotros:

La cantidad de espacio requerido para almacenar los datos es la menor posible;

La facilidad para actualizar la relacin es la mayor posible;

La explicacin de la base de datos es la ms sencilla posible.

4. Primera forma normal

Para que una relacin est en primera forma normal (1 FN), debe ser solamente una relacin
propia, una matrz m por n, donde:

Ninguna celda de la matriz est vaca;

El valor n cualquier columna est definido por el dominio para dicho atributo.

Cada tupla tiene una clave que la identifica en forma unvoca, pero dicha clave no significa
orden.

La aplicacin determina la relacin

Para que una relacin sea normalizada en pasos adicionales, debe encontrarse en la primera
forma normal. Colocar los datos en la primera forma normal est a cargo del diseador de la
aplicacin. Estos datos se encuentran disponibles de alguna manera inicialmente. Si la
aplicacin existe en forma manual, o ha sido anteriormente computarizada pero no todava
como relacin, el diseador reorganiza los datos de modo de conformar una matrz 1FN.

La segunda inicial ms importante es la dimensin de la relacin cuntos componentes


existen en la tupla o cuntas columnas en la tabla? De qu manera se compara esto con el
nmero de campos en el documento fuente?.

En la figura se puede observar un documento como muestra, una factura tpica. Parte de
la informacin es fija y otra variable. La figura nos muestra un formulario impreso dentro de l
cual se ha agregado informacin. La impresin puede dividirse en dos categoras.

Informacin descriptiva para el usuario

Nombres de atributos.

La informacin impresa es necesariamente fija. Podemos observar el nombre de la compaa


en la figura, as como otras particularidades (tales como el nmero de telfono que no figura
aqu). Otros nombres impresos corresponden a los atributos cuyos valores se escriben en el
momento en que el formulario es llenado. Estos nombres de atributos son tambin los
nombres de campos para almacenar los datos en el sistema. Los que se escribe son los
valores de atributos.

La informacin convertida queda formada en tuplas. La prxima pregunta es cuantas tuplas


representarn a la formacin en esta forma. Debe notarse que el nmero de partes ordenadas
vara de una factura o pedido a otro.

Wetco factura no. 91529

23 river road fecha factura 3/19/77

saltsea texas

orden fecha

de cliente vendedor de la orden via orden wetco

M0007 2-14 3/12/17 ups 1922447

Cliente no. 31-0285-fl

Venta a flores associates expedido a

108 8 avenue el mismo

brooklyn, n.y. 11215

cantidad precio parte descripcion monto

Pen-

Orde-despa-dien-

Nada chada te

2 2 3.50 018719 camisa 7.00

2 2 .35 020428 guia .70

1 1 .70 020808 rodillo motor .70

1 0 .25 020811 rodillo libre 0.00

1 1 6.00 020819 humidrum 8.00

Transporte Y Seguro .96


17.38

Dado que una tupla debe tener un nmero fijo de componentes, necesitamos una tupla en
primera forma normal para cada parte de cada pedido. Sin embargo, la informacin que se
encuentra en la parte superior del formulario, y que se llena a mquina, es la misma para
todas las partes ordenadas ms abajo. Por lo tanto cada tupla consiste en una parte de datos
que son variables y datos del pedido que se duplican para cada parte ordenada.

Grafo de Dependencia

Una vez que los datos han sido puestos en primera forma normal, resulta conveniente
descomponer la relacin en un nmero de relaciones ms pequeas, cada una en forma
normal superior, de modo de optimizar el almacenamiento y usar su funciones. Para esto
resulta necesario reconocer las dependencias existentes. Un grafo exhibe los distintos tipos
de dependencias que existen, y enfatizan que hemos investigado completamente cada
dependencia.

El grafo simple no est diseado para mostrar dependencias. Para hacer utilizable a este
grafo, se agregan colores pueden expresarse en blanco y negro mediante distintos tipos de
lneas. Discutiremos estos tipos de lneas en trminos de la dependencia que cada uno
representa. En las figuras que siguen las formas grficas aparecen a la izquierda y se utilizan
para constituir un grafo completo. A la derecha se puede observar una forma simblica para
describir dependencias nicas.

Dependencia nica

En la figura vemos un arco que conecta dos vrtices A y B. A es la cola y B es la cabeza de la


"flecha". Esto significa que B depende de A. Es decir dado un valor de A podemos predecir de
A. Es decir, dado un valor de A podemos predecir cul ser el valor de B.

Dependencia total

La dependencia total se define como una dependencia bilateral o simtrica. Es decir, si C


depende de D, en consecuencia D ser dependiente en forma similar de C. Esto se expresa
en la figura mediante una arista (sin una flecha) que une C y D. Para enfatizar la dependencia
total, se usa una lnea doble o una lnea ms gruesa. Esto representa una medida
de seguridad para verificar que el usuario no dibuje un arco e inadvertidamente omita la
flecha. Simblicamente se utiliza una doble flecha.

Dependencia completa

La variable G depende en forma completa de otras dos variables E y F, lo cual puede


ilustrarse como se ve a la izquierda de la figura. Pero as no es representada adecuadamente
la dependencia completa, ya que el valor de G no depende de E o F, independiente, sino que
depende de ambos valores. Por lo tanto en el centro de la figura A, vemos una forma mejor; la
arista que une E y F no intenta demostrar una dependencia entre E y F, por lo tanto se dibuja
en lneas de trazos; a partir del centro de esta lnea de trazos, se dibuja un arco dirigido hacia
G para indica que G depende de ambas variables E y F.
Dependencia transitiva

Supongamos que dos variables, K y L, dependen de J. Si puede verificarse que L depende en


forma primaria de K, existira una dependencia transitiva. Mostramos a la izquierda de la figura
B que L. depende de J o de K. Ms apropiado s el grafo del centro de la figura B, donde
podemos ver que L est definida por K la cual, a su vez, est determinada por los valores de
J.

Simblicamente indicamos una dependencia transitiva de L respecto de J mediante una flecha


de trazos desde J a L, como puede verse a la derecha de la figura B.

Ejemplo

En la figura B se presenta un grafo de dependencia hipottico. En el mismo se dibujan las


relaciones de dependencia entre atributos para una aplicacin de remuneracin. EMPNO y
DEPTNO estn subrayadas en la figura para expresar que ambas son partes de una clave
compuesta para la relacin. Una lnea gruesa conecta EMPNO a EMPNOM para indicar que si
nombre de empleado y existe una dependencia total.

Varios atributos dependen directamente del nmero de empleados:

TITL es el ttulo de la tarea del empleado

PAYLVL es un carcter que indica el nivel de sueldo del empleado.

HORAS representa el nmero de horas que el empleado ha trabajado la presente semana.

PAYRT est apuntado a PAYLVL indicando que el rgimen de pago es transitivamente


dependiente del nivel de pago.

La lnea de trazos que une PAYRT y HORAS indica que ambas participan en una dependencia
completa por la cual el receptor es PAYAMT, el valor pagado para esta semana.

A la derecha de la figura, encontramos los atributos que dependen del nmero de


departamento. Obsrvense la dependencia total entre nmero y nombre del jefe del mismo
(MGRO y MGRNM).

Hay solamente un atributo que es completamente dependiente de ambas partes de la clave


compuesta, es decir, el nmero de proyecto, PROJNO.

5. Segunda Forma Normal

Una relacin est en segunda forma normal (2FN) solamente si todos los atributos son
dependientes en forma completa de la clave.

Descripcion De La Segunda Forma Normal (2 Fn)

Su nombre ya nos indica el hecho de que la segunda forma normal es por lo general el
prximo paso de normalizacin y descomposicin. Para ser accesible a la normalizacin,
y poder ser puesta en segunda forma normal, la relacin debe poseer las siguientes
propiedades:

Debe estar en primera forma normal

Debe tener una clave compuesta.

La consecuencia inmediata de los requerimientos expresados ms arriba es que cualquier


relacin en primera forma normal que tiene una clave simple, est automticamente en
segunda forma normal. Comencemos con un ejemplo en forma de tabla de una relacin
consistente en 17 atributos, que se presenta en la figura. La misma se encuentra en primera
forma normal y tiene una clave compuesta que consiste en dos atributos P y Q. Estos estn
subrayados en la figura para mostrar que sirven como clave. La tupla de relacin puede
tambin escribirse linealmente en forma simblicamente:

R = (A,B,C,D,E,F,G,H,I,L,M,N,O,P,Q)

El prximo paso es crear un grafo de dependencia, presentando aqu como figura. Debe
notarse que este grafo se crea examinado con conocimientos y atributos para determinar
como participan y relacionan entre ellos.

No resulta suficiente analizar la matrz de relacin, la cual puede hacernos creer que existe
una dependencia debido a que la muestra de la cual se ha extrado dicha relacin es
pequea. Si somos inducidos a error por los datos existentes y construimos una dependencia
donde esta no existe, se plantear un problema. Cuando lleguen nuevos datos que
contradigan la dependencia, deber dejarse de lado el esquema completo.

Supongamos en consecuencia que el grafo que se puede observar en la figura ha sido


derivado en forma funcional y que expresa correctamente las dependencias. Resulta claro a
partir de este grafo que los atributos que parten de P son dependientes solamente de este. De
un modo similar los que parten de Q dependen solamente de este ltimo. Solamente aquellos
que parten de la lnea de trazos que conecta a P y Q tienen dependencia completa de ambos.
Esta es la gua para la descomposicin.

Descomposicin

La figura contiene 3 sub-rboles, la base de nuestra descomposicin. Definimos una subtupla


general en base a cada sub-rbol y en consecuencia:

P' = (P,A,B,C,E,H,K)

Q' = (Q,F,G,J,N)

PQ = (P,Q,D,I,L,M,O)

Aqu la raz de los sub-rboles de la izquierda y la derecha. P y Q, se convierte en la clave de


sus respectivas subtuplas; ambos. P y Q forman la clave compuesta para la subtupla PQ.

Proyeccin
El prximo paso es proyectar la relacin R sobre cada una de estas subtuplas para formar tres
nuevas relaciones, y en consecuencia.

P' = proyectar R(P')

Q' = proyectar R(Q')

PQ = proyectar R(PQ)

Las relaciones as formadas nos dan tres nuevas sub-relaciones. Una subrelacin es la
relacin que deriva de una relacin mayor. Las subrelaciones ilustradas en la figura estn
correlacionadas por medio de los componentes de sus claves. La clave compuesta P y Q de la
relacin original R. es tambin la clave de la sub-relacin PQ. P y Q tienen a P y Q
respectivamente como claves. La lnea de trazos en la figura indica que Q est correlacionada
con PQ por medio de la componente Q y P est correlacionada con PQ por medio de P.

Para restablecer la relacin original R debemos juntar estas tres subrelaciones en algn
orden, indicado simblicamente como:

R = juntar P [juntar PQ, (Q)] (P) = juntar Q[juntar PQ P(P)] (Q).

Grafos

La nueva sub-relacin que se ve en la figura se presenta en forma de grafo en la figura


siguiente. Existe una considerable analoga entre estas figuras y la figura anterior. Lo
importante es la diferencia. En PQ existe una lnea de trazos que conecta los componentes de
la clave compuesta P y Q en el centro de la figura. Los arcos parten del centro de esta lnea
de trazos hacia todos los componentes de P y Q, los cuales son dependientes en forma
completa de ambos, es decir de P y Q. Una lnea de puntos conecta P en la relacin PQ a P
de la relacin P. Esto representa la correspondencia entre ambas veces P. Una lnea de
puntos conecta de un modo similar Q en PQ a Q en Q para indicar una correspondencia
similar.

Efectos

El efecto de esta descomposicin puede no resultar inmediatamente claro. Debemos insistir


en que ninguna relacin correcta debe contener tuplas duplicadas. La relacin original R
contiene muchas subtuplas duplicadas P' y Q'. Las mismas han sido eliminadas durante la
descomposicin. Esto facilita en forma extraordinaria la actualizacin y otras
importantes operaciones que afectan a estas relaciones, las cuales sern aclaradas en los
ejemplos que siguen.

Ejemplo de inventario

Vamos a utilizar ahora un ejemplo prctico para demostrar la normalizacin. En la figura se


observa una parte de la matrz de relacin PW.

Pueden verse los nombres de los atributos simblicos y sus significados, pero no sus valores.
Las columnas no aparecen en ningn orden en particular. Debe observarse la clave
compuesta que distingue cada tupla, que abarca el nmero de pieza y el nmero de depsito
PNO y WNO.

Arbol de Dependencia

El medio para descomponer la relacin es el rbol de dependencia que se ve en la figura. Este


rbol ha sido construido solamente teniendo en cuenta la dependencia completa, y no muestra
las dependencias total o transitiva, que se describe ms adelante, si es que las mismas
existen.

Como podamos esperar, aparecen tres sub-rboles. El sub-rbol de la izquierda, con raz
PNO, contiene los atributos que se aplican solamente a la pieza o parte. El sub-rbol de la
derecha con raz WNO describe cada depsito. EDl sub-rbol del centro corresponde a las
partes y al depsito, y describe la cantidad de partes disponibles en el depsito, QOH, y el
nmero de cajn o estante, BIN (o algn otro parmetro de ubicacin), donde dichas partes
pueden ser halladas.

El prximo paso es definir tres tuplas generales para cada sub-rbol,

P = (PNO, DESC, PR, UNIT)

W = (WNO, WAD, FUE)

P/W = (PNO, WNO, BIN, QOH)

La descomposicin consiste en proyectar la relacin PW sobre cada una de estas tuplas para
obtener tres nuevas sub-relaciones:

P = proyectar PW(P)

W = proyectar PW(W)

P/W = proyectar PW(P/W)

La descomposicin en la figura muestra las tres relaciones como matrices; la lnea de trazos
indica como se vinculan las relaciones.

Efecto

Discutiremos ahora algunas de las ventajas obtenidas mediante la descomposicin. Si estas


relaciones se utilizan para el control de inventario. nuestra preocupacin ser cuantas piezas
de cada tipo estn disponibles en un depsito en particular. Cuando se retiran piezas o se
reciben nuevos envos la cantidad disponible, QOH ser la variable de cambio. La
actualizacin consiste en poner al da sub-relacin P/W la cual ahora contiene solamente
malos componentes en lugar de los nuevos P/W.

Existe una tupla P en la sub-relacin de pieza o parte, P, para cada parte y una tupla. W, en la
sub relacin W, para cada depsito y estos ltimos probablemente no sern muchos.
Consideremos la facilidad de efectuar cambios en un depsito en particular. Si un atributo de
uno de los depsitos vara entraremos en W para efectuar el cambio solamente en una tupla.
En la primera forma normal para PW tenamos que encontrar todas las tuplas en las cuales el
valor de WNO esta el particularmente deseado, y efectuar el mismo cambio en cada una de
ellas. Si dicho depsito almacenaba 100 partes, como consecuencia deba variar 100 tuplas
de PW. El procedimiento de actualizacin se aplica tambin a las descripciones de partes. Si
el precio de alguna parte o pieza cambia, este cambio es independiente del depsito en el
cual se almacena dicha parte. Solamente se efecta un cambio en P a diferencia de los
muchos que hubieran sido requeridos para PW.

6. Tercera forma normal

Una relacin se encuentra en tercera forma normal (EFN) si no existen transitividades entre
sus atributos y si ya se encuentra en 2 FN.

Descripcin

Una relacin R a poner en tercera forma normal debe estar en la segunda forma normal. Es
muy comn que R sea una sub-relacin; la relacin original estaba en primera forma normal
(para ponerla en segunda forma normal fue descompuesta en varias sub-relaciones). Estas
son ahora candidatas a una descomposicin adicional.

Recordamos que las propiedades de la segunda forma normal (2Fn) son:

Tenemos una matrz m x n con un valor determinado para cada componente de cada tupla.

Cada valor es obtenido a partir de un dominio propiamente definimos

Cada valor contiene una clave, ya sea simple o compuesta

Cada componente no clave es dependiente en forma completa de su clave.

En consecuencia es evidente que tenemos, o bien una clave simple, o una clave compuesta
de la cual todos los componentes no clave son dependientes en forma completa.

El objeto de esta fase es determinar todas las dependencias transitivas; la descomposicin


producir a continuacin sub-relaciones para las cuales no existirn dependencias transitivas
-la definicin de la tercera forma normal (EFN)-.

Una dependencia transitiva abarca como mnimo tres componentes. Si los componentes
fueran ms, la dependencia mltiple puede derivarse en varias dependencias atransitivas de
tres componentes solamente dada una. Por lo tanto dirigiremos nuestra atencin a una
dependencia transitiva simple de tres componentes. Tal dependencia puede expresarse como:

Q ---> A ----> B

En la cual se dice que B depende de A y que A depende de Q. La transitividad existe debido a


que el valor de B depende en la ltima instancia del valor de Q.
La dependencia transitiva es degenerada si cualquiera de las dependencias anteriores es
total. Esto es, podemos prever que la relacin de Q a A es muchos-unos, donde varios valor
nico de A. Dado un valor tal Q el valor de A queda determinado. La inversa no se aplica y en
consecuencia no existe una dependencia total: dado un valor de A el valor correspondiente de
Q no queda determinado a menos de que se trate de una dependencia total.

El ahorro que surge de colocar la relacin en tercera forma normal aparece a raz de la
granularidad del dominio involucrado. Se puede prever que:

num dominio (Q)> num dominio (A) > num dominio (B)

Determinacin de al dependencia transitiva

Si el grafo utilizado para llevar la relacin a la segunda forma normal es completo en termino
de las transitividades existentes, no resulta necesario un grafo adicional. El grafo para
convertir a la segunda forma normal requiere solamente que todas las dependencias
completas y parciales sean conocidas. Supongamos que no hemos establecido todas las
dependencias transitivas. Se presenta una situacin simple en la figura anterior donde A, B y
C son dependientes de Q. SI suponemos que existe una dependencia entre A, B y C son
dependientes de Q. Si suponemos que existe una dependencia entre a y B debemos
confirmarlo en forma funcional.

Una dependencia total entre A y B en el grafo de la figura puede representarse como se ve en


la figura el arco desde A a B no muestra una dependencia de B respecto de A inversamente el
arco a partir de B hacia A muestra una dependencia de A respecto de B; los arcos a partir de
Q a A y a B nos muestra la dependencia de cada una de stas respecto de Q. Esto puede
observarse nuevamente en la figura, donde una doble arista entre A y B indica la bi-
direccionalidad de esta dependencia. El hecho de que Q apunte a esta arista nos muestra que
cada una de las variables A y B es claramente dependiente de aquella.

Como ejemplo sea Q el nmero PO, A el nmero de parte o pieza y B el nombre de parte, A y
B son totalmente dependientes y cada uno dependen de Q.

Transitividad simple

Para la dependencia transitiva unilateral, la variable independiente apunta a la variable


dependiente, tal cual se presenta en el figura donde B depende de A. El arco entre B y Q ha
sido eliminando; la dependencia implcita de B respecto de Q resulta obvia.

Si se presenta la dependencia inversa, debe gratificarse como se ve en la figura.

Descomposicin

Dada una sub-relacin con una o ms dependencias transitivas, la descomposicin consiste


en partir la relacin en una o ms de una sub-relacin, donde la variable intermedia aparezca
como variable dependiente en una y como variable independiente en la otra.

Caso simple Tenemos:


Q ---> A ----> B

Q ---> C

Dado que ambas, A y C dependen directamente de Q deben conservarse en una sub-relacin


Q, con clave Q.:

Q ---> A; Q ---> C

Debe separarse la relacin directa remanente, y colocarla en su propia sub-relacin A' con la
A:

A ---> B

Los grados de Q' y A'. Aqu la componente A relaciona Q' con A, a es la clave simple de A'. Si
bien A no es la clave de Q' es le medio de relacionar un valor de Q en Q' con un valor de B en
A' y se llama por lo tanto la clave externa de Q' . Para crear Q' y A' debemos utilizar las
subtuplas generales Q' y A' denifidas en consecuencia:

Q' = (Q,A,C)

A' = (A,B) donde el subrayado indica una clave.

Este deben proyectarse sobre Q para obtener las sub-relaciones:

Q'= proyectar Q(Q')

A'= proyectar Q(A')

Caso Compuesto

Las dependientes transitivas mltiples han sido investigadas y exhibidas. Tenemos en


consecuencia.

Q --> C

Q --> A --> B1

Q --> A --> B2

Q --> A --> B3

La descomposicin separa nuevamente todas estas variables directamente dependiente de


la clase original en una subtupla. Q'' = (Q, A, C)

Las variables restantes son todas dependientes directa o totalmente de A o C y se reorganizan


de un modo similar. A'' = (A, B1, B2, B3); C'' = (C, D)
Deben construirse tres sub-relaciones por proyeccin:

Q'' = proyectar Q(Q'')

A'' = proyectar Q(A'')

C'' = proyectar Q(C'')

Aqu Q'', A'' y C'' aparecen como sub-rboles. Las mismas se relacionan por medio de la clave
externa de Q'' es decir A y C; esto se muestra mediante la lnea de puntos entre A y A y entre
C y C. Nos podemos mover directamente entre las dos figuras sin la intervencin de pasos
simblicos, utilizando solamente manipulaciones grficas.

Descomposicin Grfica

Hemos discutido el enfoque simblico. Dado un grafo 2FN. Debemos seleccionar en primer
trmino los nodos apuntados por la raz que no sean hojas. Los mismos se convierten en
races de sus propios sub-rboles, A'' y C''. Estos sub-rboles son eliminados de Q dejando en
Q'' solamente los nodos A y C, que son las races de A;; y C''.

Ejemplo de orden de compra

Examinaremos solamente una pequea porcin de la relacin orden de compra que ha sido
convertida en un grafo de dependencia. Para esta porcin de la relacin compra PP, tenemos:

Las partes se compran utilizando el nmero de parte, PNO;

Un vendedor, VNDR est asociado a cada parte;

Cada vendedor tiene una clasificacin de forma de pago, PAYCLS.

Por lo tanto PAYCLS representa si el vendedor debe cobrar dentro de los 10 das, 30 das, 60
das, etc. La accin para convertir la relacin.

Tenemos aqu una relacin transitiva que puede ser representada en consecuencia:

PNO ---> PAYCLS

Sabemos que la variable intermedia, el vendedor VNDR, es el que determina el tipo de pago
de modo tal que

PNO ---> VNDR --> PAYCLS

para poner esta relacin en la tercera forma normal, la misma se descompone en dos sub-
relaciones. Las dos sub-relaciones PV y VP, se forman por proyeccin a partir de la relacin
original PP de modo tal que:

PV = proyectar PP (PNO, VNDR); PV = proyectar PP (VNDR, PAYCLS).


La relacin PV relaciona partes con vendedores.

La identificacin del vendedor, VNDR es la clave externa par PV. La misma se utiliza para
entrar en la relacin VP, en la cual es la clave primaria.

Debe notarse que, para el mantenimiento, si cambia la clase de pago solamente cambiara una
entrada o tupla en VP y ninguna en PV. Para el caso de PP hubiera cambiado muchas tuplas.

Ejemplo de inventario

Presentamos ahora una porcin de un ejemplo de inventario, al cual corresponde el grafo


parcial. Tenemos en este caso:

PNO es un nmero de parte

PNM es el nombre de parte y tiene dependencia total con el nmero de parte

PREC es el costo de UNITS multiplicado por el nmero de partes

PCL es la clase de parte, la cual da el tipo de parte en trminos de su peso y de su forma.

WHN es el nmero de depsito donde est almacenada la parte.

WHLOC Es la ubicacin del deposito

FUE es la categora de seguro de incendio del depsito.

Resulta claro a partir del grafo que el nmero de parte determina la clasificacin de la parte, la
cual a su vez determina parcialmente el deposito donde est almacenada dicha parte.
Usaremos esta dependencia transitiva, que est circundada con lnea de trazos gruesos, para
descomponer la relacin en su tercera forma normal: PNO ---> WHN; PNO ---> PCL ---> WHN

La variable intermedia, clase de parte, PCL, es el medio de que disponemos para


descomponer el grafo. Se deja como ejercicio hallar las proyecciones y la relaciones
resultantes.

Ejemplo bancario

Consideremos parte de un ejemplo de banco donde cada depositante tiene un nmero de


cuenta que lo identifica. El depositante recibe una lnea de crdito. Puede extraer dinero hasta
dicho valor. La parte no utilizada de crdito puede ser retirada cuando lo desee. Vemos que la
lnea de crdito LNCR es funcionalmente dependiente del nmero de cuenta CUET; el valor ya
extrado DEBIT es tambin dependiente del nmero de cuenta. El valor de crdito disponible
en este momento, DISP, es dependiente en forma completa de ambos, LNCR y DEBIT.

Parecera que lo lgico es descomponer el grafo y volver a presentarlo. En base a esto, P


tiene como clave el nmero de cuenta CUENT. Debemos entrar en P para obtener LNCR y
DEBIT. Estas son claves externas para P; las mismas forman la clave compuesta para entrar
en Q y hallar el valor de la variable completamente dependiente DISP.
Esto funcionara, pero hay una forma ms simple de resolver el problema. El valor de crdito
disponible en la actualidad es simplemente la diferencia entre la lnea de crdito y el debido
corriente. Todo lo que tenemos que hacer es ejecutar una sustraccin. La relacin original no
necesita contener DISP. dado que ste se calcula simplemente durante el procesamiento. Por
lo tanto podemos sencillamente omitir Q.

Transitivas mltiples.

Establecemos de entrada la condicin simple de que Z sea dependiente en forma transitiva de


Q. Si existe ms de una variable intermedia de dependencia, la transitiva no ser completa
hasta que se especifiquen todas dichas variables. Es decir, si bien empezamos con la
condicin de transitividad, Q ---> Z,

la condicin completa podra ser, Q ---> X ---> Y ---> Z

Ninguna condicin intermedia Q ---> X ---> Z --->; Q ---> Y ----> Z

sera suficiente para descomponer la original de la figura.

7. Cuarta forma normal

Dependencias multivaluadas

La tercera forma normal toma en cuenta la dependencia transitiva y provee una reduccin
ptima universal, excepto para los casos infrecuentes de dependencia multivaluadas. Ha
quedado claro en pocas recientes que es posible una reduccin adicional en este caso, y
esto es lo que se lleva a cabo mediante la cuarta forma normal.

Existe una dependencia multivaluada cuando un valor de una variable est siempre asociado
con varios valores de otra u otras variables dependientes que son siempre las mismas y estn
siempre presentes. Esto se ilustra mejor con el ejemplo presentado en la figura. La relacin
FAB describe tejidos. La variable independiente (con respecto a las dependencias
(multivaluadas) es el nmero de tejido FABNO. Con el se encuentra asociados un modelo (o
patrn) y un color. En la figura, el tejido 345 vienen en dos modelos y entres combinaciones de
modelo y color. En este caso se aplica el grafo de dependencia. Para hacer mas clara que
esta es una dependencia multivariable, una cabeza doble de flecha apunta desde FABNO o
PATRN y tambin desde FABNO a COLOR.

La ineficiencia en el registro de informacin y se resulta clara al examinar las dos nuevas


relaciones. La primera de stas, FABPAT lista el nmero de tejido contra el modelo; en el
segundo caso, FABCOL, lista el nmero de tejido contra las combinaciones de color. Dado
que la regla es que todas las combinaciones de las variables dependientes multivaluadas
deben prevalecer, resulta simple reconstruir la relacin FAB a partir de las dos sub-relaciones
que resultaron.

Descomposicin Para poner una relacin o sub-relacin en la cuarta forma normal debe poder
aplicarse lo siguiente:

Debe estar en la tercera forma normal.


Deben existir una o mas multidependencias.

Despus de construir el grafo de dependencia, el prximo paso es ejecutar proyecciones


utilizando la variable independiente y una de las variables multidependientes.

FABPAT = proyectar FAB (FABNO, PATRN)

FABCOL = proyectar FAB (FABNO, COLOR)

El resultado son nuevas sub-relaciones que han sido utilizadas para ahorra espacio y permitir
una ms fcil actualizacin.

Ejemplo de profesor y texto

Consideremos otro ejemplo. Los cursos dictados en una escuela corresponden a un nmero
de curso. Asociada a cada nmero de curso se encuentra la descripcin del mismo. Para cada
curso existe una seleccin de textos y una seleccin de profesores. Puede darse cualquier
combinacin de texto y profesor.

El grafo de dependencia. El mismo nos muestra una dependencia total entre el nmero de
curso y la descripcin del curso. Existe una multidependencia entre texto y nmero de curso, y
tambin entre profesor y nmero de curso.

Para descomponer la sub-relacin en sus relaciones ms pequeas, se efectan tres


proyecciones. Las sub-relaciones resultantes.

Leer ms: http://www.monografias.com/trabajos5/norbad/norbad2.shtml#ixzz4fx1s8kva

1. Desnormalizacin.
La desnormalizacin es el proceso de invertir las transformaciones realizadas
durante la normalizacin por razones de rendimiento. Se trata de un tema que
suscita la polmica entre los expertos en bases de datos. Para algunos el coste
es demasiado alto y nunca desnormalizan mientras otros alaban sus ventajas y
acostumbran a desnormalizar.

Los defensores de la normalizacin siguen este proceso mental: la


normalizacin crea ms tablas al avanzar hacia formas normales ms altas,
pero un mayor nmero de tablas significa un mayor nmero de combinaciones
al recuperar los datos, lo que contribuye a la ralentizacin de las consultas. Por
esta razn, para mejorar la velocidad de determinadas consultas, se pueden
anular las ventajas de la integridad de datos y devolver la estructura de los
datos a una forma normal inferior.
2. Consejos para la Desnormalizacin.
En materia de desnormalizacin, es aconsejable adoptar un enfoque prctico,
teniendo en cuenta las limitaciones de los lenguajes como SQL y de MySql en
particular, y ser prudente no desnormalizando de manera innecesaria. Los
siguientes consejos le ayudaran a la hora de decidir:

Si el uso de una estructura normalizada genera un rendimiento aceptable, no


debera desnormalizar.
Si el rendimiento no resultara aceptable, asegurarse de comprobar si el
proceso de desnormalizacin lo convierte en aceptable. Es aconsejable buscar
alternativas, como la eleccin de mejor hardware para evitar la
desnormalizacin. Resulta difcil deshacer los cambios estructurales
posteriormente.
Asegurarse de que se prefiere una menor integridad de los datos a cambio de
un mejor rendimiento.
Considerar posibles escenarios futuros, en los que las aplicaciones puede que
planteen exigencias diferentes a los datos. El uso de la desnormalizacin para
mejorar el rendimiento de una aplicacin obliga a la estructura de datos a
depender de dicha aplicacin, cuando la situacin ideal sera la contraria.

3. Conclusiones.
La Desnormalizacin nos ayuda a mejorar el rendimiento.
Menor nmero de tablas.
Redundancia de Datos.
Mejora Velocidad de las consultas.
Menor Integridad de datos.

Algebra relacional.

El Algebra relacional es un lenguaje de consulta procedural. Consta de un


conjunto de operaciones que toman como entrada una o dos relaciones y
producen como resultado una nueva relacin, por lo tanto, es posible anidar y
combinar operadores. Hay ocho operadores en el lgebra relacional que
construyen relaciones y manipulan datos, estos son:
1. Seleccin
2. Proyeccin
3. Producto
4. Unin
5. Interseccin
6. Diferencia
7. JOIN
8. Divisin

Tabla 2-1 - Operadores del Algebra relacional

Las operaciones de proyeccin, producto, unin, diferencia, y seleccin son


llamadas primitivas, puesto que las otras tres se pueden definir en trminos de
estas.

Se hace necesario en este punto incluir un modelo de datos de ejemplo en el


cual trabajar para generar ejemplos de comandos y operadores. Para este
efecto se incluye un modelo bsico de administracin de RadioTaxis. El Grfico
que se presenta a continuacin representa el Modelo conceptual (Modelo
Lgico) o Diagrama de Entidad-Relacin

Los Esquemas de relaciones que se pueden construir a partir de este modelo


son los siguientes:

Dueo = {rut, nombre, telfono, direccin, vigencia}


Chofer = {rut, nombre, telfono, direccin, fecha_licencia_desde,
fecha_licencia_hasta, vigencia}
Vale = {correlativo, hora_desde, hora_hasta, metraje_total, tarifa_total}
Mvil = {patente, rut_dueo, rut_chofer, marca, modelo, ao}
Viaje = {correlativo_vale, patente_movil, Hora_Desde, hora_hasta, origen,
destino, tarifa, metraje}
2.2.1. Seleccin.

El operador de seleccin opta por tuplas que satisfagan cierto predicado, se


utiliza la letra griega sigma minscula () para sealar la seleccin. El
predicado aparece como subndice de . La Relacin que constituye el
argumento se da entre parntesis despus de la .

Ejemplos:
index12.jpg
index13.jpg

2.2.2. Proyeccin.

La operacin de proyeccin permite quitar ciertos atributos de la relacin, esta


operacin es unaria, copiando su relacin base dada como argumento y
quitando ciertas columnas, La proyeccin se seala con la letra griega pi
mayscula (). Como subndice de se coloca una lista de todos los atributos
que se desea aparezcan en el resultado. La relacin argumento se escribe
despus de entre parntesis.

Ejemplos:
index14.jpg
index15.jpg

2.2.3. Producto.

En lgebra relacional el producto de dos relaciones A y B es:

A Veces B o A X B
Produce el conjunto de todas las tuplas t tales que t es el encadenamiento de
una tupla a perteneciente a A y de una b que pertenece a B. se utiliza el
smbolo X para representar el producto.

Ejemplos:
index16.jpg

2.2.4. Unin.

En lgebra relacional la unin de dos relaciones compatibles[3]A y B es:

A UNION B o A B

Produce el conjunto de todas las tuplas que pertenecen ya sea a A o a B o a


Ambas. Al igual que en teora de conjuntos el smbolo representa aqu la
unin de dos relaciones.

Ejemplo:
index17.jpg
Devuelve todos los Dueos y los Choferes.

2.2.5. Interseccin.

En lgebra relacional la interseccin de dos relaciones compatibles A y B


A INTERSECCION B o A B

Produce el conjunto de todas las tuplas pertenecientes a A y B. Al igual que en


teora de conjuntos el smbolo representa aqu la interseccin entre dos
relaciones.

Ejemplo:
index18.jpg
Devuelve todos los dueos que tambin son choferes

2.2.6. Diferencia

En lgebra relacional la diferencia entre dos relaciones compatibles A y B

A MENOS B o A B

Produce el conjunto de todas las tuplas t que pertenecen a A y no pertenecen a


B.

Ejemplo:
index19.jpg
Devuelve todos los dueos que NO son choferes

2.2.7. Join o Reunin.

En lgebra relacional el JOIN entre el atributo X de la relacin A con el atributo


Y de la relacin B produce el conjunto de todas las tuplas t tal que t es el
encadenamiento de una tupla a perteneciente a A y una tupla b perteneciente
a B que cumplen con el predicado A.X comp B.Y es verdadero (siendo comp
un operador relacional y los atributos A.X y B.Y pertenecientes al mismo
dominio). Si el operador relacional comp es = entonces el conjunto
resultante es un EQUI-JOIN. Si se quita uno de stos (usando una proyeccin)
entonces el resultado es un JOIN-NATURAL.

Ejemplo:
index20.jpg
2.2.8. Divisin
En lgebra relacional el operador de divisin divide la relacin A con grado m +
n por la relacin B entregando como resultado una relacin con grado m. El
atributo m + i de A y el atributo i de B deben estar definidos dentro del mismo
dominio. As el resultado de

A DIVIDIDO POR B o A / B

produce la relacin C con un slo atributo X, tal que cada valor de x de C.X
aparece como un valor de A.X, y el par de valores (x, y) aparece en A para
todos los valores y que aparecen en B.

Ejemplo:
index21.jpg
Selecciona todos los autos a cuyos choferes les caduca la licencia el
01/01/1999

S-ar putea să vă placă și