Sunteți pe pagina 1din 15

Base de

Datos
Mary E. Ramírez Cano
Facultad de Ingeniería
Departamento de Ciencias de la Información
Programa de Ingeniería Informática
Los Módulos de clase son una publicación de la Vicerrectoría de
Investigaciones y Desarrollo Tecnológico de la Universidad Autónoma
de Occidente. Este material presenta contenidos parciales y/o
material de apoyo de cursos dictados en la institución.

Base de Datos I
Facultad de Ingeniería
Departamento de Ciencias de la Información
Programa de Ingeniería Informática

Gestión Editorial
Vicerrectoría de Investigaciones y Desarrollo Tecnológico UAO
ksanchez@uao.edu.co

2005 Universidad Autónoma de Occidente


Km. 2 vía a Jamundí, A.A. 2790 Cali, Valle del Cauca Colombia

C Mary E. Ramírez Cano, docente UAO

El contenido de esta publicación no compromete el pensamiento


de la Institución, es responsabilidad absoluta de sus autores.

Centro de Publicaciones - FUNDAUTÓNOMA

Impreso en Colombia
Printed in Colombia

Base de
Datos
Tabla de Contenido
CAPÍTULO 1 4

CONCEPTO BÁSICOS 4
INTRODUCCIÓN 4
1.1 Característica de la Información 6
1.2 Conceptos de Bases de datos 6
1.3 Utilidades que ofrece una base de datos 7
1.4 Sistema Gestor de Base de Datos 10
1.5 Arquitectura de un Sistema Gestor de Base de Datos 10
1.6 Arquitectura del Sistemas de Base de Datos 11
1.7 Arquitectura Cliente / Servidor 13
1.8 Administrador de Bases de Datos (ABD DBA) 13
1.9 Referencias 15

CAPÍTULO 2 16

MODELO DE DATOS 16
2.1 Clasificación del modelo de datos 16
2.2 Modelos de Bases de Datos 18
2.2.1 Modelo Entidad relación 20
Importante: Siempre que se establece relación entre dos entidades,
estas comparten un atributo o conjunto de atributos a través de esta relación.
2.3 Referencias 57

CAPÍTULO 3 58

NORMALIZACIÓN 58
3.1 Dependencias Funcionales 58
3.2 Primera Forma Normal (1FN) 60
3.3 Segunda Forma Normal (2FN) 62
3.4 Tercera Forma Normal (3FN) 64
3.5 Forma Normal Boyce-Codd (FNBC) 67
3.6 Cuarta Forma Normal (4FN) 68
3.7 Quinta Forma Normal (5FN) 70
3.8 Desnormalización 72
3.9 Referencias 72

CAPÍTULO 4 73

MODELO RELACIONAL DE DATOS 73


4.1 Componentes del MRD 73
4.2 Pasos para construir el MRD 73
4.3 Transición del MER al MRD 75
4.4 Integridad 88
4.5 Referencias 90

CAPÍTULO 5 91

INDICES 91
5.1 Indices Ordenados 91
5.2 Indices No Ordenados 92
5.3 Referencias 93
Base de
Datos
03
1. CONCEPTOS BÁSICOS
INTRODUCCIÓN
Durante el proceso de evolución del hombre, una situación ha sido especialmente característica y es el
hecho que aquel ser humano que tiene acceso a la información (así sea de manera accidental) de cada
proceso o suceso, es quién hace que se originen los cambios y por demás, es aquel “ser” recordado,
referenciado y en muchos casos venerado.

Un ejemplo evidente, se refleja en la posición que en la actualidad el hombre ocupa dentro de las
especies que pueblan este planeta, ya que ha alcanzado la cima de la evolución y adaptación en al
mismo. Este hecho se fundamenta en la capacidad de adquirir conocimiento y dominio sobre el medio
que le rodea, pretendiendo siempre alcanzar beneficios, desafortunadamente no siempre para la
totalidad de la humanidad.

Piense en el suceso relacionado con el dominio del fuego, ¿Qué hubiera sido de la humanidad sin el
conocimiento y dominio de este elemento?, considero impensable un mundo sin este tipo de
información.

Piense ahora en ejemplos actuales; que sucede con proyectos de tipo científico relacionados por
ejemplo con el conocimiento del ADN, en el denominado “Genoma Humano”. Esta información es de
gran utilidad (si no se desvía su uso) para la cura de enfermedades congénitas, para mencionar solo uno
de los posibles beneficios.

Si se piensa en verificar el planteamiento inicial hablando de la industria o la empresa, será aún más
evidente esta realidad, ya que aquellas organizaciones que han hecho buen uso de la información han
logrado alcanzar el éxito. Como ejemplos típicos de este hecho se pueden citar a Mc. Donalds, Benneton,
IBM entre otras y algunas empresas Colombianas como OPEN, PSL que logró el nivel 5 en CMMI.

