Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
En este contexto, el almacenamiento de la informacin (en forma de datos) y su disponibilidad para las
aplicaciones de negocio se hace indispensable para la normal operacin y funcionamiento de cualquier
empresa. El personal que opera las diferentes aplicaciones rutinarias interacta con la "Base de datos".
La Gerencia, que evala y controla la eficiencia de estas operaciones tambin requerir de informacin, de
manera de planificar nuevas tareas y/o corregir aquellas que no vayan con la estrategia de negocio
planteada. A su vez, las personas que deciden las estrategias de negocio (nuevos mercados, nuevas lneas
de negocio, simple supervivencia, etc.) tambin requieren informacin para toma de decisiones.
Entonces podra decirse que el segundo en importancia sera su informacin, aunque probablemente y en
muchos casos sta ltima sea ms difcil de reemplazar que el primero.
Ya sea que la base de datos sea usada para apoyar alguno de los niveles organizacionales comentados o
todos, debe elegirse la tecnologa adecuada que garantice su permanente y eficiente disponibilidad, as
como que facilite el desarrollo de aplicaciones y la administracin de la base de datos misma por parte del
personal del rea de sistemas de la organizacin.
1. GENERALIDADES
El trmino de Bases de Datos no apareci hasta mediados de los aos sesenta, poca en la cual la
informacin era representada haciendo uso de un conjunto de archivos, generalmente planos. Estos
archivos no estaban relacionados entre s, y los datos almacenados representaban las relaciones existentes
en la informacin que representaban mediante referencias simblicas y/o fsicas. La redundancia era grande
y la integridad de la informacin representada dejaba mucho que desear.
Aun as, muchos desarrolladores de software bautizaban a sus sistemas de archivos como Bases de Datos,
sin preocuparse de que cumplieran o no una serie de propiedades que deben acompaar al uso de este
trmino, cualidades que se describirn ms adelante
Para que se denomine a una Base de Datos como tal, debe satisfacer una serie de propiedades, las cuales
fueron incorporndose a estos sistemas a medida que el software para la administracin de la informacin
que se desarroll fue siendo ms eficaz. Hay que tener en cuenta que, hoy en da, no todas las bases de
datos satisfacen estas propiedades ideales, por lo que el analista de sistemas se ve obligado a una
harmonizacin de las cualidades deseables de una base de datos, a menudo contrapuestas.
Con la aparicin de los dispositivos de almacenamiento que permitan el acceso directo, generalmente
denominado aleatorio, las estructuras mediante las cuales se poda representar la informacin se fueron
haciendo ms complejas. En esta poca (histrica) se desarrollaron procedimientos de acceso directo a la
informacin, si bien seguan siendo estos procedimientos los encargados de describir la estructura del
almacenamiento de la informacin que trataban. Si la estructura cambia debido a cualquiera de las mltiples
razones posibles (cambios en los requisitos del cliente del sistema o cambios en el entorno del sistema, lo
que puede suponer la modificacin de la estructura de los registros que se almacenan en los archivos), los
procedimientos deban ser modificados para reconocer la nueva estructura de la informacin. En esta
poca, aunque el almacenamiento de la informacin s era independiente del dispositivo hardware utilizado,
la estructura de la informacin no era independiente de los procedimientos que la manejaban.
Como los sistemas son dinmicos, los requisitos cambian con el tiempo, la informacin a ser tratada en
cada problema tambin cambia y, por tanto, es necesario, de alguna manera, independizar la estructura de
la informacin (los archivos encargados de almacenarla) de los procedimientos encargados de su
tratamiento, si no se estara siempre abocado a la dedicacin de una gran cantidad de esfuerzo a la
modificacin de todos aquellos procedimientos encargados del mantenimiento de la informacin.
Cuando se reconoce que los sistemas evolucionan y que, por tanto, la informacin y la estructura de la
misma no es esttica sino que va cambiando con el tiempo, es cuando aparece el concepto de las Bases de
Datos. Si se desea que cualquier modificacin en la cantidad, contenido y estructura de la informacin que
se desea mantener acerca de un determinado problema no afecte a los procedimientos desarrollados
previamente para el mantenimiento de la misma, es necesario tener en cuenta que existe una
independencia de los datos con respecto a los procedimientos. El software, por tanto, debe referenciar los
datos al nivel de tem de datos; es decir, a nivel de atributo o propiedad de los objetos que forman parte o
intervienen en el problema, y no a nivel de objeto. As, la descripcin lgica de un registro (un objeto
abstracto de inters procedimental) puede contener, para un procedimiento, tems de datos que son
distintos a los que aparecen para otro procedimiento para ese mismo registro.
La independencia de los datos con respecto a los procedimientos supone, que la visin conceptual de los
datos, tal y como se perciben de la observacin del problema del mundo rea no tiene por qu ser la misma
que la visin fsica de los mismos, la estructura de los archivos utilizados para su almacenamiento. Si los
procedimientos encargados del mantenimiento de la informacin slo "ven" la estructura fsica de los datos y
si sta se realiza a nivel de tem de datos, un cambio en la visin conceptual no tiene por qu afectar, en
principio, a estos procedimientos.
Esta independencia de la informacin con respecto a los procedimientos que la maneja debe satisfacerse a
dos niveles de abstraccin para que sea efectiva; por tanto, se habla de:
Independencia lgica de los datos, por la que la modificacin de la representacin lgica general del
dominio del problema no afecta a los programas de aplicacin que la manipulan, siempre que esta
modificacin no elimine ninguno de los tems de datos que estos programas requieran.
Independencia fsica de los datos, por la que la distribucin de los datos en las unidades de
almacenamiento y la estructura fsica de la informacin almacenada es independiente de los cambios de
la estructura lgica general de la informacin y, por tanto, de los procedimientos que manejan la misma.
La informacin que forma parte de una base de datos puede organizarse de mltiples formas pero con
independencia de la arquitectura de la base de datos, sta debe cumplir una serie de caractersticas para
ser considerada como tal, algunas de las cuales se describirn a continuacin:
Si bien la informacin que forma parte del dominio de un problema es nica y caracteriza a ese problema o
sistema, pueden existir diferentes visiones de esa informacin. Visiones parciales en las que slo se tiene
en cuenta parte del dominio del problema y/o visiones globales que observan el problema desde diferentes
puntos de vista.
Si se considera que un procedimiento "ve" la informacin que maneja como un registro, la organizacin de
la informacin en la base de datos debe permitir que diferentes procedimientos puedan construir diferentes
registros a partir de la informacin existente en la base de datos. Estos registros (lgicos) estarn formados
por tems de datos que forman parte del dominio del problema y que son derivados del conjunto de los
tems de datos existentes en ese problema y, adems, estos registros lgicos construidos por los
procedimientos deben ser independientes de los registros fsicos existentes en la base de datos para
almacenar la informacin.
1.1.2. Desempeo
Las bases de datos deben asegurar un tiempo de respuesta adecuado en la comunicacin hombre-
mquina, permitiendo el acceso simultneo al mismo o distinto conjunto de tems de datos por el mismo o
distinto procedimiento.
Una de las principales razones por las que surgi la tecnologa de las bases de datos fue el evitar la alta
redundancia que se presentaba en los sistemas de procesamiento de la informacin debido al uso de
archivos con estructuras planas. Sin embargo, las bases de datos no evitan totalmente la redundancia en la
informacin debido a que es necesario representar todas las relaciones que existen entre las entidades que
forman parte del dominio del problema.
Un objetivo principal de las bases de datos es eliminar la redundancia siempre que ello no implique una
complejidad de la misma y/o una disminucin en el desempeo. Si existen diversas copias de un mismo
tem de datos, es necesario establecer procedimientos que garanticen la consistencia de la informacin
cuando estas copias sean utilizadas por diferentes procedimientos al mismo tiempo. Por otro lado, si slo
existe una copia de un tem de datos es necesario establecer procedimientos que permitan el acceso a esta
copia por varios procedimientos, para garantizar un desempeo aceptable, lo que complica el software de
gestin y la representacin del dominio (a cualquier nivel) del problema en la base de datos.
El diseador de la base de datos debe adoptar una solucin de compromiso, aunque siempre con el objetivo
de que exista una redundancia mnima en la base de datos.
Los usuarios de la base de datos reclaman a sta continuamente informacin sobre los datos almacenados.
Estos interrogantes contra la base de datos, que pueden ser conocidos de antemano o no, cuando se
dise la misma, solicitan informacin correspondiente a distintos tems de datos, as como sus relaciones,
representadas en la base de datos y, por aadidura, agrupados, formateados. etc., de mltiples formas.
Una base de datos debe ser capaz de responder, en un tiempo aceptable, a cualquier consulta sobre la
informacin que mantiene, sin restricciones graves en cuanto a los tems, relaciones, formato, etc.,
solicitados en la misma, y respondiendo al usuario rpidamente.
Esta caracterstica va a depender directamente de la organizacin fsica de los datos en la base de datos.
De nuevo una solucin de compromiso deber ser adoptada por el diseador de la misma. Una
organizacin fsica muy completa garantiza una respuesta rpida a las consultas, aunque requiere un mayor
coste computacional en actualizaciones (entre otras razones debido a la redundancia que se aade) y
viceversa.
1.1.5. Simplicidad
Las bases de datos deben estar basadas en representaciones lgicas simples que permitan la verificacin
en la representacin del problema que representan y, ms an, la modificacin de los requisitos en el
mismo, de tal forma que la inclusin y/o modificacin de nuevos tems de datos y relaciones no ocasione
una complejidad excesiva.
1.1.6. Integridad
La integridad de una base de datos hace referencia a la veracidad de los datos almacenados con respecto a
la informacin existente en el dominio del problema que trata la misma. Como los datos de la base de datos
son manejados por muchos usuarios haciendo uso de muchos procedimientos que tratan los mismos datos
de muchas formas, es necesario garantizar que estos datos no sean destruidos ni modificados de forma
anmala (naturalmente, este control debe tenerse en cuenta tanto con el valor de los tems de datos como
de las relaciones existentes entre ellos).
Durante el procesamiento se pueden producir fallos de muy diversa naturaleza: errores del sistema general,
del hardware, software, etc. As, los procedimientos que manejan la informacin (en insercin, borrado y
actualizacin) deben asegurar que el sistema pueda garantizar la integridad de la informacin a pesar de los
errores que se puedan producir, temporalmente, a causa de los fallos con independencia de su naturaleza.
Pero adems de garantizarse la integridad de la base de datos con respecto a este tipo de fallos, esta
integridad debe garantizarse con respecto a la veracidad de los tems de datos y sus relaciones con
respecto al dominio del problema. As, en una base de datos deben establecerse procedimientos que
verifiquen que los valores de los datos se ajustan a los requisitos y restricciones extradas del anlisis del
problema.
La seguridad de una base de datos hace referencia a la capacidad de sta para proteger los datos contra su
prdida total o parcial por fallos del sistema o por accesos accidentales o intencionados a los mismos.
Mientras que la privacidad de una base de datos hace referencia a la reserva de la informacin de la misma
a personas no autorizadas.
Seguridad contra la destruccin de los datos causada por el entorno: fuego, robo, inundaciones y
cualquier otra forma.
Seguridad contra la destruccin de los datos causada por fallos del sistema (hardware y software), de
forma que los datos puedan reconstruirse.
Seguridad contra accesos no autorizados a la base de datos.
Seguridad contra accesos indebidos a los datos.
Por lo que deben existir en la base de datos tanto procedimientos de recuperacin de la informacin perdida
total o parcialmente por cualquier causa, como procedimientos que supervisen el acceso a los datos por los
usuarios de la base de datos.
1.1.8. Afinacin
La afinacin hace referencia a la organizacin fsica de la informacin de la base de datos, la cual determina
directamente el tiempo de respuesta de los procedimientos que operan sobre la misma.
Si una de las caractersticas que debe tener una base de datos es un buen desempeo, la organizacin
fsica de los datos debe ser tal que sta pueda ser alcanzada. Pero la base de datos evoluciona con el
tiempo, el volumen de informacin va hacindose cada vez ms importante y, por aadidura, tanto los tems
de datos como las relaciones entre ellos pueden ampliarse y/o modificarse. Esto implica que una buena
organizacin fsica de los datos en un momento dado, puede no ser tan buena en otro.
Por ello, la base de datos debe ser flexible a la modificacin de esta organizacin fsica, lo que puede
suponer adems una migracin de los datos segn evolucione la base de datos, sin que por ello se vean
afectados los procedimientos u otras representaciones de los datos pero, sin embargo, se consiga un
desempeo ms alto.
Es aceptado que el dominio de un problema, el problema en s, cambia evolucionando con el tiempo. Las
necesidades de la organizacin cambian continuamente y, por lo tanto, cambia la informacin
correspondiente al subsistema o dominio del problema de la misma. Una base de datos debe estar abierta
a-estos cambios de forma que no afecten, o afecten lo mnimo posible, a los procedimientos existentes para
manejar la informacin que mantiene.
Por otro lado, una base de datos debe estar abierta a reconocer informacin organizada fsicamente por
otro software (de base de datos o no) de distinta forma a la que utiliza la base de datos. Informacin
existente antes de la implantacin, por la empresa, de la base de datos (actual) y que es valiosa para la
organizacin. Adems, el avance tecnolgico har que la base de datos actual pueda ser cambiada con el
tiempo, por lo que esta necesidad, aunque no es inminente para la empresa, s ser una caracterstica
importante a exigir a estos sistemas.
Mayor eficacia en la captura, validacin y entrada de los datos. Al minimizarse la redundancia los
datos, se capturan y se validan una sola vez aumentando as el rendimiento de todo el proceso
previo al almacenamiento.
Ms facilidades para compartir los datos por el conjunto de usuarios. Cada usuario no es
propietario de los datos, ya que comparten programas, existe disponibilidad de datos, siempre y
cuando estn autorizados. Hay mayor transparencia en la informacin existente ya que los datos
de la base estn relacionados en un catalogo o diccionario de datos.
Relativas a la implantacin
Costos en equipos lgicos y fsicos. Equipo fsico (instalaciones, ampliaciones, hardware, etc.)
equipo lgico (sistema operativo, programa, compiladores, generadores de informes, generadores
de aplicaciones, etc.).
Larga y difcil puesta en marcha. Las dificultades aparecen cuando la BD crece en informacin y
cuando hay mayor demanda de usuario y consultas de datos.
No rentabilidad a corto plazo. Por el costo en personal y equipos y el tiempo que tarda en estar
operativa.
Para que una base de datos pueda satisfacer las caractersticas antes sealadas, y otras ms, es necesario
que los usuarios de la misma tengan una visin abstracta de los datos almacenados. Es decir, el usuario, a
diferencia de lo que ocurra con el uso de las organizaciones clsicas para el almacenamiento de la
informacin, no tiene necesidad de conocer cmo se organizan los datos fsicamente en la base de datos.
El usuario, experto o lego en informtica, conoce las caractersticas del problema que representa la base de
datos. El usuario conoce la organizacin, todo o parte del sistema, la informacin que se maneja, las
relaciones existentes entre esta informacin, cmo debe ser tratada esta informacin y en qu tiempo. En
definitiva, el usuario conoce el dominio del problema que va a ser tratado con una base de datos. Si es sta
la visin de los datos que la base de datos presenta al usuario, ste podr utilizar el sistema e integrarse en
l adecuadamente.
Si por el contrario, la base de datos presenta al usuario la visin de cmo est organizada la informacin
fsicamente, tanto los datos como las mltiples relaciones que pueden existir entre ellos, ste no
reconocera el problema de la organizacin que est tratando si no tiene una alta formacin para reconocer,
en ocasiones, estructuras fsicas muy complejas.
Dependiendo de quin acceda o use la base de datos, sta debe presentarle una visin de los datos que
sea capaz de reconocer, interpretar y manejar. Adems, .si una base de datos debe satisfacer las
caractersticas antes expuestas, la organizacin fsica de los datos debe ser lo ms independiente posible
de los procedimientos que manejan la informacin y de los posibles cambios que surjan en el dominio del
problema.
Se puede entonces hablar de que existen tres visiones de los datos en una base de datos:
Visin Externa. Es la visin de los datos que tienen los usuarios finales de una base de datos. Un
usuario (un operador de terminal) trata slo una visin parcial de la informacin, slo aquella que
interviene en el dominio de actividad (el subsistema de la organizacin en el que interviene). Este
usuario debe ver la informacin que maneja como un registro, una ficha de datos (un formulario) con
independencia de a qu objeto pertenecen los tems de datos, correspondientes a ese registro, en el
dominio del problema (sistema) y en qu relaciones se ven implicados esos datos.
Por otro lado, otro usuario (del mismo o cualquier otro subsistema) ver tambin su registro particular de
informacin cuyos tems de datos podrn ser comunes, o no, al de otros registros particulares de otros
usuarios.
Estas visiones particulares de los usuarios son proporcionadas por los procedimientos o programas de
aplicacin que slo manejan parte de la informacin de la base de datos.
Visin Conceptual. Es la visin o representacin del problema tal y como ste se presenta en el
mundo real. Una base de datos representa la informacin que es observada en el mundo real con
respecto a un determinado problema. En esta observacin, en el anlisis del problema, se determinan
los objetos o entidades que intervienen en el mismo, las propiedades o caractersticas de estas
entidades y las relaciones o dependencias que existen entre ellos.
La visin conceptual de una base de datos es una representacin abstracta del problema e
independiente, en principio, de cmo va a ser tratada esta informacin, de qu visiones externas pueda
tener y de cmo esta informacin pueda ser almacenada fsicamente. As, la visin conceptual de una
base de datos no cambia a no ser que cambie la naturaleza del problema.
Visin Fsica. La visin fsica de una base de datos es la representacin de cmo la informacin es
almacenada en los dispositivos de almacenamiento. Esta visin describe las estructuras u
organizaciones fsicas, dispositivos, volmenes, archivos, tipos de datos, punteros, etc., estructuras de
mayor o menor complejidad que representan el dominio del problema de una forma entendible por el
sistema informtico.
Si los usuarios de las bases de datos pueden percibir tres visiones diferentes de los datos, es debido a que
en una base de datos existen, al menos, tres formas diferentes de descripcin de la informacin que
almacena. Pero, como el dominio del problema que representa una base de datos es el mismo, entonces
estas tres formas de descripcin son, en realidad, tres niveles de abstraccin diferentes que describen un
mismo problema (vase la figura 1.1).
En cada nivel se describen aquellos objetos de inters que pueden ser entendidos por los usuarios, de ese
1
nivel, de la base de datos . As, el usuario final slo entiende de registros (visin o nivel de abstraccin
externo) o formas de comunicacin similares a los documentos externos que son manejados en la
organizacin, mientras que el diseador o analista de sistemas slo entiende de tipos de entidades o clases
de objetos que intervienen en el dominio del problema que la organizacin desea que se trate mediante una
base de datos, de las relaciones existentes entre ellas y de los procedimientos que son llevados a cabo en
la organizacin para la solucin del problema que se est tratando (nivel de abstraccin conceptual) y, por
otro lado, es el administrador de la base de datos el encargado de describir el nivel fsico para determinar
aquella organizacin fsica que pueda garantizar el desempeo ptimo del sistema (nivel de abstraccin
fsico o interno).
La descripcin de los datos a estos tres niveles de abstraccin diferentes garantiza (no del todo, como
veremos ms adelante) la independencia de los datos, uno de los objetivos principales de las bases de
datos. Es decir:
Que pueda ser modificada la organizacin fsica de los datos sin que por ello haya cambiado o deba
cambiar la descripcin conceptual, y sin que por ello tengan .que ser modificados los programas de
aplicacin (nivel de abstraccin externo) que manipula esta informacin.
1
Como se describir ms adelante, una base de datos tiene diferentes tipos de usuarios. los cuales slo observan aquella parte de la
base de datos que les interesa y a un nivel de abstraccin que son capaces de entender.
Ing. Henry George Maquera Quispe
Base de Datos Ingeniera de Sistemas y Computacin - 8
Que pueda ser modificada la representacin conceptual del problema que est siendo representado en
la base de datos, debido a la consideracin de nuevas entidades, o relaciones, o cambios en las
caractersticas de las mismas, y sin que por ello tenga que ser modificada la estructura fsica de la
informacin (nivel interno) (naturalmente, si se consideran nuevos objetos, stos debern ser
reflejados), ni los programas de aplicacin (nivel de abstraccin externo), naturalmente siempre y
cuando no se eliminen de la representacin conceptual objetos necesarios o requeridos en estos otros
niveles.
Evidentemente, las visiones externas pueden cambiar conforme nuevos requisitos o necesidades
funcionales o de operacin son incorporados al dominio del problema por la organizacin y/o su
entorno, y sin que por ello deba ser modificada ninguna de las descripciones de los datos a ninguno de
los restantes niveles de abstraccin.
Para que exista esta independencia tan deseada de los datos los tres niveles de abstraccin mediante los
cuales los datos son descritos deben ser completamente independientes, lo cual no es del todo cierto en la
mayora de las bases de datos. Sin embargo, puede conseguirse una buena independencia de los datos si:
Si bien las representaciones externas son dependientes de la representacin conceptual por el hecho
de que los registros (representaciones externas) deben estar formados por tems de datos existentes y,
por tanto, representados en el nivel conceptual (lo mismo se puede decir entre el nivel fsico y
conceptual), la estructura de estos registros (nmero de tems y disposicin de los mismos) debe ser
independiente de cmo estos tems han sido representados en el nivel conceptual y de las relaciones
que mantienen en el mismo.
El nivel conceptual describe el sistema de la organizacin, o aquella parte del sistema, el dominio del
problema, que se desea tratar. Una descripcin conceptual de calidad describir todas y cada una de las
entidades o clases de objetos que intervienen en el problema, sus propiedades y atributos, as como las
caractersticas de las relaciones existentes entre las mismas. En este nivel se describe cada uno de los
tems de datos o elementos de informacin que intervienen en el comportamiento del sistema y cuya
informacin es necesaria considerar.
Pero existen muchas formas de describir un sistema, todas ellas ms o menos vlidas y correctas para
obtener una visin conceptual de un determinado problema, aunque cualquier procedimiento no puede
reconocer e interpretar cualquier descripcin. Se puede hacer una descripcin severa de un problema
utilizando tcnicas como los diagramas de estructuras, de contexto, tablas de cualquier tipo
(procesos/datos, historia de la vida de la entidad, procesos/procesos, entidad/procesos, etc.), diagramas de
entidades y relaciones, rboles, tablas, redes, etc. y, sin embargo, no todos los procedimientos son capaces
de interpretar cualquier clase de representacin conceptual.
De hecho, como se tratar ms adelante, existen muchas formas de representar de forma abstracta un
fenmeno (un problema) observado del mundo real. Una representacin abstracta (conceptual) de un
problema supone la aplicacin de una serie de reglas que restringen y dirigen la forma en que ese problema
es representado. Pero, por otro lado, el fenmeno del mundo real o problema que se est representando
debe ser y, de hecho lo es, independiente de la forma en que el ser humano sea capaz de representado.
Ing. Henry George Maquera Quispe
Base de Datos Ingeniera de Sistemas y Computacin - 9
Por ello, se puede hablar de un cuarto nivel de abstraccin en la representacin de la informacin en una
base de datos (ver figura 1.2), el nivel lgico o cannico.
La descripcin conceptual es independiente de las descripciones externas e interna, puesto que slo
depende del problema del mundo real objeto de la representacin. Si el problema no cambia, no cambia la
representacin conceptual, aunque cambien los mecanismos por los cuales el problema ser tratado y, por
tanto, alguna de las otras representaciones.
La inclusin de este nuevo nivel de representacin del dominio del problema, un nivel dependiente del
software encargado de manipular la informacin, va a garantizar la independencia de la informacin en una
base de datos.
Si bien, como se ha descrito hasta ahora, es posible la descripcin de los datos a niveles de abstraccin
diferentes para que se garantice la independencia de la informacin con respecto a los procedimientos que
la manipulan a cualquiera de los niveles (externo e interno), es obvio pensar que esta independencia tendr
unas restricciones que limitan su mbito.
Si la descripcin externa (los registros que ven los usuarios a travs de los programas de aplicacin) debe
ser derivada de la descripcin lgica, el nivel de detalle de la descripcin lgica limitar, por tanto, la
independencia por la cual pueden ser las descripciones externas derivadas.
Si, por ejemplo, el nivel de detalle con que se pueda representar la informacin en el nivel lgico es al nivel
de entidad, entonces las descripciones externas debern considerar para la descripcin de cada registro a
entidades descritas en el nivel lgico; es decir, un registro que deba considerar a dos entidades descritas en
el nivel lgico deber considerar a todos los tems de datos que forman parte de estas entidades con
independencia de si son manejados por el programa de aplicacin que considera ese registro.
Mientras que si en el nivel lgico la informacin puede describirse al nivel de agregado de dato, o tem de
dato, los registros descritos en el nivel externo podrn considerar slo aquellos tems de datos de las
entidades descritas en el nivel lgico que sean de inters para el programa de aplicacin.
Al nivel de detalle en que pueden ser descritas las representaciones externas derivadas de la
representacin lgica se le denomina Granularidad. A mayor granularidad de una representacin externa
(menor informacin a considerar) mayor ser la independencia, y viceversa. Es decir, una representacin
externa ser ms independiente de la representacin lgica si pueden construirse registros en base a tems
de datos en lugar de en base a agregados de datos o en base a entidades definidas o existentes en la
representacin lgica. Una mayor granularidad proporciona una mayor independencia, pero al mismo
tiempo una mayor complejidad en el software utilizado para realizar estas representaciones y, por
aadidura, en la organizacin de la informacin para que estas representaciones puedan ser almacenadas
fsicamente.
Suponiendo que en una base de datos pueda existir una independencia completa entre las distintas
representaciones de los datos con respecto a los procedimientos que manejan la informacin para cada
representacin, es obvio que si se desea mantener la integridad de la representacin de un problema, la
integridad de la base de datos y los procedimientos que manejan cada representacin no pueden realizar
acciones que puedan dar lugar a una inconsistencia entre el problema representado en cada nivel,
simplemente porque el problema es el mismo, con independencia del nivel de abstraccin al cual se
represente.
Para garantizar la integridad de la base de datos es, por tanto, necesario que en algn instante esos
procedimientos que manipulan las representaciones a un determinado nivel de abstraccin tengan en
cuenta cmo se representa la informacin en los otros niveles. En ese instante las diferentes
representaciones de los datos se vinculan entre s y, por tanto, la independencia entre ellas, se pierde. A
este proceso de vinculacin de las diferentes representaciones de la informacin en la base de datos se le
denomina ligadura, y sta es de dos tipos:
Ligadura lgica, correspondiente al proceso de vinculacin que se produce entre las representaciones
externas y la lgica.
Si cuando se produce la ligadura se vinculan las representaciones de los datos en los diferentes niveles de
abstraccin, ello implica que la independencia de los datos se pierde y, por tanto, sera conveniente retrasar
lo ms posible el proceso de vinculacin. El proceso de vinculacin entre las distintas representaciones
puede realizarse en cualquiera de las siguientes fases: Compilacin, enganche, ejecucin y acceso a la
base de datos.
La independencia de los datos ser mayor cuanto ms tarda se realice la ligadura. As, aquellos sistemas
que realicen la ligadura en la fase de acceso a los datos mantendrn esta independencia hasta el ltimo
momento y slo vincularn aquellos datos a los que se pueda acceder y se vean involucrados en cada uno
de los accesos. Mientras que los sistemas que realizan la ligadura en la fase de compilacin pierden la
independencia de los datos en el momento en que los programas de aplicacin se traducen a cdigo objeto.
Si la ligadura se realiza en una fase muy temprana (compilacin, enganche) implica que los programas de
aplicacin debern ser recompilados (o reenlazados) cada vez que se produzca una modificacin de las
distintas representaciones de los datos (lgica y fsica), aunque por otro lado el desempeo de los mismos
ser alto debido a que el tiempo de cmputo que conlleva el proceso, de ligadura se consume slo una vez
y no en el arranque del programa o en cada acceso a los datos.
Por otro lado, el que se realice la ligadura, en una fase tarda (en cada acceso a los datos) supone que se
podrn modificar las representaciones lgica y fsica de los datos sin que por ello deban traducirse de nuevo
a cdigo mquina los programas de aplicacin. Sin embargo, el desempeo de estos programas ser en
principio menor debido a que necesitan un coste computacional aadido para realizar el proceso de
ligadura, bien en el arranque del programa o en cada uno de los accesos a los datos.
La solucin de compromiso adoptada por muchos sistemas es que el proceso de ligadura se realice en la
fase de ejecucin. Esto supone un coste computacional aadido slo en el arranque del programa de
aplicacin, pero libera de una continua recompilacin de las aplicaciones cada vez que se alteren las
representaciones de los datos.
Reticular Jerrquico
Relacional
Lenguajes
OO
Informacin
BDOO Restrospectiva
Hipermedia Inteligencia
Artificial
BD inteligentes
Versatilidad en las Relaciones. Entre datos existen diversas y complejas relaciones. El sistema debe
tener capacidad de representar estas relaciones y posibilitar cambios futuros.
Costo mnimo. Usar tcnicas, software y hardware que minimicen los costos de operacin, pero
asegurando un buen desempeo.
Redundancia mnima. Siempre que no signifique aumentar los costos o si pueden ser tiles a algn
usuario del sistema.
Integridad. Proteger la BD contra las operaciones que introduzcan inconsistencias en los datos.
Reserva. Derecho de decidir a quien, como, cuando, en que medida y en que forma se permite el
acceso o transmisin.
Transparencia. Buena interfaz entre el usuario y las operaciones y programas que administran las BD
Interfaz con el pasado. Tener en cuenta la compatibilidad de este con el anterior en cuanto al software y
el hardware.
Interfaz con el futuro. El programador debe pensar en programas compatibles con los nuevos sistemas,
de modo que estos no se hagan obsoletos y haya necesidad de crear nuevos programas y reestructurar
la organizacin de BD.
Afinacin constante. Para mejorar el desempeo del sistema y la interfaz con el usuario.
En las secciones previas se han descrito las caractersticas que debe tener una base de datos y las
diferencias con los sistemas de almacenamiento convencionales, luego se puede, en estos momentos,
tener una idea clara de lo que es una base de datos. Aunque al principio los organismos de estandarizacin
intentaron dar una definicin a este trmino, sta no fue totalmente aceptada, surgiendo a lo largo de los
aos diferentes definiciones que intentaron adaptarse a los cambios tecnolgicos y nuevas caractersticas o
propiedades que se les ha ido exigiendo a las bases de datos.
As, han sido propuestas innumerables definiciones para las bases de datos las cuales intentan exponer en
una corta definicin, tarea bastante difcil, todas aquellas caractersticas exigibles a las bases de datos.
La siguiente es una definicin de una base de datos, la cual con toda seguridad es una recopilacin de
muchas otras ya propuestas:
Una Base de Datos es una coleccin de archivos relacionados que almacenan tanto una representacin
abstracta del dominio de un problema del mundo real cuyo manejo resulta de inters para una organizacin,
como los datos correspondientes a la informacin acerca del mismo. Tanto la representacin como los
datos estn sujetos a una serie de restricciones, las cuales forman parte del dominio del problema y cuya
descripcin est tambin almacenada en esos archivos.
Se trata de una coleccin de archivos relacionados; es decir, a diferencia de los sistemas clsicos que
manejan organizaciones clsicas de almacenamiento, en una base de datos los archivos no son
independientes entre s, la base de datos puede ser vista como un nico depsito en el cual se
almacena toda la informacin correspondiente al dominio de un problema.
En estos archivos se encuentra almacenada tanto la representacin abstracta del dominio del problema:
es decir, la visin fsica, lgica y cada una de las visiones externas de la informacin, como los datos
conocidos acerca del mismo en un momento dado.
El que tanto la representacin como los datos estn sujetos a una serie de restricciones implica:
Que las restricciones innatas al problema estn representadas. Restricciones acerca de las
propiedades de las entidades, datos y relaciones existentes en el dominio del problema.
Que el acceso a la informacin almacenada est sujeto a una serie de restricciones que garantizan
la integridad de la misma. Estas restricciones impiden que algn procedimiento viole las reglas que
vinculan los datos entre los diferentes niveles de representacin.
Es importante conocer la diferencia entre lo que es una base de datos y/o que es un Sistema de Gestin de
Bases de Datos, trminos que se confunden muy a menudo cuando se est trabajando con la informacin
haciendo uso de esta tecnologa.
Hasta estos momentos se ha estado tratando nicamente el trmino de bases de datos, aportando una
definicin en esta misma seccin. Cuando se habla de bases de datos se .habla de informacin que est
almacenada cumpliendo toda una serie de caractersticas y restricciones como las que se han expuesto
anteriormente.
Pero para que la informacin pueda ser almacenada como se ha descrito y el acceso a la misma satisfaga
las caractersticas exigidas a una base de datos para ser denominada como tal, es necesario que exista una
serie de procedimientos (un sistema software) que sea capaz de llevar a cabo tal labor. A este sistema
software es a lo que se le denomina Sistema de Gestin de Bases de Datos.
As, un SGBD es una coleccin de programas de aplicacin que proporcionan al usuario de la base de
datos los medios necesarios para realizar las siguientes tareas:
Definicin de los datos a los distintos niveles de abstraccin (fsico, lgico y externo).
Manipulacin de los datos en la base de datos. Es decir, la insercin, modificacin, borrado y acceso o
consulta a los mismos.
Mantenimiento de la integridad de la base de datos. Integridad en cuanto a los datos en s, sus valores y
las relaciones entre ellos.
Para realizar todas las funciones descritas en la seccin anterior, y otras ms, es necesario que el SGBD
cuente con una serie de componentes cuya funcin sea el desarrollo de las mismas de forma que satisfaga
los requisitos impuestos para estos sistemas.
Cuando se utiliza el trmino de componentes de un SGBD se est realizando una, y quizs peligrosa,
generalizacin, puesto que estos componentes son muy variados. As, un SGBD cuenta tanto con
herramientas software como con personal humano especializado en la realizacin de las tareas y acciones
necesarias para la gestin adecuada de la informacin.
Si para garantizar la independencia de los datos es necesaria la definicin de stos a diferentes niveles de
abstraccin es, por tanto, necesaria que el SGBD cuente con un componente que permita la realizacin de
esta tarea. El lenguaje de definicin de los datos - Data Definition Language (DDL) - es un lenguaje artificial
basado en un determinado modelo de datos que permite la representacin lgica de los datos.
Generalmente, los DDL de los diferentes SGBD son lenguajes simples basados en una gramtica sencilla
que cuenta con un conjunto muy reducido de morfemas, lo que garantiza la definicin no ambigua de los
datos. Esta definicin debe ser compilada para dar lugar a una representacin orientada a la mquina que
es la que utiliza el SGBD en tiempo de procesamiento.
En la mayora de los SGBD el mismo lenguaje DDL permite la definicin de los datos en el nivel de
representacin fsico, si bien en otros es un subcomponente de ste denominado lenguaje de definicin del
almacenamiento de los datos - Data Storage Definition Language (DSDL) -. En cualquier caso, haciendo
uso del DDL o un subcomponente de ste, el DSDL, se definen los datos correspondientes al dominio de un
problema a los dos niveles de abstraccin, y a esta definicin de los datos se le denomina Esquema de la
Base de Datos.
Las caractersticas del problema a un nivel de descripcin lgico o intencional. Esta definicin no variar
a no ser que cambie el problema.
Cada una de las clases de objetos, y sus propiedades, que formen parte del dominio del problema o
sistema que se desea tratar con el SGBD.
Cada una de las relaciones, y sus propiedades, existentes entre estas clases de objetos.
Todas aquellas restricciones concernientes tanto a las clases de objetos y sus propiedades corno a
las relaciones entre ellos.
Las caractersticas del problema desde un punto de vista fsico u operacional. Esta descripcin puede
variar con el tiempo en base a las necesidades o requisitos operacionales, y contemplar, por ejemplo:
Las unidades fsicas en las cuales los datos van a ser almacenados.
Los volmenes y archivos utilizados.
Las caractersticas fsicas y lgicas de los medios de almacenamiento y mtodos de acceso a la
informacin: clusters, bloques, ndices, tablas hash, etc.
Adems del DSDL, el DDL cuenta con un sublenguaje encargado del control y seguridad de los datos, el
cual se denomina lenguaje de control de datos -Data Control Language (DCL)- y permite el control del
acceso a la informacin almacenada en el diccionario de datos (definicin de privilegios y tipos de acceso),
as corno el control de la seguridad de los datos.
Otro componente esencial de los SGBD es el lenguaje de manipulacin de los datos -Data Manipulation
Language (DML)-. El DML es un lenguaje artificial mediante el cual se realizan dos funciones bien diferentes
en la gestin de los datos:
2. La manipulacin de los datos; es decir, la insercin, borrado, modificacin y recuperacin de los datos
almacenados en la base de datos.
Al igual que el DDL, el DML est basado en un modelo de datos y, por tanto, los SGBD basados en distintos
modelos de datos tienen diferente DML. Se trata tambin de un lenguaje basado en una gramtica
completa, sencilla y, generalmente, fcil de entender por usuarios no expertos.
Dependiendo del modelo de datos en el cual se soportan y, por supuesto, del SCBD, existen dos tipos de
DML:
Procedimentales: los cuales requieren que en las sentencias del lenguaje se especifique qu datos se
van a manipular, qu se desea obtener y qu acciones/operaciones deben realizarse para ello.
Ing. Henry George Maquera Quispe
Base de Datos Ingeniera de Sistemas y Computacin - 14
No Procedimentales: los cuales slo requieren que en las sentencias del lenguaje se especifique qu
datos se van a manipular y qu se desea obtener, siendo el propio DML el encargado de determinar los
procedimientos ms efectivos para ello.
Naturalmente, estos ltimos son mucho ms fciles de entender y manejar por usuarios no expertos, si bien
cuando los requisitos en cuanto al tiempo de respuesta del SGBD en los procesos de manipulacin de los
datos son importantes, ser necesaria la modificacin del cdigo que generan estos lenguajes para
asegurar un desempeo adecuado del sistema.
Como se ha comentado anteriormente, el DML tiene tambin la funcin de describir la visin externa de los
datos. Efectivamente, mediante el DML se definen las vistas o visiones parciales que los usuarios tienen del
esquema de la base de datos definido mediante el DDL. Estas vistas de los datos son denominadas
Subesquemas y pueden realizarse de varias formas:
Haciendo uso nica y exclusivamente del DML. As, con sentencias propias de este lenguaje se definen
distintas visiones parciales (orientadas al usuario final) del esquema de la base de datos. Estas visiones
parciales (vistas) son, generalmente, almacenadas en el diccionario de datos.
Haciendo uso de un lenguaje husped (host) como C, COBOL, FORTRAN, etc., mediante el cual se
realizan los programas de aplicacin que permiten al usuario manipular los datos de la base de datos.
En el cdigo fuente de estos programas estn presentes sentencias del DML, que son las encargadas
de estos procesos, mientras que las sentencias realizadas en el lenguaje husped tienen como objetivo
el control del flujo de la informacin y la interfaz de usuario.
En este caso, los programas fuentes deben de ser precompilados, antes de ser compilados, con el
compilador correspondiente, para generar el cdigo mquina, y convertir las sentencias DML inmersas en el
cdigo fuente a un cdigo entendible por el compilador del lenguaje husped.
El diccionario de datos es uno o un conjunto de archivos que contienen informacin acerca de los datos que
pueden ser almacenados en la base de datos. Se trata de una metabase de datos; es decir, una base de
datos (intencional) que contiene informacin sobre otra base de datos (extensional).
En el diccionario de datos se almacenan todas las definiciones realizadas por el DDL sobre el problema que
va a ser tratado por el SGBD y, algunas (las que se deseen) de las realizadas por el DML. As, en el
diccionario de datos se encuentra almacenado:
Es decir, la representacin de los datos a los tres niveles de abstraccin. Pero adems, en el diccionario de
datos se encuentra mucha ms informacin almacenada; informacin correspondiente con:
Las restricciones de privacidad y acceso a los datos almacenados en la base de datos. Estas
restricciones han sido definidas haciendo uso del DDL y/o su sublenguaje, el DCL.
Otra serie de informacin que permite garantizar la integridad de los datos almacenados en la base de
datos.
Si los datos se definen a tres niveles de abstraccin, es necesario que en los procedimientos de acceso a
estos datos se haga referencia en algn momento a las distintas representaciones de un mismo dato (el
proceso de ligadura o vinculacin). Por tanto, en el diccionario de datos, adems de almacenarse la
representacin de los datos al nivel externo, lgico y fsico, se almacena un conjunto de reglas que permite
vincular los mismos datos desde un nivel de abstraccin y representacin a otro. A este conjunto de reglas
se le denomina Mapa de reglas (Mapping rules) y consiste en un conjunto de parmetros que definen qu
procedimientos deben realizarse para vincular o transformar un mismo dato desde un nivel de
representacin a otro. A este conjunto de procedimientos o funciones que realizan la transformacin de los
datos entre los diferentes niveles de representacin se le denomina Mapa de datos (Data mapping).
Una serie de reglas para definir la correspondencia entre las representaciones fsica y cannica de los
datos.
Una serie de reglas para definir la correspondencia entre la representacin cannica de los datos y cada
una de las representaciones externas de los mismos.
El que este componente realice sus funciones asignadas correctamente depender de muchos factores,
entre los que se pueden citar: el volumen de la base de datos, las estructuras fsicas definidas para el
almacenamiento de los mismos, los procedimientos desarrollados para la manipulacin de los datos, las
caractersticas del hardware y la calidad del propio gestor.
Puede verse al gestor de la base de datos como un intrprete entre el usuario (de cualquier tipo) y los datos.
Toda operacin que se quiera realizar contra la base de datos debe ser previamente permitida por el gestor
de la misma, el cual, una vez interpretada y validada, o bien realiza la operacin devolviendo el resultado de
la misma al programa/procedimiento que la solicit, o bien la rechaza. As, el gestor de la base de datos es
el responsable de:
Garantizar la privacidad de los datos, permitiendo slo el acceso a los mismos a los usuarios
autorizados.
Garantizar la seguridad de los datos, realizando los procedimientos necesarios para que los datos
puedan ser recuperados tras un fallo que ocasione una prdida o deterioro temporal de los mismos.
Garantizar la integridad de los datos, gestionando que los datos que se almacenan en la base de datos
satisfagan las restricciones definidas en el esquema de la misma.
Garantizar el acceso concurrente a la base de datos de forma que varios usuarios puedan acceder al
mismo o distinto dato sin que ello ocasione una prdida de la integridad de la base de datos.
lnteraccionar con el sistema operativo y, en particular, con el gestor de archivos del mismo, de forma
que los procedimientos DML puedan ser entendidos por el sistema operativo para el correcto
almacenamiento y recuperacin de la informacin. Para ello, el gestor de la base de datos cuenta con
un subcomponente denominado procesador de consultas.
Datos a
manejar
Software Hardware
Es uno de los componentes ms complejos del SGBD, aunque su complejidad depender del propio SGBD
y de las caractersticas del sistema operativo y hardware en el cual se implante. As, en aquellos sistemas
Ing. Henry George Maquera Quispe
Base de Datos Ingeniera de Sistemas y Computacin - 16
en los que existe la restriccin de que no puedan acceder varios usuarios simultneamente a la base de
datos, o la seguridad de los datos sea llevada nicamente por el usuario de la base de datos, este
componente ser ms simple.
Otro de los componentes de los SGBD es el administrador de la base de datos -Data Base Administrator
(DBA)-. Se trata de un componente humano de suma importancia en el resultado que el uso de las bases de
datos va a tener en la resolucin de un determinado problema. El DBA tiene una serie de responsabilidades
en cuanto a la definicin, administracin, seguridad, privacidad e integridad de la informacin que es
tratada, as como 'en el desempeo del SGBD en el procesamiento de la misma.
La definicin del esquema cannico o lgico de la base de datos. Es decir, la codificacin mediante"
sentencias del DDL del conjunto de definiciones que representan las caractersticas del problema que
va a ser tratado haciendo uso del SGBD. En esta definicin se incluyen aquellas especificaciones
necesarias para que el SGBD pueda mantener la integridad de los datos almacenados en la base de
datos.
La definicin del esquema fsico de la base de datos. Es decir, la especificacin de las estructuras de
almacenamiento y los mtodos de acceso a la informacin almacenada en los dispositivos fsicos de
almacenamiento. Esta definicin se realiza haciendo uso del DSDL (o el propio DDL) mediante un
conjunto de sentencias que son compiladas y traducidas a una especificacin entendible por la mquina
y que es almacenada en el diccionario de datos junto con el esquema cannico.
La definicin de los subesquemas o visiones externas o de usuario de la base de datos. Aquellas vistas
parciales de la base de datos que son almacenadas en el diccionario de datos son definidas por el DBA,
el cual es el nico que tiene acceso y, por tanto, privilegios suficientes para la gestin de este
componente.
Tradicionalmente se ha considerado a los usuarios de las bases de datos como un componente ms de los
SGBD, posiblemente debido a que estos sistemas fueron de los primeros en considerar a stos como una
parte importante del correcto, adecuado y necesario funcionamiento de los mismos.
Naturalmente, en un sistema de esta complejidad existen muchos tipos de usuarios que acceden e
interaccionan con el mismo, as se pueden considerar:
Usuarios Terminales: Aquellos usuarios que, a travs de programas de aplicacin, interaccionan con la
base de datos. Son usuarios no especializados que tienen la visin del problema que les proporcionan
las visiones externas o subesquemas que utilizan los programas de aplicacin a los cuales tienen
privilegios de ejecucin.
Usuarios Tcnicos: Aquellos que desarrollan los programas de aplicacin que van a ser utilizados por
los usuarios terminales de la base de datos. Son profesionales informticos que, haciendo uso de
lenguajes de programacin, preparan procedimientos que son invocados desde una interfaz orientada al
usuario para realizar las operaciones necesarias en la gestin del problema.
Usuarios Especializados: Aquellos que utilizan el SGBD como una herramienta en el desarrollo de
otros sistemas ms o menos complejos. Estos usuarios necesitan una buena gestin de la informacin
que es procesada por otro sistema comercial o desarrollado por ellos y, por tanto, utilizan al SGBD
como un submdulo de sus sistemas particulares, interaccionando con l en la medida que le es
necesario. Por ejemplo, en el desarrollo de sistemas expertos, el SGBD puede ser el encargado de la
gestin de la base y metabase de conocimiento del mismo.
Usuarios Crticos: Cuya denominacin, aunque algo ruda, consideramos la ms acertada. Estos
usuarios pueden tener desde mucho, hasta ningn conocimiento tcnico de la tecnologa de base de
datos, y/o del SGBD en el cual se soporta la base de datos con la cual interactan pero,
independientemente de ello, requieren de la base de datos informacin en un formato, detalle y bajo
unos requisitos que generalmente no estn previstos de antemano (en el proceso de anlisis del
problema y diseo del esquema) y en un tiempo mnimo.
Se trata de aquellos usuarios gerenciales o pertenecientes al staff de las empresas en las cuales se ha
instalado la base de datos, los cuales, en base a expectativas de gestin, administracin, mercado,
marketing o simplemente por inters personal, realizan consultas no previstas sobre la informacin
almacenada en la base de datos.
Como hoy en da la mayora de los SGBD cuenta con un lenguaje de cuarta generacin integrado en su
producto, las interacciones de estos usuarios contra la base de datos pueden realizarse sin que los
usuarios tcnicos tengan que estar preparndoles continuamente procedimientos nuevos, y de un corto
tiempo de vida, para la realizacin de las mismas. Sin embargo, al tratarse de consultas complejas, y
debido a que el lenguaje de cuarta generacin no genera un cdigo objeto efectivo para interaccionar
con la base de datos, y al no estar previstas las estructuras fsicas para este tipo de interrogantes, el
desempeo de estos procesos es bajo, ocasionando la crtica generalizada de estos usuarios, los
cuales son, generalmente, los que tienen poder decisorio sobre la in versin y contratacin en la
empresa (de ah el nombre que los autores han dado a los mismos).
Estructura lgica del usuario. Esquema Externo. Visin de la BD del usuario. Deben encontrarse los
datos y relaciones que necesita el usuario. Restricciones de uso (insertar, modificar, eliminar, consultar,
etc.) aparecen los niveles de acceso a los datos y esto depende de los SGBD.
Usuario
Estructura Fsica A
B C
-Esquema Interno- D
E F
Estructura lgica global. Esquema conceptual. Visin global de los datos. Incluye la descripcin de
todos los datos y las interrelaciones entre estos, las restricciones de seguridad y confidencialidad. Es el
punto de vista de empresas y del administrador de BD.
Estructura fsica. Esquema Interno. Punto de vista del almacenamiento de datos. Depende de cada
SGBD.
Base de
SubEsquemas datos
Fsica
Esquema
Las BDMS (Data Base Management System) o SGBD (Sistema de Gestin de Base de Datos) son los
paquetes encargados de realizar la administracin de una BD.
DBMS
El diseo de bases de datos es una actividad compleja, en donde hay que tomar decisiones en distintos
niveles. Es necesario descomponer un problema en sub problemas para tener una visin panormica.
Previamente debe definirse los requerimientos de datos que tiene un Sistema de Informacin y luego pasar
al diseo en s existen tres tipos de diseo: conceptual, lgico y fsico.
Ing. Henry George Maquera Quispe
Base de Datos Ingeniera de Sistemas y Computacin - 19
El diseo conceptual. Da la capacidad de visualizar las entidades, los atributos y las interrelaciones,
sin preocuparse del almacenamiento fsico. Es el punto de vista del analista-programador. Parte de la
especificacin de los requerimientos del sistema y su resultado es un esquema conceptual de la base
de datos.
Como puede verse, el diseo conceptual, tiene como propsito describir el contenido de la informacin
que se necesita para manejar la informacin, ms que las estructuras de almacenamiento que se
necesita para manejar la informacin almacenada. El diseo conceptual se realiza al margen de que se
use un software DBMS o lenguajes de programacin convencionales.
El diseo lgico. Es la versin del modelo conceptual, definida en trminos de los tipos de modelo de
datos que maneja el DBMS seleccionado. El diseo lgico parte del esquema conceptual y tiene como
resultado el esquema lgico.
El esquema lgico es una descripcin de la estructura de la base de datos que puede ser procesado
por un software DBMS.
Un modelo lgico es un lenguaje utilizado para especificar esquemas lgicos. Los modelos de datos
lgicos ms usados son 3: relacional, reticular y jerrquico. El diseo lgico depende de la clase de
modelo de datos usado por el DBMS y no del DBMS usado.
Los usuarios hacen uso de subconjuntos del modelo lgico segn sus intereses particulares. A estos
subconjuntos se llaman modelos externos. Los usuarios que hacen uso de los modelos externos usan
lenguajes como C, ADA, PASCAL, Cobol, etc. y hacen consultas a la Base de Datos a travs de
lenguajes de consulta como el SQL (Structured Query Language).
Requerimientos de
los Datos
Diseo Conceptual
Esquema conceptual
Diseo Lgico
Esquema Lgico
Diseo Fsico
Esquema Fsico
El diseo fsico. Es definido en trminos del almacenamiento fsico, teniendo en cuenta la longitud en
bytes y la direccin de almacenamiento. Toma en cuenta la distribucin, los mtodos de acceso y
tcnicas de ordenamiento se llama. El diseo fsico parte del esquema lgico y tiene como resultado el
esquema fsico.
ESQUEMA CONCEPTUAL
Alumno:
Matrcula Carcter(6) Clave Primaria
Apellido Carcter(40)
Nombre Carcter(35) Clave Candidata
Sexo Lgico
Fecha de Nacimiento Fecha
Especialidad Numrico(1) Clave Fornea
Direccin Carcter(40)
Telfono Carcter(6)
DNI Carcter(8)
Foto Grfico
Currculo Texto
MODELO CONCEPTUAL
ENTITY: Alumno
ATTRIBUTES: Matrcula STRING(6),
Apellido STRING(40),
Nombre STRING(35),
Sexo BOOLEAN,
Fecha_de_Nacimiento DATE,
Especialidad INTEGER,
Direccin STRING(40),
Telfono STRING(6),
DNI STRING (8),
Foto GRAPHIC,
Currculo TEXT,
IDENTIFIER: Matricula,
CANDIDATE KEY: (Apellido, Nombre),
FOREIGN KEY: Especialidad REFERENCES Especialidad
ESQUEMA LGICO
Campo Nombre Tipo Ancho Clave Descripcin
MODELO LGICO
CREATE TABLE Alumno
(Matrcula CHARACTER(6),
Apellido CHARACTER(40),
Nombre CHARACTER(35),
Sexo BOOLEAN,
Fecha_de_Nacimiento DATE,
Especialidad NUMERIC(1),
Direccin CHARACTER(40),
Telfono CHARACTER(6),
Libreta_Electoral CHARACTER(8),
Foto GRAPHIC,
Currculo TEXT,
PRIMARY KEY Matrcula,
UNIQUE(Apellido, Nombre),
FOREING KEY Especialidad REFERENCES Especialidad)
ESQUEMA FISICO
Registro Alumno Longitud = 164
Prefijo Tipo=Byte(10)
Matricula Carcter(10) Tipo=Byte(6) ndice Principal
Apellido Carcter(40) Tipo=Byte(40)
Nombre Carcter(35) Tipo=Byte(35) ndice Candidato
Sexo Lgico Tipo=Boolean
Fecha de Nacimiento Fecha Tipo=Byte(8)
Especialidad Numrico Tipo=Integer(2) Clave Fornea
Direccin Carcter(40) Tipo=Byte(40)
Telfono Carcter(6) Tipo= Byte(6)
Libreta Electoral Carcter(8) Tipo=Byte(8)
Foto General Tipo=Byte(4)
Biografa Memo Tipo=Byte(4)
MODELO FISICO
CREATE TABLE Alumno
(Matrcula C(6),
Apellido C(40),
Nombre(C(35),
Sexo L,
Fecha_de_Nacimiento D,
Especialidad N(1),
Direccin C(40),
Telfono C(6),
Libreta_Electoral C98),
Foto G,
Currculo M,
PRIMARY KEY Matrcula,
UNIQUE Apellido+Nombre TAG ApelNomb,
FOREIGN KEY Especialidad TAG Espe REFERENCES Especialidad)
Diseo
1
Crecimiento Creacin
Cambio y
Mantenimiento
Fsica
6 2
Operacin Conversin
5 3
Integracin
4
1.14. Diseo
Esquemticamente podemos presentar la fase de diseo tambin como un ciclo vital de las 5 subfases que
hemos sealado: Identificacin de entidades y aplicaciones, definicin de entidades y relaciones,
construccin del diccionario de datos, construccin de modelos y revisin y evaluacin:
Una vez que la estructura fsica de la base de datos se ha ajustado de acuerdo a los requerimientos de
funcionamiento el paso siguiente es presentar al DBMS el esquema de la estructura fsica de la base de
datos.
Hay que crear las estructuras de los archivos, las claves, los ndices, los formularios, las vistas, las
consultas, los informes para impresora (reportes, etiquetas). La base de datos debe funcionar
interactivamente con los usuarios, antes de implantar las aplicaciones.
Es necesario tambin implantar en esta etapa el diccionario de datos, las restricciones, los valores
predeterminados, los valores nulos, etc. Los actuales SGBD tienen incorporadas las herramientas
necesarias.
Es recomendable antes de usar la base de datos a escala completa, presentar un prototipo de esta o un
modelo experimental. El prototipo puede usar servir para tener una estimacin razonable del funcionamiento
y tambin para ver la posibilidad de expandir el volumen de las funciones. Es necesario realizar pruebas.
Si el prototipo es satisfactorio se carga base de datos. El prototipo sirve de gua, pero es necesario recordar
que difcilmente un prototipo pueda reflejar el total funcionamiento de la base de datos. Si los resultados son
satisfactorios se verifican los controles de seguridad, integridad y privacidad. Si los controles pasan la
prueba, se pasa a la siguiente fase.
Otra recomendacin pertinente es que los datos usados en las pruebas deben aproximarse lo ms que se
pueda a los datos reales. Esto es fcil ya que siempre se dispone de datos reales y cuando los datos son
numricos pueden generase aleatoriamente haciendo uso de cualquiera de las distribuciones (uniforme,
normal, etc.).
La base de datos surge como consecuencia de aprovechar en lo mximo la informacin existente. Los
conjuntos de datos se convierten en archivos para la base de datos y a la vez surge la posibilidad de
encontrar nuevas aplicaciones diferentes a las previstas inicialmente
Las aplicaciones existentes y las nuevas aplicaciones se integran a la base de datos. La facilidad de
expansin de la estructura fsica es muy necesaria en esta etapa. Es necesario recalcar que en esta etapa
es ms importante apoyar el desarrollo de aplicaciones ya existentes con una administracin adecuada de
la base de datos, antes que programar el desarrollo de aplicaciones. Las nuevas aplicaciones deben haber
sido previstas en la etapa de diseo. Si no se ha hecho habr que retomar a la fase de diseo.
En esta fase todas las aplicaciones que pueden ejecutarse utilizando la base de datos se implementan. Los
procedimientos de control de privacidad, seguridad y acceso deben estar implantadas. Se deben establecer
los procedimientos de recuperacin y apoyo y cumplir con los criterios de funcionamiento.
Esta es la ltima fase del ciclo de vida de la base de datos. El crecimiento es un proceso natural de todo
sistema, porque los datos aumentan dentro de un sistema. Los cambios estn presentes en todo sistema.
Los cambios se deben a la poltica de la empresa, para adaptarse a muevas necesidades. El mantenimiento
es el enfrentamiento con los cambios y puede ser:
Correctivo: Para corregir los errores que puedan detectarse en el funcionamiento. Por ejemplo: cuando
se revisa un programa de ingreso a la base de datos y se descubre los datos que se ingresan no son
consistentes. Se buscar un mecanismo de validacin.
Adaptativo: Consiste en modificar la base de datos para acomodarse a los cambios de la empresa. Por
ejemplo: si una empresa tiene su base de datos implantada en FoxPro 2.6 y decide trabajar en
ambiente grfico y cambia todo su sistema al SGBD Visual FoxPro 5.
Perfectivo: Amplia la base de datos ms all de sus funciones originales para la expansin de la base
de datos. Por ejemplo: si en una universidad tiene su base de datos que administra actas y decide
ampliar la base de datos para administra todo la marcha acadmica de la universidad.
EJEMPLO:
Para nuestro caso, donde se desea implantar un sistema de base de datos para administrar proyectos de
investigacin de alumnos de maestra:
Paso 1: Diseo
1. Identificamos las principales entidades que son: Alumno, Proyecto, Curso, Libros, Software y Recursos
con sus respectivos atributos. Las aplicaciones potenciales son: Administracin del avance de
proyectos, Manejo de recursos, Administracin de prestaciones de libros y software, Planillas de
haberes. Control acadmico de los cursos y proyectos, etc.
2. Luego creamos el Diccionario Entidad - Relacin para establecer las relaciones entre las entidades
principales.
3. Describiremos los detalles en el Diccionario de datos.
4. Finalmente construimos los modelos conceptual, lgico y fsico para todas las tablas derivadas del DER;
teniendo en cuenta el modelo de datos Relacional y el DBMS Visual FoxPro 5 o 6.
definidas con datos simulados. Si estamos seguros que satisface las restricciones establecidas podemos
cargar los datos reales en todas las tablas que tenemos definidas hasta este momento
Paso 3: Conversin
Revisamos todas necesidades de informacin y creamos todas las tablas suplementarias que necesita la
base de datos y todas las aplicaciones existentes posibles. El uso de claves forneas nos va a obligar a
crear tablas para detallar valores. Adems al establecer relaciones entre tablas se ver necesidad de crear
otras tablas y aplicaciones.
Paso 4: Integracin
Integraremos las nuevas tablas y aplicaciones creadas en el paso 3 a la base de datos. Al integrarse estas
nuevas tablas y aplicaciones nuestra base de datos se integrar y consolidar. En esta etapa tambin
creamos las vistas, formatos, consultas, informes necesarios para poner en marcha la base de datos. Se
debe generar tambin las aplicaciones usando los generadores de aplicaciones o escribiendo el cdigo
necesario.
Paso 5: Operacin
En esta etapa pondremos en marcha la base de datos. Tambin se implantar las medidas de seguridad y
las restricciones de acceso a los datos de la base. Al poner en marcha tambin revisaremos los
procedimientos de control y acceso a los datos. Habr que asegurase tambin que con cierta frecuencia
(cada fin de mes, por ejemplo) se creen copias de respaldo de las tablas y programas principales por
seguridad.
En esta etapa veremos la necesidad de proyectamos hacia sistemas operativos ms potentes y verstiles
como WINDOWS NT o UNlX y trabajar con verdaderos DBMS a gran escala como son ORACLE, SQL SER
VER, INFORMIX, INGRES, SYBASE, DB2, etc.