1
TEMA
Conceptos bsicos
OBJETIVOS ESPECFICOS
Describir las etapas del procesamiento electrnico de datos.
Describir las facilidades que deben brindar los Sistemas de Gestin de Bases de Datos (SGBD).
Enunciar los componentes fundamentales de la arquitectura de un sistema de bases de
datos (SBD) y describir sus funciones e interrelaciones.
Enunciar las funciones principales de un administrador de bases de datos
CONTENIDO
1. Surgimiento histrico de las bases de datos integradas.
2. Objetivos de los SBD
2.1
2.2
2.3
2.4
2.5
2.6
2.7
Independencia de los datos y los programas de aplicacin
Minimizacin de la redundancia
Integracin y sincronizacin de las bases de datos
Integridad de los datos
Seguridad y recuperacin
Facilidad de manipulacin de la informacin
Control centralizado
3. Arquitectura de un sistema de bases de datos (SBD)
3.1
3.2
3.3
3.4
3.5
El nivel externo
El nivel lgico global
El nivel interno
Correspondencias entre los niveles de la arquitectura
El administrador de la BD
Ejercitacin
Resumen
1. SURGIMIENTO HISTRICO DE LAS BASES DE DATOS
INTEGRADAS
Al estudiar el desarrollo del procesamiento automatizado de datos, en lo que se refiere al
aseguramiento tcnico, se habla de diferentes generaciones.
Desde el punto de vista del aseguramiento matemtico y en particular, del aseguramiento
de programas, algunos autores reconocen tres generaciones:
1. Solucin de tareas aisladas.
2. Integracin de tareas aisladas en sistemas particulares.
3. Integracin de sistemas particulares en sistemas automatizados de direccin.
Este proceso de integracin ocurre paralelamente, aunque no simultneamente, en dos
esferas:
a) Integracin de los programas.
Ha estado facilitada por el uso de lenguajes de programacin cada vez ms sofisticados
y de redactores que permiten el acoplamiento de mdulos escritos en lenguajes
diferentes.
b) Integracin de los datos.
En la integracin de los datos se han producido tres categoras de tcnicas para su
manipulacin:
1. Sistemas orientados a los dispositivos.
Los programas y archivos son diseados y empleados de acuerdo con las
caractersticas fsicas de la unidad central y los perifricos. Cada programa est
altamente interconectado con sus archivos, por lo que la integracin de datos de
diferentes sistemas es prcticamente imposible.
2. Sistemas orientados a los archivos.
La lgica de los programas depende de las tcnicas de organizacin de los archivos
(secuencial, directo, etc.). Cada usuario organiza su archivo de acuerdo con sus
necesidades y las relaciones entre los elementos se establecen a travs de los
programas de aplicacin.
Esta forma de trabajo implica redundancia de datos que trae aparejada mayor gasto
de memoria y complica las operaciones de actualizacin (modificar un dato
dondequiera que aparezca), lo que aumenta el tiempo de tratamiento y atenta
contra la integridad de la informacin.
Cuando se habla de integridad se hace referencia a que, en todo momento, los
datos almacenados estn correctos en correspondencia con la realidad.
Adems, en la vida real se establecen relaciones entre los objetos que son muy
difciles de representar u obtener a partir de sistemas tradicionales de archivos. Por
ejemplo, si se tiene informacin sobre trabajadores y estudiantes de una facultad,
las aplicaciones requeridas van a definir la manera de organizar y estructurar los
archivos.
Si se desea obtener datos como:
Promedio de las calificaciones de cada estudiante.
Listado de estudiantes por grupo.
Categora cientfica y docente de cada profesor.
Salario de cada profesor.
Resulta adecuado establecer dos archivos: uno de profesores y uno de estudiantes.
Qu ocurre si se quiere establecer vnculos entre los profesores y estudiantes? Por
ejemplo, si se desea obtener:
Los estudiantes de un profesor.
Los profesores de un estudiante.
Se estructurara un archivo de profesores y estudiantes que resolvera algunas
demandas, pero sera ineficiente para otras.
Entonces, es posible representar de manera eficiente, utilizando los medios de
cmputo, los fenmenos o procesos de la realidad objetiva, aunque sea, por
supuesto, de forma esquemtica, pero en la que se establezcan determinados
vnculos entre los elementos u objetos que forman parte de esos procesos o
fenmenos?
Veremos que esto es posible hacerlo a travs de la utilizacin de bases de datos
(BD) y de los sistemas de gestin de bases de datos (SGBD) que dirigen su
manipulacin.
Se tiene entonces la tercera categora:
3. Sistemas orientados a BD en los que hay una dbil interdependencia entre los
programas de aplicacin y la organizacin fsica de los datos.
Ahora bien, qu es una base de datos? Aunque existen distintas formas de definir una
base de datos, la siguiente puede considerarse una definicin adecuada:
Conjunto de datos interrelacionados entre s, almacenados con carcter ms o menos
permanente en la computadora. O sea, que una BD puede considerarse una coleccin
de datos variables en el tiempo.
El software que permite la utilizacin y/o la actualizacin de los datos almacenados en
una o varias bases de datos por uno o varios usuarios desde diferentes puntos de vista y a
la vez, se denomina sistema de gestin de bases de datos (SGBD).
Es importante diferenciar los trminos BD y SGBD.
El objetivo fundamental de un SGBD consiste en suministrar al usuario las herramientas
que le permitan manipular, en trminos abstractos, los datos, o sea, de forma que no le sea
necesario conocer el modo de almacenamiento de los datos en la computadora, ni el
mtodo de acceso empleado.
Los programas de aplicacin operan sobre los datos almacenados en la base utilizando las
facilidades que brindan los SGBD, los que, en la mayora de los casos, poseen lenguajes
especiales de manipulacin de la informacin que facilitan el trabajo de los usuarios.
2. OBJETIVOS DE LOS SISTEMAS DE BASES DE DATOS (SBD)
Existen muchas formas de organizar las bases de datos, pero hay un conjunto de objetivos
generales que deben cumplir todas los SGBD, de modo que faciliten el proceso de diseo
de aplicaciones y que los tratamientos sean ms eficientes y rpidos, dando la mayor
flexibilidad posible a los usuarios.
Los objetivos fundamentales de los SBD son:
2.1 Independencia de los datos y los programas de aplicacin
Ya vimos que con archivos tradicionales la lgica de la aplicacin contempla la
organizacin de los archivos y el mtodo de acceso. Por ejemplo, si por razones de
eficiencia se utiliza un archivo secuencial indexado, el programa de aplicacin debe
considerar la existencia de los ndices y la secuencia del archivo. Entonces es
imposible modificar la estructura de almacenamiento o la estrategia de acceso sin
afectar el programa de aplicacin (naturalmente, lo que se afecta en el programa son
las partes de este que tratan los archivos, lo que es ajeno al problema real que el
programa de aplicacin necesita resolver). En un SBD sera indeseable la existencia
de aplicaciones y datos dependientes entre s, por dos razones fundamentales:
1. Diferentes aplicaciones necesitarn diferentes aspectos de los mismos datos (por
ejemplo, puede requerirse la representacin decimal o binaria).
2. Se debe poder modificar la estructura de almacenamiento o el mtodo de acceso
segn los cambios en el fenmeno o proceso de la realidad sin necesidad de
modificar los programas de aplicacin (tambin para buscar mayor eficiencia).
La independencia de los datos se define como la inmunidad de las
aplicaciones a los cambios en la estructura de almacenamiento y en la estrategia
de acceso, y constituye el objetivo fundamental de los SBD.
2.2 Minimizacin de la redundancia
Habamos visto que con los archivos tradicionales se produce redundancia de la
informacin. Uno de los objetivos de los SBD es minimizar la redundancia de los
datos. Se dice disminuir la redundancia, no eliminarla, pues, aunque se definen las
BD como no redundantes, en realidad existe redundancia en un grado no
significativo para disminuir el tiempo de acceso a los datos o para simplificar el
mtodo de direccionamiento. Lo que se trata de lograr es la eliminacin de la
redundancia superflua.
2.3 Integracin y sincronizacin de las bases de datos
La integracin consiste en garantizar una respuesta a los requerimientos de
diferentes aspectos de los mismos datos por diferentes usuarios, de forma que,
aunque el sistema almacene la informacin con cierta estructura y tipo de
representacin, debe garantizar entregar al programa de aplicacin los datos que
solicita y en la forma en que lo solicita.
Est vinculada a la sincronizacin, que consiste en la necesidad de garantizar el
acceso mltiple y simultneo a la BD, de modo que los datos puedan ser
compartidos por diferentes usuarios a la vez. Estn relacionadas, ya que lo usual es
que diferentes usuarios trabajen con diferentes enfoques y requieran los mismos
datos, pero desde diferentes puntos de vista.
2.4 Integridad de los datos
Consiste en garantizar la no contradiccin entre los datos almacenados de modo
que, en cualquier momento del tiempo, los datos almacenados sean correctos, es
decir, que no se detecte inconsistencia entre los datos. Est relacionada con la
minimizacin de la redundancia, ya que es ms fcil garantizar la integridad si se
elimina la redundancia.
2.5 Seguridad y recuperacin
La seguridad (tambin llamada proteccin) garantiza el acceso autorizado a los
datos, para interrumpir cualquier intento de acceso no autorizado, ya sea por error
del usuario o por mala intencin.
La recuperacin consiste en que el sistema de bases de datos disponga de mtodos
que garanticen la restauracin de las bases de datos al producirse alguna falla tcnica,
interrupcin de la energa elctrica, etctera.
2.6 Facilidad de manipulacin de la informacin
Los usuarios de una BD pueden realizar solicitudes para resolver muchos problemas
diferentes. El SBD debe contar con la capacidad de una bsqueda rpida por
diferentes criterios y permitir que los usuarios planteen sus demandas de una forma
simple, aislndolo de las complejidades del tratamiento de los archivos y del
direccionamiento de los datos. Los SBD actuales brindan lenguajes de alto nivel con
diferentes grados de facilidad para el usuario no programador que garantizan este
objetivo, los llamados sublenguajes de datos.
2.7 Control centralizado
Uno de los objetivos ms importantes de los SBD es garantizar el control
centralizado de la informacin, que permite controlar de manera sistemtica y nica
los datos que se almacenan en la BD, as como el acceso a ella; lo que implica que
debe existir una persona o conjunto de personas que tengan la responsabilidad de
los datos operacionales: el administrador de la BD, que puede considerarse parte
integrante del SBD y cuyas funciones se abordarn en la siguiente sesin.
Existen otros objetivos que deben cumplir los SBD que en muchos casos dependen de las
condiciones o requerimientos especficos de utilizacin del sistema.
3. ARQUITECTURA DE UN SISTEMA DE BASES DE DATOS (SBD)
Presentaremos a continuacin la arquitectura de un SBD, aunque no podemos asegurar
que cualquier SBD se corresponda exactamente con ella. Sin embargo, esta arquitectura se
ajusta suficientemente bien con un gran nmero de sistemas. Adems, est de acuerdo con
la arquitectura propuesta por el grupo ANSI/SPARC.
La arquitectura se divide en tres niveles generales: interno, lgico global y externo.
El nivel interno es el ms cercano al almacenamiento fsico, o sea, el relacionado con la
forma en que los datos estn realmente almacenados.
El nivel externo es el ms cercano a los usuarios, o sea, el relacionado con la forma en
que los datos son vistos por cada usuario individualmente.
El nivel lgico global es un nivel intermedio entre los dos anteriores.
....
....
NIVEL EXTERNO
(Vistas de usuarios)
individuales)
NIVEL LGICO GLOBAL
(Vista general)
NIVEL INTERNO
(Vista de almacenamiento)
Existirn varias vistas externas diferentes. Cada una es la representacin ms o menos
abstracta de alguna porcin de la BD total y existir nicamente una vista general, consistente
en una representacin tambin abstracta de la BD en su totalidad. Igualmente, existir una
nica vista interna que representa a la BD completa, tal y como est realmente almacenada.
A continuacin estudiaremos con mayor detalle cada uno de los niveles de la arquitectura
vista anteriormente y la forma en que ellos interactan.
3.1 El nivel externo
Es el nivel del usuario individual, donde un usuario puede ser bien un programador
de aplicacin o un usuario final con cualquier grado de sofisticacin. Cada usuario
tiene un lenguaje a su disposicin:
Para el programador ese lenguaje puede ser bien un lenguaje de programacin
convencional, tal como Pascal, o bien un lenguaje de programacin especfico de
un sistema, tal como el FoxPro.
Para el usuario final el lenguaje puede ser bien un lenguaje de consulta
(interrogaciones, query) o un lenguaje de propsito especial, quizs basado en
sistemas de menes y ventanas y construido para satisfacer los requerimientos de
un usuario, encontrndose soportado por algn programa de aplicacin en lnea.
Es importante sealar que todo lenguaje debe incluir un sublenguaje de datos, o sea,
un subconjunto del lenguaje que trata especficamente con los objetos de la base de
datos y sus operaciones. Se dice que el sublenguaje de datos (DSL) est embebido
dentro del correspondiente lenguaje husped. Este es el encargado de asegurar otras
facilidades ajenas a la base de datos, tales como variables locales, operaciones de
clculo, lgica if-then-else, etc. Un sistema dado, puede soportar mltiples lenguajes
husped y mltiples sublenguajes de datos.
En principio, cualquier sublenguaje de datos es realmente una combinacin de, al
menos, dos lenguajes subordinados: un lenguaje de definicin de datos (DDL), el cual
garantiza la definicin o descripcin de los objetos de la base de datos, y un lenguaje
de manipulacin de datos (DML), que garantiza la manipulacin o procesamiento de
esos objetos.
Ya se ha indicado que un usuario individual estar generalmente interesado solo en
cierta porcin de la BD completa. An ms, la vista de esa porcin ser generalmente
abstracta cuando se compara con la forma en que los datos estn fsicamente
almacenados. El trmino definido por el comit ANSI/SPARC para una vista de un
usuario es vista externa, la cual es el contenido de la BD tal y como es vista por un
usuario en particular. O sea, para ese usuario, la vista externa es la BD.
En general, una vista externa consiste en mltiples ocurrencias de mltiples tipos de
artculos externos. Un artculo externo no es necesariamente igual a un artculo
almacenado.
El sublenguaje de datos del usuario se define en trminos de artculos externos; por
ejemplo, una operacin del DML que sea recuperar artculos, recuperar una
ocurrencia de artculos externos y no una ocurrencia de artculos almacenados.
Cada vista externa se define mediante un esquema externo, consistente, bsicamente, en
definiciones de cada uno de los diferentes tipos de artculos externos en esa vista. El
esquema externo se escribe usando la porcin del DDL del sublenguaje de datos del
usuario; adems, tiene que existir una definicin de la correspondencia entre el esquema
externo y el esquema lgico global.
3.2 El nivel lgico global
La vista lgica es una representacin del contenido informativo total de la BD. Es
una forma abstracta en comparacin con la forma en que los datos estn
almacenados fsicamente. Esta vista puede ser bien diferente de la forma en la que los
datos son vistos por un usuario en particular. Adems, pretende ser una vista de los
datos tal como son, en lugar de cmo los usuarios estn forzados a verlos por las
restricciones, digamos, de un lenguaje particular o de un determinado hardware que
utilicen.
La vista lgica consiste en mltiples ocurrencias de mltiples tipos de artculos
lgicos. Por ejemplo, puede ser una coleccin de ocurrencias del artculo
departamento, ms una coleccin de ocurrencia del artculo empleado, etc. Un
artculo lgico no es necesariamente igual a un artculo externo ni a un artculo
almacenado.
La vista lgica se define mediante el esquema lgico que incluye las definiciones de
cada uno de los diferentes tipos de artculos lgicos. El esquema lgico se describe
usando otro lenguaje de definicin de datos: el DDL lgico. Si se desea lograr la
independencia de los datos, entonces las definiciones del DDL lgico no deben
comprender ninguna consideracin sobre la estructura de almacenamiento ni la
estrategia de acceso. Ellas tienen que ser solo referentes al contenido informativo.
Si el esquema lgico logra verdaderamente la independencia de los datos, entonces
los esquemas externos que se definen sobre el esquema lgico lograrn tambin,
necesariamente, la independencia de los datos.
La vista lgica es entonces una vista del contenido total de la BD y el esquema lgico
es una definicin de esa vista. Sin embargo, el esquema lgico no es simplemente un
conjunto de definiciones como las que se encuentran, por ejemplo, en un programa
Pascal, sino que deben incluir una gran cantidad de aspectos adicionales, tales como
los chequeos de proteccin y los chequeos de integridad.
En la mayora de los sistemas actuales, el esquema lgico es realmente solo un poco
ms que la simple unin de todos los esquemas externos individuales, posiblemente
con la adicin de algunos chequeos simples de proteccin e integridad. Sin embargo,
est claro que los sistemas del futuro soportarn un nivel lgico mucho ms
sofisticado, que permita tambin describir la forma en que se usan los datos, como
fluyen de un punto a otro, para qu se usan en cada punto, a qu controles son
sometidos, etctera.
3.3 El nivel interno
La vista interna es una representacin de bajo nivel de la BD completa, que consiste
en mltiples ocurrencias de mltiples tipos de artculos internos.
El artculo interno es el trmino definido por ANSI/SPARC para la construccin que
hasta ahora hemos llamado artculo almacenado. La vista interna est entonces an a un
paso del nivel fsico, ya que no opera en trminos de artculos fsicos (tambin
llamados pginas o bloques) ni con consideraciones especficas de los equipos, tales
como tamaos de sectores o pistas. Bsicamente, la vista interna asume un espacio de
direccin lineal infinita. Los detalles de cmo se hace corresponder ese espacio con el
almacenamiento fsico son muy especficos de un sistema y deliberadamente se
omitieron de la arquitectura.
La vista interna se describe mediante el esquema interno, el cual no solo define los
diferentes tipos de artculos almacenados, sino que tambin especifica los ndices que
existen, la representacin de los campos almacenados, la secuencia fsica en que estn
los artculos almacenados, etc. El esquema interno se describe usando otro lenguaje
de definicin de datos: el DDL interno.
3.4 Correspondencias entre los niveles de la arquitectura
En el esquema presentado de la arquitectura de un SBD, se observan los niveles de
correspondencias, una entre los niveles externo y lgico global, y otra entre los
niveles lgico global e interno.
La correspondencia lgica/interna especifica la forma en que los artculos y campos
lgicos se representan en el nivel interno. Si se cambia la estructura de la vista interna, o
sea, si se hace un cambio en el esquema interno, entonces la correspondencia
lgica/interna tiene tambin que cambiar en consecuencia, de modo que el esquema
lgico permanezca invariable. En otras palabras, los efectos de estos cambios deben ser
aislados por debajo del nivel lgico para que se mantenga la independencia de los datos.
Existe tambin una correspondencia externo/lgica entre cada vista externa particular y
la vista lgica. Las diferencias que pueden existir entre estos dos niveles son similares a las
que pueden existir entre las vistas lgica y la interna. Por ejemplo, los campos pueden
tener diferente tipos de datos, se pueden cambiar los nombres de artculos y campos,
mltiples campos lgicos pueden ser combinados en un nico campo externo, etc. Puede
existir al mismo tiempo cualquier cantidad de vistas externas; cualquier cantidad de
usuarios puede compartir una vista externa dada; las diferentes vistas externas se pueden
solapar. Algunos sistemas permiten la definicin de una vista externa a partir de otra
(mediante una correspondencia externa/externa); esta caracterstica es til cuando varias
vistas externas estn estrechamente relacionadas entre s.
3.5 El administrador de la base de datos (BD)
Por ltimo, en el esquema aparece el administrador de la base de datos, quien es la
persona o grupo de personas responsable del control total de todo el sistema. Entre
las tareas del administrador de la BD est:
Decidir el contenido informativo de la BD.
Decidir la estructura de almacenamiento y la estrategia de acceso.
Garantizar el enlace con los usuarios.
Definir los chequeos de autorizacin y procedimientos de validacin.
Definir la estrategia de reorganizacin de la BD para aumentar la eficiencia del
sistema.
El SGBD interacta con cada uno de los niveles y las correspondencias entre ellos.
10
Ejercitacin
1. Defina los conceptos de base de datos y de sistema de gestin de bases de datos.
2. Cul es el principal objetivo de los SBD? Explique en qu consiste.
3. Es la minimizacin de la redundancia un objetivo de los SBD? Explique su respuesta.
4. A qu se le llama integridad de los datos?
5. Defina los conceptos de seguridad y recuperacin.
6. Mencione los niveles en que se divide la arquitectura de un SBD y las caractersticas
fundamentales de cada uno de ellos.
7. Explique cmo se establece la correspondencia entre los distintos niveles de la arquitectura
de un SBD y cmo se logra garantizar la independencia de los datos respecto a los
programas de aplicacin.
8. Mencione tres de las funciones principales que realiza un administrador de bases de datos.
11
Resumen
El procesamiento automatizado de datos ha pasado por diferentes etapas en su desarrollo
hasta llegar a la actual, en la que se emplean bases de datos para el almacenamiento de la
informacin.
El principal objetivo de los SBD es garantizar la independencia de los datos respecto a los
programas de aplicacin.
Otro objetivo muy importante de los SBD es la minimizacin de la redundancia.
La arquitectura de un SBD est compuesta por tres niveles: externo, lgico global e
interno. El nivel lgico global de los datos representa el contenido informativo total de la
BD y, desde el punto de vista del diseador, es el ms importante.
Existe una correspondencia entre los niveles externo y lgico global y entre el lgico global
y el interno. Para garantizar la independencia de los datos respecto a los programas de
aplicacin, cualquier cambio en el nivel interno debe reflejarse adecuadamente en la
correspondencia interna/lgico global, pero no afectar el nivel lgico global.
El nivel interno de la arquitectura de un SBD puede considerarse estructurado por archivos
con distintos modos de organizacin.
12