La demanda que hoy día hacen las empresas respecto a la calidad y volumen de datos que estas
manejan, ha crecido de manera vertiginosa en los últimos 10 años. Es común escuchar términos como:
Minería de datos, Data Warehousing y Terabytes refiriéndose a las metodologías de análisis de los datos (los
dos primeros términos) y a la capacidad de almacenamiento de los mismos. Por otra parte, la calidad de
los datos que se requieren almacenar, el correcto procesamiento y análisis de los mismos, son los que
radicalmente hacen la diferencia entre una empresa exitosa y la que no lo és. En concordancia con esto,
la pretensión de este curso, es ofrecer las bases fundamentales que le permiten a un ingeniero informático
y de sistemas apropiar las técnicas y herramientas fundamentales para lograr modelar la organización
lógica y física de los datos relacionados con cualquier tipo de proceso o sistemas de manera eficiente,
abonando en gran medida el terreno para lograr procesos y sistemas de manipulación de información
efectivos.

A continuación se muestra un caso de estudio, que refleja claramente la situación anteriormente descrita1.

1
Tomado del libro “Los recursos de la información”. Alfons Cornella. Mc. Graw Hill.

04
BENNETON
Con más de siete mil tiendas franquiciadas en más de cien países (Echos, 1993) y con la
facturación de unos mil setecientos millones de dólares en 1993 (Wall Street Jkourna Europe, 1-6-93), la
firma italiana Benetton ha hecho de su nombre, su logotipo y su lema-marca <United Color of Bennetton>
una de las referencias comerciales más conocidas del mundo. No hay ciudad que se precie que no
cuente con al menos una tienda Benetton. Sus anuncios levantan polémicas y suscitan admiración. Su
éxito ha sido estudiado por escuelas de negocio, que la han puesto como ejemplo de empresa
competitiva (Ketetihohn, 1990).
¿Cuáles son las claves del éxito de Benetton?. Aun a riesgo de simplificar en exceso, se podrían
resumir en cuatro. Primero, una filosofía de descentralización del proceso de manufactura (que llevan a
cabo empresas externas, aunque bajo coordinación de Benetton) y del de ventas (como se ha dicho,
miles de tiendas franquiciadas, de aspecto prácticamente idéntico). Segundo, un sistema de distribución
altamente eficaz, articulado en torno a un almacén central muy automatizado. Tercero, un sistema de
recogida y análisis de los datos entrados en los terminales de punto de venta situados en las tiendas (o, al
menos, en un conjunto estadísticamente representativo de ellas). Y cuarto, una red de agentes, bien
entrenados y con espíritu emprendedor, que actúa como interfaz entre la empresa y las tiendas
franquiciadas.
No es difícil darse cuenta de la importancia de los flujos de información en cada una de estas
actividades. La descentralización no resulta eficiente si no existen canales de comunicación en ambos
sentidos (de fabricante a proveedor o distribuidor, y viceversa). La compleja logística de entrada y salida
(que frecuentemente implica envíos internacionales) no es viable sin altos niveles de automatización. La
recogida y análisis de los datos implican el establecimiento de lazos electrónicos con las tiendas, ya que
no hay otra forma de analizar con rapidez datos generados en miles de tiendas a la vez. Y, finalmente, los
agentes, literalmente desperdigados por el planeta, requieren de algún tipo de comunicación constante
con la central (EDI, intercambio electrónico de documentos), tanto para enviar los pedidos de las tiendas
situadas en su circuito, como para recibir información sobre nuevas colecciones, condiciones de venta,
precios, etc. En resumen, la gestión de los flujos de información es crítica para el éxito de Benetton.

En realidad, se podría decir que la clave última del éxito de Benetton consiste en su capacidad
para responder inmediatamente a los gustos de sus clientes. Tal respuesta rápida se lleva a cabo
básicamente en tres fases. Para ilustrarlo, supongamos el principio de una temporada de primavera en la
que los escaparates Benetton disponen de jerseys de colores verde y naranja. Durante las dos primeras
semanas, la central en Italia analiza los datos que los terminales de punto de venta (las cajas registradoras
dotadas de lectores ópticos) de un conjunto de tiendas, estadísticamente representativo de cada zona
geográfica, le envían por vía telemática. Puede que los datos revelen que los jerseys de color verde no se
venden en absoluto mientras que los de color naranja se agotan rápidamente. Benetton decide entonces
que hay que enviar rápidamente más jerseys de color naranja a sus tiendas (fin de la primera fase).

La forma tradicional de hacerlo consistiría en disponer en su almacén central de suficientes


