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

Universidad Nacional de Costa Rica Diseo e Implementacin de Bases de Datos

Un enfoque formal a las Bases de Datos Desde lo relacional hasta lo objeto relacional

Captulo 1
Principios de bases de datos
SOBRE EL CONCEPTO DE LOS DATOS Y BASE DE DATOS
Las personas utilizan la palabra datos diariamente, para expresar una unidad
atmica de informacin, por ejemplo el nmero 4 representa un dato, el cual por s
mismo no significa absolutamente nada. Cuando al nmero 4 se le endosa una unidad
entonces decimos que es informacin til. Por ejemplo, para el humano decir 4 aos
tiene ms sentido que decir tiene 4 Qu? Las bases de datos son excelentes formas
de almacenar datos (no informacin, pues la informacin supone conocimiento del
tema). Se define una base de datos como un conjunto de datos organizado que
guardan relacin entre ellos.

SOBRE LAS BASES DE DATOS


Un Sistema Gestor de Bases de Datos, es en un sentido purista una aplicacin que
administra un conjunto de datos; sin embargo esa definicin no es suficiente para
explicar que es una base de datos. Como programador usted crear una base de datos
desde cero, sin embargo es imprctico para los profesionales invertir grandes
cantidades de recursos creando su propia base de datos, en vez de utilizar alguna
opcin libre. A estos programas que administran las bases de datos se les llaman
Sistemas Gestores de Bases de Datos (SGBD). Para considerar que un SGBD es un
buen gestor debe de tener las siguientes caractersticas:
Atomicidad es la caracterstica que describe las transacciones en donde se tiene que
dar el todo o nada. Supongamos un programa para transferencias monetarias,
ahora supongamos que dicho programa usa una base de datos para quitar dinero de
una cuenta y ponerle dinero a otra cuenta. Si durante el proceso de quitarle dinero a
la primera cuenta, la base de datos cae por determinada falla, es tarea del SGBD
abortar todo proceso involucrado y deshacer los cambios. De esta forma se mantiene
el todo y la parte. Si la transaccin fuera exitosa entonces se dice que la base de datos
est en un estado consistente1.
Consistencia como producto de transacciones atmica, una base de datos deber
estar siempre (o en algn momento en el tiempo, en el caso de las replicaciones) en
un estado consistente. Es decir, todos los datos de la base tienen un estado apropiado.
Adems de las transacciones atmicas es posible llegar a la consistencia mediante
reglas, constraints, cascades y triggers.
Isolation (aislamiento) tiene relaciones a la teora de bloqueos, una transacciones
debe ser aislada en el sentido que su ejecucin no afecte a otra transaccin.

Consistencia se refiere a que todas las transacciones de una base de datos, son transacciones
completas y por lo tanto no hay informacin incorrecta entre los datos.
1

2013 Steven R. Brenes Chavarra

p. 1 de 4

Universidad Nacional de Costa Rica Diseo e Implementacin de Bases de Datos


Un enfoque formal a las Bases de Datos Desde lo relacional hasta lo objeto relacional
Supongamos que existen la transaccin T1 y T2. Ahora T1 afecta los datos de salarios
para leerlos, mientras la transaccin T2 realiza una actualizacin aumentndole
5.000 colones a todos los empleados. Para lograr que ambas transacciones se ejecuten
de forma adecuada, es necesario aplicar un bloqueo no exclusivo a la transaccin T1
mientras que la transaccin T2 deber tener un bloqueo exclusivo para que la
informacin de lectura sea la correcta; mientras se asla la transaccin T2.
Durabilidad una vez que una transaccin se ejecuta, la misma deber ser
permanente. Es decir, no podra suceder que una transaccin se deshaga sin motivo.
Para ello los SGBD implementan logs de transacciones y escritura a los archivos
fsicos. El conjunto de estas cuatro caractersticas, tpicamente se denotan por ACID.
Poner las caractersticas ACID en ejecucin no es tan sencillo, las transacciones en
las bases de datos requieren pequeos cambios en los ndices para actualizar algn
estado, requiere consultar el diccionario de datos por citar algunos casos. Cada una
de estas transacciones podran fallas por diversas rezones, por ejemplo no tiene
campo suficiente el disco duro, existe un bloqueo de archivos a nivel de sistema
operativo (OS), el tiempo de CPU que el OS le dio al SGBD para realizar una
transaccin.
ACID sugiere que la base de datos pueda realizar todas estas operaciones
inmediatamente. De hecho esto es difcil de conseguir. Hay dos clases de tcnicas
populares: escribir a un registro antes de continuar y la paginacin de la
sombra. En ambos casos, los bloqueos se deben implantar antes que la informacin
sea actualizada, y dependiendo de la tcnica puesta en prctica, todos los datos se
tienen que haber ledo. En escribir a un registro antes de continuar, la atomicidad es
garantizada asegurndose que toda la informacin est escrita a un registro antes
que se escriba a la base de datos. Eso permite que la base de datos vuelva a un estado
anterior en caso de un desplome. En sombrear, las actualizaciones se aplican a una
copia de la base de datos, y se activa la nueva copia cuando la transaccin sea
confiable. La copia refiere a partes sin cambios de la vieja versin de la base de datos,
en vez de ser un duplicado entero.