existencias de cada color, con lo que ello implica de derroche. La fórmula ideal consistiría en fabricar sólo
aquellos colores de los que hay certeza de que van a ser adquiridos por los clientes. Pero existe una fórmula
intermedia que es la que Benetton aplica: consiste en que los pequeños fabricantes que producen para
Benetton confeccionen sus jerseys «sin color» (o como Benetton los denomina, «in greggio»), de manera
que éstos puedan ser tintados «a la medida» de las preferencias de los clientes (fin de la segunda fase).
Finalmente, se procede a la distribución automatizada de los jerseys tintados con los colores «sugeridos»
por los clientes a través de sus preferencias en las compras durante las dos primeras semanas de la
temporada (fin de la tercera fase).
Como se comprenderá, se ha simplificado mucho el proceso, aunque se ha hecho con el fin de
resaltar la siguiente idea. La estrategia de respuesta rápida al mercado (o incluso de anticipación) por
parte de Benetton no sería posible sin no se dispusiera de una fértil combinación de dos elementos. Por un
lado, inversión en tecnologías de la información (terminales de punto de venta, «lazos» EDI con sus
agentes, automatización de la logística, etc.); Benetton destina alrededor de un 1 por 100 de su
facturación en tecnología de la información (Martin , 1989). Por otro lado, habilidad en el análisis de la
información generada en los procesos, o más concretamente, de la información suministrada por los
terminales de punto de venta, verdaderos «termómetros del mercado» (Ketctihohn, 1990). El hecho de

05
que ambos elementos se encuentren en la estrategia de Benetton es lo realmente destacable, ya que lo
más frecuente es que las empresas inviertan cantidades fenomenales en tecnologías de la información
sin plantearse qué información deberán generar o analizar con ellas, o bien que dispongan de
habilidades para el análisis de la información, pero no cuenten con tecnología suficiente para captar
datos del entorno con la rapidez que hoy exigen los mercados.
En otras palabras, desde el punto de vista de este texto, gran parte del éxito de Benetton se debe a que
ha sabido manejar con eficacia sus recursos de información, consistentes tanto en valiosa información
como en avanzadas tecnologías de la información.

CASO 1. BENETTON

1.1 CARACTERÍSTICAS DE LA INFORMACIÓN

Todos los temas que se recopilan en este material, tienen como objetivo fomentar el uso de técnicas
y metodologías que le permitirá organizar de forma efectiva, los datos que cualquier tipo de proceso
involucre. El planteamiento inicial es ¿Porqué?. La respuesta está en el dicho popular de los ingleses
«Acknowledge is power» ó «saber es poder».

En las organizaciones actuales, la fundamentación de este “saber” está en el manejo eficiente de los
datos que se convierten en información, una vez son interpretados.

Esta información debe cumplir con ciertas características para alcanzar el “saber” al cual se hizo
referencia con anterioridad, estas son:

£ Oportuna: De nada nos sirve poseer la información en el momento que no se necesita, la oportunidad
se traduce en que se debe contar con ella en el momento justo.
£ Exacta: No se tiene duda sobre el significado o valor de la información, es decir, cada dato se ha
calculado de manera correcta.
£ Veraz: La veracidad significa “libre de manipulación”. De nada nos sirve basar nuestros cálculos en las
mejores fórmulas si los datos que las alimentan han sido alterados.
£ Clara: La información debe ser clara en cuanto a lo que esta representa, es decir, no debe haber duda
sobre la magnitud que ella representa.
£ Ordenada: Se refiere a como esta ha sido organizada para facilitar su interpretación. A este respecto
se recomienda lo siguiente:

a. Forme grupos de datos que hacen referencia a un mismo tópico.


b. Dentro de este grupo asigne algún tipo de orden.
c. Asigne un orden a cada grupo de datos.
d. Asigne subtotales y totales a los grupos que sean de interés.

£ Buena Presentación: Esta característica también está relacionada con la facilidad de interpretación
de los datos y se centra en la forma como estos se muestran, los casos más comunes en los que se debe
considerar una buena presentación son: interfaz de usuario, consultas y reportes.

1.2 CONCEPTOS DE BASES DE DATOS


Una base de datos, se entiende como un conjunto de estructuras autodescriptivas, organizadas y
relacionadas, cuyo fin es almacenar datos y facilitar el proceso, control y mantenimiento eficiente de los
mismos.

06
Cuando se hace referencia al término autodescriptiva, se refiere a que si la organización de los datos es la
más adecuada, ellos mismos son capaces de describir gran parte del proceso que están soportando.

Algunas de estas estructuras mencionadas en la definición de base de datos se refieren a: reglas de


validación para impedir que los datos se manipulen de forma inadecuada, parámetros que identifican
claramente las características y restricciones que un dato específico debe cumplir, la relación que existe
entre los distintos datos almacenados y los procesos que soporta, y desde el punto de vista de usuario final,
el acceso a los datos. Estas son solo algunas de las estructuras en mención, sin embargo, durante el
desarrollo del curso se hablará detalladamente de cada una de ellas.

1.3 UTILIDADES QUE OFRECE UNA BASE DE DATOS


Para observar con mayor claridad las razones por la cual se justifica el uso de bases de datos, se hará una
breve comparación con el sistema de almacenamiento alterno, denominado comúnmente sistema de
archivos.

TÓPICO SISTEMA DE ARCHIVO BASE DE DATOS


Redundancia Se presenta con frecuencia duplicidad de Dado que se establece una única
datos entre los distintos archivos que referencia como fuente de información, se
alimentan el sistema. elimina la duplicidad.
Ejemplo: Suponga que se requieren los datos personales de un estudiante tanto en registro
académico como en biblioteca. Dado que estos archivos son separados e
independientes, se tiene duplicidad de esta información. Esto se da por que la fuente de
información no es unificada, sin embargo, es información que se requiere en ambas
dependencias. La solución en este caso, es una base de datos que centralice los datos
personales del estudiante y hacia la cual todas las dependencias pueda consultar.

Mantenimiento Debido a la duplicidad de información, no El mantenimiento se hace en una única


Eficiente se tiene sincronizada la actualización de fuente, lo que garantiza que los cambios se
información, lo que implica que en cada reflejen en todas las direcciones.
una de las fuentes se deben actualizar de
forma independiente, generando con
frecuencia inconsistencias entre archivos.

Ejemplo: Suponga que el domicilio de un estudiante ha cambiado, hacer este cambio de


manera consistente en archivos independientes, implica que no se deba dejar ninguno de
ellos sin actualizar. Esto no se garantiza con archivos independientes, mientras que con el
uso de bases de datos, se actualiza una única fuente de información y en consecuencia
toda consulta de la misma, desde cualquier dependencia, será consistente.

Capacidad de La duplicidad nuevamente tiene que ver Aunque posiblemente el almacenamiento


con este aspecto, ya que se desperdicia en este caso es mayor, debido a las
almacenamiento
espacio de almacenamiento sin obtener estructuras adicionales propias de la base
retribución alguna. de datos, el gasto en este recurso se
retribuye en el desempeño de la misma.

Ejemplo: El almacenamiento de los datos personales del estudiante tanto en biblioteca


como en registro académico consumen recurso físico, pero este gasto en
almacenamiento no mejora el desempeño de la misma, por los problemas ya expuestos
en los puntos anteriormente tratados. Por el contrario, aunque una base de datos no
consuma más espacio por duplicidad de la información, si lo consume para establecer
que tipo de dato y que restricciones debe cumplir, pero el almacenamiento de esta
información evita que se ingresen datos inconsistentes, obteniendo un beneficio
importante en cuanto al control de los datos que se ingresan.

07
TÓPICO SISTEMA DE ARCHIVO BASE DE DATOS
Seguridad El acceso a los archivos se controla a través La base de datos, provee una capa de
de sistema operativo, ya que los sistemas de seguridad adicional a la del Sistema
archivos no proveen una capa de Operativo. Esto implica, que para las bases
seguridad propia, en consecuencia se tiene de datos se crean esquemas de acceso a
o no se tiene acceso al archivo en su los datos y a los componentes propios de
totalidad. ella a diferentes resoluciones estructurales
(dato, registro, tabla, archivo).

Ejemplo: Si se tiene un archivo con los datos del estudiante y se desea evitar el acceso
indebido o involuntario de usuarios externos, el Sistema Operativo provee mecanismos de
control de este acceso a través de grupos de usuarios ó dominios (dependiendo el S.O.). Si
por alguna razón este mecanismo de seguridad falla (mal diseño, virus, energía, hackers)
no habrá manera de evitar el daño del archivo. Por el contrario, si una base de datos
almacena esta información, el esquema de seguridad adicional los protege. Por otra
parte, es posible hacer que un usuario final solo consulte los datos relacionados con el
código, nombre, apellido, dirección y que otros datos se oculten o que un usuario en
particular pueda actualizar el registro de un estudiante, aunque otro usuario esté
efectuando la misma labor sobre otro registro de la misma tabla. Para el caso de un
archivo se podrá consultar o no todo el archivo.

Independencia Un archivo en sí mismo sin una aplicación En una base de datos cada una de las
entre datos y que lo abra, lea y muestre de forma tablas posee descripción del contenido y
adecuada puede no decir mucho. Lo que significado de la misma. En complemento
aplicaciones implica que los datos dependen a esto, el SGBD provee mecanismos que
completamente de los programas para permiten el acceso coherente de los
ser interpretados. datos sin necesidad de implementar
programas. Ahora bien, este acceso no es
del todo perfecto en cuanto a diseño,
pero si ofrece una visión completa de la
finalidad de los datos. Si bien es cierto, las
aplicaciones bien elaboradas
complementan el mantenimiento y uso de
estos datos, el control real de los mismos lo
ejerce la base de datos.