SOBRE LAS 12 REGLAS DE CODD


Durante los aos ochenta, comenzaron a aparecer numerosos Sistemas Gestores de
Bases de Datos, sin embargo la gran mayora eran sistemas que administraban
archivos en forma de tablas pero carecan de muchas funciones deseables. En 1984
Edgar Codd, el creador del modelo relacional formul 12 reglas de lo que debera ser
un Sistema Gestor de Bases de Datos, alguna de estas reglas son difcil de
implementar, por lo que algunos SDBD las implementan parcialmente, cuanto ms
reglas implemente un SGBD ms relacional se puede considerar.
Regla 1. Regla de la informacin. Toda la informacin en una base de datos se
representa exclusivamente mediante tablas.
Regla 2. Regla del acceso garantizado. Para todos y cada uno de los datos atmicos,
de una base de datos relacional se garantiza que son accesibles a nivel lgico

2013 Steven R. Brenes Chavarra

p. 2 de 4

Universidad Nacional de Costa Rica Diseo e Implementacin de Bases de Datos


Un enfoque formal a las Bases de Datos Desde lo relacional hasta lo objeto relacional
utilizando una combinacin de nombre de tabla, valor de clave primaria y nombre de
columna.
Regla 3. Tratamiento sistemtico de valores nulos. Se debe disponer de valores nulos
(distintos a cadenas vacas, vacos, 0) para representar informacin incompleta o no
aplicable de manera que sea independiente del tipo de dato.
Regla 4. Catlogo dinmico en lnea basado en modelo relacional. Esto significa que
los datos necesarios para que funcione la base de datos, como el diccionario de datos
o el catlogo de la base de datos, es tambin una tabla y por lo tanto es posible de
consultar su informacin de la misma forma que los dems datos.
Regla 5. Regla del sublenguaje de datos completo. Todas las operaciones en las bases
de datos, deben poder ser expresadas en un lenguaje de datos, que sea consistente
con los modelos relacionales.
Regla 6. Regla de actualizacin de vistas. Todas las vistas que son tericamente
actualizables por el programador, tambin debern ser actualizables autnomamente
por el sistema.
Regla 7. Insercin, actualizacin y borrado de alto nivel. Todas las operaciones para
mantener la base de datos con informacin, es debe de poder hacer mediante
operaciones de alto nivel (teora de conjuntos). Es decir, se pueden hacer
actualizaciones masivas y no registro por registro.
Regla 8. Independencia fsica de los datos. Los programas a tienen algn tipo de
relacin con las bases de datos, deben poder seguir funcionando sin modificacin
alguna, aunque la base de datos sufra un cambio en la ubicacin de los archivos.
Regla 9. Independencia lgica de los datos. Los programas a tienen algn tipo de
relacin con las bases de datos, deben poder seguir funcionando sin modificacin
alguna, aunque la base de datos sufra un cambio en la forma de las tablas, como
agregar nuevas columnas.
Regla 10. Independencia de integridad. Las reglas de integridad deben ser escritas
en un sublenguaje compatible con la base de datos. Segn el modelo relacional la base
de datos debe tener las siguientes integridades:

Integridad de dominio
Integridad de entidad
Integridad referencial

Regla 11. Independencia de distribucin. Las bases de datos deben ser transparente
aunque sean sistemas distribuidos. Para cumplir con esta regla se debe cumplir las
siguientes subreglas:

Transparencia de localizacin. El usuario tiene la impresin de que trabaja


con una base de datos local.
Transparencia de Fragmentacin. El usuario no se da cuenta que la relacion
con la que trabaja, est separada.

2013 Steven R. Brenes Chavarra

p. 3 de 4

Universidad Nacional de Costa Rica Diseo e Implementacin de Bases de Datos


Un enfoque formal a las Bases de Datos Desde lo relacional hasta lo objeto relacional

Transparencia de replicacin. El usuario no se da cuenta de que existen


copias de la informacin en diferentes bases de datos.

Regla 12. Regla de la no subversin. Las bases de datos deben poder manipular
registros uno por vez (a bajo nivel), y ello no implicar saltarse las reglas de integridad
de la regla 10.

2013 Steven R. Brenes Chavarra

p. 4 de 4

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