Ejemplo: Si un archivo plano se abre con un editor de texto y su contenido no está


documentado, posiblemente algunos de los datos allí almacenados transmitan su
significado, pero otros no. Observe el siguiente registro: 01212545 SARA MENESES 2564778
1584569, ¿Qué significado tiene cada uno de los datos numéricos?, posiblemente
número de documento, de seguro, sueldo, descuentos... etc. Si estos datos se
almacenan en una tabla, esta tiene su propio diseño y documentación, cada dato tiene
un nombre, una restricción, un significado, un tipo de dato, una mecanismo de operación
y lo que es más importante, tiene significado para las demás tablas.

Control de Controlar restricciones entre los datos de En una base de datos, las restricciones en
archivos que son independientes, se hace su gran mayoría se asignan y no se deben
restricciones
complejo si solo se hace uso de implementar. Por otra parte, aquellas
programas para ello, y aunque la restricciones que aplican para un dato en
restricción no sea difícil de elaborar, debe particular y que se comparte con otras
elaborarse de todas formas. tablas se deben heredar y si no se da el
caso, el SGBD reportará error.

Ejemplo: Suponga que se desea controlar que el código del estudiante sea un dato que
contenga solo números. Para lograr esto en un archivo, se debe implementar la rutina que
se encargue de validar dicho dato cuanto se ingrese, se lea, o se modifique. En una base
de datos se asigna la restricción al campo y esta opera durante todo momento, en
cualquiera de las operaciones que se ejecuten sobre este campo. Si por la organización
de los datos el campo código del estudiante se relaciona con otras tablas, esta restricción
se hereda, asegurando la consistencia de los datos.

08
01
TÓPICO SISTEMA DE ARCHIVO BASE DE DATOS
Integridad Cuando se hace uso de archivos Una vez se establece una relación entre dos
Referencial independientes (si no se ha implementado o mas tablas, la base de datos mantiene
algún programa), es probable que se siempre la integridad de esta referencia. En
pueda eliminar registros de un archivo que consecuencia no será posible eliminar un
depende de la existencia de otro registro en registros que se encuentre referenciado por
un archivo aparte, generando como otra tabla.
consecuencia una inconsistente entre
referencias.

Ejemplo: Suponga que se tienen dos archivos, el de los estudiantes con sus datos
personales y el de las materias que cursan los estudiantes. El segundo archivo referencia el
código del estudiante para saber a quién pertenecen las materias. Como los archivos son
independientes, es posible eliminar del archivo de estudiantes algún registro, dejando sin
referencia el estudiante al que pertenecen las materias registradas en el segundo archivo.
En contraparte, en una base de datos esto no será posible, cuando se intente eliminar el
estudiante de la tabla, generará un mensaje de error indicando que existen referencias a
este registro.

Compartir Datos El Sistema Operativo ofrece mecanismos Una base de datos provee mecanismos
para compartir archivos, pero mucho más finos y sofisticados para
infortunadamente este proceso se refiere compartir archivos, permitiendo por
a la totalidad del mismo, esto implica que ejemplo escribir de forma simultánea dos
cuando un usuario está actualizando un registros en una tabla o leer la tabla
archivo, este no puede ser accedido por mientras un usuario ingresan registros a ella
otro usuario para el mismo fin. o modifica datos.
Ejemplo: Si se desea hacer una modificación en el archivo que contiene los datos
personales de los estudiantes, este archivo se abre en su totalidad y en consecuencia
cuando otro usuario desee acceder a él, se encontrará con que está siendo usado y en
consecuencia debe esperar a que el recurso se libere para poder accederlo. En una base
de datos el usuario que está modificando el registro en particular no necesariamente
bloquea a los demás usuarios para consultar y/o modificar otro o el mismo registro en la
misma tabla.

Consistencia de En muchos casos, la ejecución de una Las bases de datos proveen mecanismos
transacción requiere de un grupo de que controlan la consistencia de las
Transacciones
modificaciones sobre distintos archivos. Si transacciones, de forma tal, que si esta no
por alguna razón una o varias de estas se efectúa en su totalidad, no se aplica y la
modificaciones no se efectuara base de datos queda en el mismo estado
correctamente, la transacción en su en el que se encontraba antes de iniciar la
totalidad sería inconsistente. Implementar transacción.
este tipo de control en un Sistema de
archivos no es sencillo y por el contrario se
cataloga de dispendioso.
Ejemplo: Suponga que un estudiante desea matricularse. Esta transacción completa para
la base de datos incluye: Ingresar el pago correspondiente, incluir la cantidad de materias
y cambiar el estado del estudiante a matriculado. Suponga que se ingresó el pago, se
incluyeron las materias respectivas, pero antes de cambiar el estado de estudiante, hubo
un fallo de energía; esto trae como consecuencia, que la transacción en su totalidad no
fue consistente. Si este proceso se hizo sobre un sistema de archivos, implementar este
control se hace complicado e ineficiente, mientras que en una base de datos es posible
deshacer la transacción si esta no se efectuó completamente, es decir el ingreso del pago
y la inclusión de las materias se deshacen y en consecuencia la base de datos mantiene
sus datos consistentes.

Tabla 1.
Sistemas de Archivos vs. Base de Datos

09
01
La conclusión al hacer la comparación entre un sistema de archivo y una base de datos se hace evidente
que los sistemas de archivo no proveen la lógica de operación, interacción y control de sus datos, toda
esta labor se deja en manos del desarrollador. Esto puede generar en validaciones que no se efectuaron,
procesos que no han quedado del todo afinados para casos especiales y un sin número de
inconvenientes de control en la operación de estos datos. En una base de datos en contraposición, la
lógica a la que se hace mención ya está eficientemente implementada para ser usada.

Es de esperar, que en adelante al momento de enfrentarse al desarrollo de un sistema de información y


específicamente a la organización de los datos que soportan la operación de este sistema de
información, la solución evidente sea una BASE DE DATOS.

1.4 SISTEMA GESTOR DE BASE DE DATOS


Los datos por sí solos no están en capacidad de cumplir con la funcionalidad anteriormente expuesta, por
esta razón, están inmersos en todo un conjunto de componentes que controla de forma eficiente
cualquier tipo de operación que se ejecute sobre ellos. Estas operaciones a las que se hace mención
comúnmente son: ingresar, modificar, eliminar, consultar, generar vistas de los datos, crear índices,
restricciones y relaciones, entre otras. Al software genérico encargado proveer los mecanismos que
permite efectuar esas operaciones se le denomina Sistema Gestor de Bases de Datos (SGBD ó en inglés
Database Management System DBMS). SGBD comunes son: Oracle, Adaptative Server, SQL Server, Informix,
DB2, postgreSQL. El término genérico hace referencia a que múltiples herramientas y aplicaciones pueden
acceder al SGBD sin pérdida de ninguno de los servicios ya mencionados.

Para soportar las operaciones ya descritas, la organización del SGBD tiene su grado de complejidad en
comparación con el de un sistema de archivos, pero esto no significa que se deba construir, el SGBD ya lo
provee.

1.5 ARQUITECTURA DE UN SISTEMA GESTOR DE


BASE DE DATOS
La organización del SGBD se conoce con el nombre de arquitectura y en esta se definen los componentes
básicos que deben existir. El siguiente gráfico representa la arquitectura a la que se hace mención:

Diseñador
Administrador
de B.D.
Usuarios

SGDB

Compilador Servicios de Interfaz


Figura 1.
del Esquema Almacenamiento
y Recuperación
Usuario Arquitectura de un Sistema
2
Gestor de Bases de Datos

Sistema Operativo

2
Metadatos Datos de Operación Figura original tomada del libro Bases de Datos
modelos, lenguajes, diseño. James L. Jhnson.
Adaptaciones Mary E. Ramírez Cano.

10
01
Haciendo un pequeño recorrido de abajo hacia arriba, se encuentran en primer orden los datos y los
metadatos. Los primeros hacen referencia a los datos de la operación misma del sistema que estos
soportan, por ejemplo, la tan mencionada tabla de estudiantes que hasta ahora se tomado como
ejemplo. Los metadatos por su parte, se refieren a los datos que se deben almacenas de los datos de
operación. Esto puede sonar extraño, pero ¿Cómo sabe el SGBD que el nombre del estudiante es un dato
de tipo caracter y que tiene una longitud máxima de 100?, esta información se clasifica como metadato
ó llamado comúnmente diccionario de datos.

Subiendo de nivel se encuentra el Sistema Operativo que controla el acceso físico a los datos y metadatos.
Por otra parte, el Administrador de la base de datos se encarga de diseñar el esquema conceptual que
organiza la base de datos como tal, pero el SGBD se encarga de validar que este esquema cumpla con
restricciones de funcionalidad, como por ejemplo que al establecer una relación se haga entre campos
adecuados o que la creación de una tabla y se sus campos sea correcta, que las restricciones de los
campos sean adecuadas. Cuando este tipo de tareas están correctamente diseñadas el diccionario de
datos se actualizará.

Los usuarios de la base de datos son aquellos que no son administradores, pero que requieren distintos
niveles de acceso a los datos. Por ejemplo, efectuar consultas ó actualizar datos. Esta interacción puede
darse por aplicaciones externas, pero el componente denominado Interfaz de Usuario se encarga de dar
entrada a estas operaciones.

El último componente denominado Servicios de almacenamiento/recuperación recibe las solicitudes de


los usuarios, las valida y optimiza si es posible y se encarga también de enviar los resultados a la interfaz de
usuario.

1.6 ARQUITECTURA DEL SISTEMA DE BASE DE DATOS


De acuerdo a los servicios que ofrecen u operaciones que se ejecutan sobre las bases de datos, la
arquitectura de un Sistema de Base de Datos3 se clasifica en tres niveles:
1. Físico ó Interno.
2. Conceptual ó Lógico.
3. Externo o de Usuario.

La siguiente gráfica representa esta arquitectura:

Externo o
Usuarios Usuario

Vista Personalizada Vista Personalizada

Vista Conceptual Lógico o


(tablas, vistas, índices, relaciones,
restricciones, etc. Conceptual

Físico o
Vista Física
Interno Figura 2.
Arquitectura de un Sistema
Sistema Operativo
Datos
de Bases de Datos
3
Estándar ANSI/SPARC :American National Standards Institute /Standards Planning And Requirements Committee.

11
01
En el nivel físico se clasifican los datos almacenados en bruto sobre los dispositivos magnéticos (discos,
cintas) incluyendo el hardware necesario para acceder a los mismos, por ejemplo memoria.
Especificaciones tales como el control del espacio que ocuparán los datos, lugares físicos específicos de
almacenamiento de los mismos, cantidad de memoria requerida para una consulta, organización real de
un índice, son algunas de las operaciones que se clasificarían en este nivel.

Un ejemplo clásico de cómo se ve el sistema de base de datos a nivel físico es la organización de un índice
en un árbol sobre la tabla estudiantes por el campo código, las referencias a los nodos del árbol y los datos
mismos del árbol.

Figura 3.
Índice (nivel Fisico)

Otro ejemplo clásico es la cantidad de despacio que ocupa un registro de la tabla de estudiantes y cada
uno de sus atributos, la información de control, la información que indica cuál es el índice de la tabla.

El nivel lógico o conceptual incluye la organización de los datos basados en modelos con un mayor nivel
de abstracción, mucho más entendibles para el resto de la comunidad. Esta organización no muestra
realmente el almacenamiento físico de los datos, pero si las características reales de los mismos.

Ejemplos clásicos de operaciones en este nivel son la elaboración del modelo entidad, relación, la
descripción en el modelo relacional de datos de cada una de las tablas, campos y sus características.

E S T U D I A N T E S Lección Instructor
código Numérico(6)
nombre Carácter (50) # fecha Dicta # identificación
apellido Carácter (60) # hora_inicio Es dictada * nombre
..... * hora_fin * apellido Figura 4.
* dirección Índice (nivel
* teléfono
Lógico)
El nivel externo se refiere a la visualización de los datos desde el punto de vista de los usuarios, que por lo
general, no coincide con la organización física de los mismos. Ejemplos clásicos de este tipo de
operación, es la interfaz que construye el desarrollador para que el usuario ejecute algún tipo de
operación sobre la base de datos, por ejemplo ingresar el autor de un libro.

Figura 5.
Interfaz de Usuario
(Nivel Externo)

Para el usuario es absolutamente clara la interfaz, sin embargo, la organización física de los datos no es la
misma que se observa en el ejemplo.

12
01
Otro ejemplo en el que se evidencia el nivel externo es aquel en el que se muestra al usuario la
combinación de varias tablas. Para el usuario es como si todos los datos estuvieran almacenados en la
misma tabla, pero esa no es la realidad. Esto se observa en la siguiente gráfica:

Figura 6.
Interfaz de Usuario
(Nivel Externo)

En el que los datos de Nombre, dirección, ciudad y teléfono están en una tabla distinta a los datos de Título,
ISBN y Descripción y aún así es posible visualizarlos de esta manera, como si todos estuvieran uno junto al
otro (esto es posible por que se ha establecido una relación entre las dos tablas).

1.7 ARQUITECTURA CLIENTE / SERVIDOR


Originalmente los sistemas de bases de datos eran Centralizados, esto significaba, que tanto la base de
datos como las aplicaciones que los accedían se encontraban en un mismo equipo.

Debido al ritmo acelerado con que evoluciona la tecnología y a la disminución de los costos para la
introducción de la misma, los equipos que operan los usuarios se hacen cada vez más robustos,
originando una ola de migración al cliente de parte de la aplicación que accedía a los datos que se
almacenan en el servidor, bajo el resguardo del SGBD.

Pero esta tendencia ha venido bajando debido a que el mantenimiento de aplicativos en cada usuario se
tornó costoso y en muchos casos ineficiente. Dada esta situación, se agregó a esta arquitectura un nivel
adicional, en el que el cliente accede a un servidor de aplicaciones y este a su vez accede al servidor de
base de datos. La siguiente figura tipifica esta arquitectura:

Figura 7.
Arquitectura Cliente/
Servidor de 3 niveles.

1.8 ADMINISTRADOR DE BASES DE DATOS (ABD-DBA)


El administrador de la base de datos, es el encargado de crear, mantener, auditar y controlar el esquema
de la Base de Datos, convirtiéndose en el “superusuario” de la misma.

13
01
En una base de datos normalmente se debe hacer un mantenimiento regular ya que son muchos los
eventos que suceden y que la afectan directamente. Ejemplos de estos eventos son:
- Ingresa un nuevo usuario.
- Desactivar el acceso a un usuario.
- Surge un nuevo proceso que involucra la creación de: tablas, campos, restricciones, relaciones e
índices, entre otros.
- Hacer copia de seguridad de los datos.
- Restaurar alguna copia de seguridad.
- Controlar el acceso al esquema de la base de datos.
- Mantenimiento de los archivos de control de la base de datos.

y una infinidad de situaciones que dan al administrador de la base de datos un rol importante dentro de la
organización, razón por la cual, debe cumplir con un grupo de habilidades que se resumen en:

- Conocimiento profundo del SQL (Structure Query Languaje): Este lenguaje estructurado es el
estándar para acceder a bases de datos.
- Dominio de las técnicas de modelamiento de datos.
- Buena capacidad de abstracción del proceso real que se desea modelar.
- El más alto nivel de ética profesional, ya que esta persona tiene total acceso y dominio de los
datos de una organización.
- Habilidad para organizar y planear las actividades, que como administrador, le son inherentes.
- Responsabilidad en lo referente al ejercicio de sus funciones.

1.8.1 FUNCIONES DE UN DBA


£ Definir políticas de instalación física: El DBA debe establecer el diseño del espacio físico sobre el que
se montará los servidores y demás equipos requeridos para el eficiente funcionamiento de la Base de
Datos, así como las políticas de acceso y mantenimiento del mismo.

£ Definir características técnicas: El DBA está en capacidad de definir los requerimientos técnicos de
los equipos necesarios para poner en funcionamiento la base de datos.

£ Definir el esquema de la base de datos: Se refiere al diseño de la base de datos en el ámbito lógico
conceptual y en la representación de este diseño en el SMBD. Esto implica que el DBA debe poseer total
claridad y entero conocimiento del modelo de datos que administra.
Ejemplo: El DBA debe estar en capacidad de crear los componentes requeridos para que el proceso de
matrícula de un estudiante se ejecute a cabalidad, describir de forma clara y precisa las tablas, los
campos, tipos de datos, restricciones, índices y en general debe ser capaz de definir a nivel lógico todo
requerimiento relacionado con este proceso.

£ Definir las estructuras de almacenamiento: Al crear la base de datos, es necesarios definir aspectos
desde el punto de vista físico, que tienen incidencia en el correcto funcionamiento de la misma, es decir,
lograr el mejor desempeño al manipular los datos.
Ejemplo: Definir en que discos se almacenarán los datos o cuanto espacio de crecimiento (en registros,
en bytes o en porcentaje) se asigna a una tabla.

£ Mantener las estructuras físicas y lógicas: A medida que los requerimientos y el entorno cambian, se
debe modificar el esquema y las estructuras de almacenamiento para lograr que la base de datos sea fiel
representación de lo que ocurre en la realidad.
Ejemplo: La universidad desea agregar a los datos personales del estudiante la dirección de correo
electrónico. En este caso será al DBA quién adicione este dato al esquema y a la estructura física de la
misma.

14
01
£ Autorizar el acceso: Determinar que usuarios tendrán acceso a que datos y que tipo de acceso será el
que se asigne. Este punto se traduce en que no todos los usuarios podrán manipular la base de datos con
los mismos privilegios.
Ejemplo: Para la base de datos de la biblioteca, los estudiantes que consultan los libros y su disponibilidad,
no podrán modificar los datos básicos de los libros como el nombre del autor, o el título del mismo.

£ Resguardar los datos: Esto se refiere a los mecanismos que el DBA debe implementar, para asegurar a
la empresa que los históricos de los movimientos u operaciones que representa la base de datos no se
pierdan.
Ejemplo: ¿Cuál método y conque frecuencia se generarán copias de seguridad de la base de datos?.
¿Cuál es la organización física de los servidores sobre los que reside la base de datos?.

1.9 REFERENCIAS
£ C.J. Date. Introducción a los Sistemas de Bases de Datos. 7ª edición. Pretice Hall. Capítulos 1 y 2.
£ SILBERTSCHATZ, KORTH, SUDARSHAN. Fundamentos de Bases de datos. 4ª edición. Mc. Graw Hill. Capítulo 1.
£ ELMASRI, NAVATHE. Sistemas de Bases de Datos. 2ª edición. Addison Wesley. Capítulos 1 y 2.
£ JOHNSON, James. Bases de Datos, Modelos, Lenguajes, Diseño. Oxford. Capítulo 1.

15
01

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