Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Justificacin
Descripcin de la asignatura
- Se define la Administracin de Bases de Datos, los tipos de DBA, las tareas del
DBA y su mbito en las organizaciones.
Objetivos
Objetivo general
Objetivos especficos
- Definir las condiciones que deben asegurar los DBMS para mantener la
informacin libre de errores.
El objetivo general de los Sistemas de Gestin de base de datos (DBMS, por sus
siglas en ingls) es el de administrar de forma clara, sencilla y ordenada un
conjunto de datos que en lo posterior se convertirn en informacin relevante para
una organizacin.
- Consistencia: los DBMS's garantizan que los datos son siempre guardados de
forma coherente con Modelo de datos. Se garantiza que diferentes consultas de
una misma informacin siempre obtendrn el mismo resultado.
1.2. La informacin
- Polimorfismo.
7. La Gestin del conocimiento implica mejorar los procesos del negocio que se
basan en conocimiento: es primordial dar direccin y mejorar el proceso genrico
de la gestin del conocimiento, pero se debe hacer donde el conocimiento es
generado, utilizado y compartido con intensidad, en la organizacin.
9. La gestin del conocimiento nunca para: tal como ocurre con la gerencia de
Recursos Humanos o Administrativa, nunca llega el momento en que se pueda
decir que el conocimiento est completamente bajo control.
Debido a que en las Organizaciones es comn trabajar con Activos tangibles cuyo
valor puede ser medido con mucha precisin, ha sido muy complicado determinar
el valor de la informacin. Sin embargo est claro que si los directores tienen
informacin adecuada, es ms probable que puedan tomar decisiones pertinentes
y certeras con un mayor impacto positivo en el negocio. El desarrollo de los
Sistemas de Bases de Datos se convirti en crucial para proporcionar informacin
correcta y oportuna, frente al almacenamiento en Sistemas de Archivo que era
utilizado entonces.
- Redundancia de datos.
Los Sistemas de Gestin de Bases de Datos (DBMS, por sus siglas en ingls)
superaron las limitaciones que tenan los sistemas orientados a archivos. Al tolerar
una estructura de datos centralizada e integrada, los DBMS's eliminaron los
problemas de redundancia y control de datos.
- El modelo de red: al igual que el modelo jerrquico, usa punteros hacia los datos
almacenados. Sin embargo, no necesariamente utiliza una estructura de rbol
invertido.
- El modelo deductivo: los datos se representan como una tabla, pero se operan
mediante clculos de predicados.
OBJETIVOS
- Establecer la estructura y funciones adecuadas para el trabajo del personal que maneja
informacin en las organizaciones, separando los factores tcnicos y de negocio.
- Revisar las tareas comunes de los DBA's, dependiendo de su orientacin.
2.1. Introduccin
Toda organizacin que utilice una Base de datos para organizar su informacin,
requiere de un grupo de Administracin para asegurar su adecuado
funcionamiento. A pesar de esto, la Administracin de Bases de datos no siempre
es practicada adecuadamente, para lograr resultados ptimos.
- Las tareas para asegurar tcnicamente la disponibilidad de los datos cubren toda
la jornada, e incluso se realizan en horarios fuera de oficina, para no interrumpir a
los usuarios.
- Monitoreo y Afinamiento
- Respaldos
- Integridad de datos
- Identificar que las tablas tengan los ndices adecuados para responder
adecuadamente a las consultas de los usuarios.
La disponibilidad implica que los usuarios autorizados tengan acceso a los datos
cuando lo necesiten para atender a las necesidades del negocio. De manera
incremental los negocios han ido requiriendo que su informacin est disponible
todo el tiempo (7x24, o siete das a la semana, 24 horas del da).
2.3.4. Seguridad
La Seguridad implica la capacidad de los usuarios para acceder y cambiar los
datos de acuerdo a las polticas del negocio. Es responsabilidad del DBA que la
informacin est disponible solamente para usuarios autorizados.
Que una Base de datos pueda ser recuperada implica que si se da algn error en
los datos, en el DBMS o en el Servidor, el DBA puede traer de vuelta la base de
datos al Estado consistente en que se encontraba antes de que el dao se
causara. Las actividades de recuperacin incluyen el hacer respaldos de la base
de datos y almacenar esos respaldos de manera que se minimice el riesgo de
dao o prdida de los mismos, tales como hacer diversas copias en medios de
almacenamiento removibles y almacenarlos fuera del rea en antelacin a un
desastre anticipado. La recuperacin es una de las tareas ms importantes de los
DBA's.
Las grandes organizaciones pueden tener diferentes DBA's para realizar estas
tareas, pero en las organizaciones pequeas un solo DBA debe ejecutar todos los
roles.
- Nmero de usuarios.
- Nmero de aplicaciones.
- Niveles de servicios.
- Requerimientos de disponibilidad.
- Tipo de aplicaciones.
OBJETIVOS
- Analizar los factores preponderantes para el escogimiento de un DBMS en particular,
dependiendo de las caractersticas y recursos tcnicos de la organizacin.
- Identificar los pasos necesarios para el proceso de instalacin de un DBMS.
- Analizar las ventajas de mantener las versiones actualizadas de un DBMS.
3.1. Introduccin
- Si se cuenta con servicios sobre Windows, es muy probable que el DBMS sea
Microsoft SQL Server, aunque otros proveedores tambin promocionan sus
motores para ejecutarse en esta plataforma.
Ante este panorama, la pregunta que cabe es: Quin decide el DBMS a utilizar y
en qu momento?
Todos los proveedores lderes de DBMS's por lo general ofrecen las mismas
caractersticas en sus productos. Si un proveedor en particular lanza una
caracterstica nueva, los otros no tardan en incorporarla, probablemente en menos
de dos aos.
- MySQL
- PostgreSQL
- Ingres
- Firebird
Una de las principales tareas del DBA debe ser escoger el DBMS correcto a
utilizar, cada vez que una aplicacin es desarrollada. Una eleccin equivocada
puede causar bajo rendimiento, fallas del sistema y aplicaciones inestables.
- Personal DBMS: Las bases de datos personales estn diseadas para ser
utilizadas por un usuario en una estacin de trabajo.
- Mobile DBMS: Las bases de datos mviles son una versin especializada de un
DBMS Departamental o Empresarial. Estn diseadas para usuarios remotos que
generalmente no estn conectados a una red local, y pueden ser utilizadas en
dispositivos mviles. Adicionalmente, ofrecen herramientas de sincronizacin de
informacin para actualizar los cambios contra una Base de datos Centralizada de
la organizacin.
2. Shared Disk: este tipo de cluster es usado para sistemas de alta disponibilidad
orientados a procesar un gran volumen de informacin. Estos sistemas consisten
en un dispositivo de almacenamiento compartido y nodos del cluster que se
distribuyen el acceso a los datos compartidos, desde diversas fuentes.
Figura 3.2: Modelo de Cluster Shared Disk.
Si las tareas permiten dividir de forma lgica los datos de manera que los pedidos
de ciertos subgrupos puedan ser procesados usando parte de los datos, el
sistema Shared Nothing puede ser la opcin ms apropiada.
Los clusters con tolerancia a fallos de 2 nodos son los sistemas ms populares
comercialmente, pudiendo implementarse modelos Activo-Activo (los 2 nodos
pueden ser utilizados) y Activo-Pasivo (un nodo trabaja y el otro solamente espera,
en caso de falla).
Una vez que los requisitos sean cubiertos, se deben seguir las indicaciones de la
Gua para proceder a la instalacin.
- Bases de datos y Tablas de sistema que son usadas por el DBMS para la
administracin de las Bases de Datos de Usuario.
- Archivos de bitcora (logs).
La lectura desde disco siempre es ms lenta que la lectura desde la memoria, por
lo que la configuracin apropiada del cach de datos es un factor crtico en el
rendimiento de las aplicaciones.
Los recursos de memoria son requeridos por los DBMS's para soportar otras
caractersticas como el manejo de los bloqueos, control de los requerimientos de
datos, ordenamiento de la informacin y procesamiento de las consultas.
3.3.5. Configuracin
El primer estndar a establecer debe ser la gua para nombrar los objetos de las
bases de datos. Sin un estndar es dificultoso identificar correctamente los
nombres de los objetos, tanto para tareas de administracin como de
programacin.
- Polticas de actualizaciones.
- Consideraciones de interfaces.
OBJETIVOS
- Introducir el concepto de entidad como una estructura bsica del modelo relacional.
- Identificar los componentes de un modelo de datos.
- Analizar las fases del diseo de Modelos de Bases de datos.
- Analizar las reglas de Normalizacin e identificar cmo se deben aplicar.
4.1. Introduccin
A fines de los aos Sesenta, Edgar Frank Codd introdujo la Teora relacional para
las bases de datos. Este hecho determin un paso trascendental en la
investigacin de los DBMS's, pues se suministr un slido fundamento terico
para su desarrollo, dentro de este enfoque relacional. La teora de Codd propone
un modelo de datos basado en la teora de las relaciones, en donde los datos se
estructuran lgicamente en forma de entidades (tablas), siendo un principio
fundamental del modelo el mantenimiento de la independencia de esta estructura
lgica con relacin al modo de almacenamiento y a otras caractersticas de tipo
fsico.
La teora propuesta por Edgar Frank Codd present un nuevo modelo de datos
que persegua los siguientes objetivos:
- Flexibilidad: para lograr presentar a cada usuario los datos de la forma en que
ste requiera.
Para conseguir los objetivos indicados, Edgar Frank Codd introduce el concepto
de entidad (tabla) como una estructura bsica del modelo relacional. Toda la
informacin de la Base de Datos se representa en forma de entidades cuyo
contenido vara con el tiempo.
4.2.1. Entidades
Nombre de la tabla
Existen tambin los dominios de donde los atributos toman sus valores. Estos
dominios se denominan "Tipos de Datos".
- Ejemplo: Cliente
- No pueden existir filas duplicadas, es decir, todos los registros tienen que ser
distintos.
- La tabla es plana, es decir, en la relacin de una fila y una columna slo puede
haber un valor (no se admiten atributos con mltiples valores).
Ejemplos de dominios:
Por ejemplo los atributos edad_fsica y edad_mental pueden estar definidos sobre
el mismo dominio edad; o los atributos valor_compra y valor_venta pueden estar
definidos sobre el mismo dominio de enteros de longitud 10.
4.2.3. Claves
- Clave alternativa: son aquellas claves candidatas que no han sido finalmente
elegidas.
- Los atributos que componen la clave primaria no pueden tener valores nulos
(null).
- Los valores de las claves primarias no deberan ser cambiados, para no alterar la
unicidad de los registros.
4.2.4. Relaciones
2. Diseo conceptual.
3. Diseo lgico.
4. Diseo fsico.
Los analistas entrevistan a los futuros usuarios de la base de datos para recoger y
documentar sus requerimientos de informacin. En forma paralela, es conveniente
definir los requerimientos funcionales que consisten en transacciones que se
aplicarn a la base de datos, e incluyen la obtencin de datos y su actualizacin.
Una vez que se ha recogido todos los requerimientos, el siguiente paso es crear
un esquema para la base de datos mediante un modelo de datos conceptual.
Esto quiere decir simplemente que cada atributo slo puede pertenecer a un
dominio (que no puede ser dividido) y que tiene un valor nico para cada registro.
La primera forma normal fue creada para no permitir los atributos con mltiples
valores, compuestos y sus combinaciones.
- Ejemplo
Se disea una entidad para almacenar los nombres y telfonos de los clientes:
- Cliente
- Cliente
Figura 4.4: Ejemplo de Entidad Cliente que cumple con la 1FN.
- Telfono de Cliente
Figura 4.5: Ejemplo de Entidad Telfono de Cliente que cumple con la 1FN.
Una entidad est en segunda a normal si est en la 1FN y todos los atributos que
no son clave, dependen de la clave completa y no slo de una parte de sta.
- Ejemplo
Una entidad est en tercera forma normal si est en 2FN y todos sus atributos
dependen funcionalmente slo de la clave, y no de ningn otro atributo.
Esto significa que en una entidad en 3FN, para toda DF: X Y, X es una clave.
Podemos observar que si una entidad est en tercera forma normal, est tambin
en segunda forma normal, sin embargo lo inverso no siempre es cierto.
- Ejemplo
Se disea una entidad para registrar los ganadores de diferentes torneos de Tenis:
- Ganadores de Torneos
Figura 4.9: Ejemplo de Entidad Ganadores de Torneos que no cumple con la 3FN.
Se puede observar que la clave candidata para esta entidad es {Torneo, Ao}. Se
viola la 3FN porque el atributo Fecha de Nacimiento tiene una dependencia
transitiva hacia la clave candidata, de forma indirecta a travs de atributo Ganador.
Esto hace vulnerable a la entidad ante posibles inconsistencias lgicas, pues el
valor del atributo Fecha de Nacimiento podra ser diferente en algunos registros.
- Ganadores de Torneos
Figura 4.10: Ejemplo de Entidad Ganadores de Torneos que cumple con la 3FN.
- Jugadores de Tenis
Figura 4.11: Ejemplo de Entidad Jugadores de Tenis que cumple con la 3FN.
4.4.4. Cuarta forma Normal
A una condicin que haga cumplir esta dependencia de los atributos que requieren
duplicacin de valores se le denomina una Dependencia Multivaluada. Debido a
que requieren una gran duplicacin de valores de datos, un aspecto importante del
proceso de normalizacin es eliminar las Dependencias Multivaluadas. Esto se
hace con la Cuarta Forma normal.
- Ejemplo
- Facultad
- Comit
Figura 4.13: Ejemplo de Entidad Comit que cumple con la 4FN.
- Curso
OBJETIVOS
- Promover el uso correcto de los principios de Diseo de Aplicaciones, para lograr que los
programadores consideren la forma como sus scripts afectan al rendimiento de la Base de datos.
- Introducir las definiciones del lenguaje SQL y sus instrucciones principales.
- Explicar la forma cmo los DBMS's aseguran la integridad de la informacin mediante las
transacciones.
- Identificar los tipos de bloqueos y la forma adecuada de utilizarlos, para evitar el deadlock.
5.1. Introduccin
- Cmo optimizar los accesos a las Bases de Datos mediante el uso de ndices.
5.2. SQL
El SQL (Structured Query Language) es un lenguaje de consulta y programacin
utilizado para examinar, reemplazar y gestionar la informacin almacenada en los
DBMS's.
El lenguaje de definicin de datos (DDL por sus siglas en ingls) es el que permite
la modificacin de las estructuras de los objetos de la base de datos. Existen
cuatro instrucciones DDL bsicas: CREATE, ALTER, DROP y TRUNCATE.
- CREATE: Este comando crea un objeto dentro de la base de datos. Estos
objetos pueden ser una tabla, vista, ndice, trigger, funcin, procedimiento o
cualquier otro que el motor de la base de datos soporte.
- DROP: Este comando permite eliminar un objeto de la base de datos, que puede
ser una tabla, vista, ndice, trigger, funcin, procedimiento o cualquier otro objeto
que el motor de la base de datos contenga. Es posible combinar este comando
con la sentencia ALTER.
- TRUNCATE: Este comando se utiliza para borrar todo el contenido de una tabla.
La ventaja de este comando sobre DELETE, es que es mucho ms rpido si se
quiere borrar todo el contenido de la tabla, especialmente si la tabla es muy
grande. La desventaja es que TRUNCATE solamente sirve cuando se quiere
eliminar absolutamente todos los registros, ya que no es permitida la clusula
WHERE. Aunque en un principio esta sentencia parece ser de tipo DML, es en
realidad una DDL, ya que internamente para su ejecucin, el comando borra la
tabla y la vuelve a crear. Este comando no genera transacciones en el rea de log.
- SELECT: Esta sentencia sirve para hacer una consulta de los datos que se
encuentren en una tabla. Una consulta realizada con este comando devuelve los
registros que cumplan con la condicin indicada.
Sintaxis:
Ejemplos:
La siguiente sentencia devuelve el valor total de los registros que cumplen con la
condicin indicada:
Sintaxis:
Las cantidades de columnas y valores tienen que ser siempre iguales. Si una
columna no se especifica en la sentencia, le ser asignado el valor por omisin
indicado en la definicin de la tabla. Los valores especificados por la sentencia
INSERT tienen que satisfacer todas las restricciones aplicables a cada campo. Si
en la ejecucin de la sentencia ocurre un error de sintaxis o si alguna de las
restricciones es vulnerada, no se agrega el registro y se devuelve un error al
usuario.
Ejemplo:
- UPDATE: Una sentencia UPDATE de SQL es utilizada para modificar los valores
de un grupo de registros existentes en una tabla.
Sintaxis:
Sintaxis:
Ejemplo:
Una transaccin se define dentro del mbito de los sistemas de informacin como
una unidad de trabajo atmica, con respecto a la consistencia de los datos. Una
transaccin ejecuta un proceso de negocio completo que es solicitado por un
usuario. Una transaccin lgica puede consistir de vario pasos y requerir ms de
una transaccin fsica. El resultado de la ejecucin de una transaccin afectar los
datos almacenados en la Base, los cuales tienen que ser correctos antes y
despus de la transaccin.
Cuando todos los pasos de una transaccin son ejecutados sin problemas, se
acepta la transaccin, ejecutando la sentencia COMMIT. La ejecucin de la
sentencia COMMIT le indica al DBMS que los cambios realizados por la
transaccin pueden ser finalmente grabados en la Base de Datos.
Si alguno de los pasos de la transaccin falla, se tienen que solicitar al DBMS que
deshaga los cambios realizados. Esto se realiza ejecutando una sentencia
ROLLBACK. Cuando se ejecuta la sentencia ROLLBACK, los datos almacenados
son llevados a su estado inicial, es decir, al valor que tenan antes de la ejecucin
de la transaccin.
5.3.1. ACID
Es obligatorio que una transaccin cumpla con las propiedades establecidas por el
estndar ACID: atomicity, consistency, isolation, durability. Cada una de estas
cuatro condiciones tiene que cumplirse para asegurar que una transaccin est
correctamente diseada.
- Aislamiento: esta condicin asegura que una operacin no puede afectar a otras.
Esto permite que la realizacin de dos transacciones simultneas sobre la misma
porcin de informacin nunca generar ningn tipo de error.
- Una transaccin debe ser corta en duracin, porque sta bloquea recursos
compartidos para otras transacciones.
- Una transaccin debe estar diseada para que no espere una decisin, para que
no haya retrasos por una respuesta en medio de su ejecucin.
5.4. Bloqueos
Una responsabilidad importante para un administrador de base de datos es la
consistencia del DBMS, es decir, asegurar que los programas y procedimientos
proporcionen la confiabilidad de los datos a pesar de que ocurran posible errores
en la operacin del equipo, programas o errores humanos.
Resaltan dos aspectos en los que hay que tener cuidado para lograr aportar
confiabilidad a una base de datos dentro de un ambiente multiusuario:
Los bloqueos pueden ser colocados en distintos niveles: registro, pgina, tabla o
base de datos. Al tamao del bloqueo se lo conoce como granularidad del
bloqueo. Los bloqueos con granularidad mayor son adecuados para el DBMS en
cuanto a su administracin, porque consumen menos recursos de memoria. Sin
embargo, con frecuencia causan conflictos. Los bloqueos con pequea
granularidad son difciles de administrar, porque consumen mucha memoria.
Cuando se colocan bloqueos con granularidad fina existen muchos ms detalles
que el DBMS debe de controlar y revisar, pero los conflictos son menos comunes.
Los bloqueos tienen diferentes tipos. Un bloqueo exclusivo cierra al objeto ante un
acceso de cualquier fuente. Ninguna otra transaccin puede leer o modificar los
datos. Un bloqueo compartido cierra los objetos ante modificaciones, pero no a la
consulta. Otras transacciones pueden leer al objeto, siempre que no intenten
modificarlo.
Los lmites de una transaccin deben corresponder a la definicin del objeto que
se est procesando. Siguiendo esta estrategia de dos fases, las hileras de cada
afinidad en el objeto se bloquean conforme se necesitan. Se realizan las
modificaciones, pero los datos no se devuelven a la base de datos hasta que todo
el objeto haya sido procesado. Ya en este punto se efectan los cambios a la base
de datos real, y todos los bloqueos son liberados.
Aunque los bloqueos resuelve un problema, generan otro muy grave que se
denomina interbloqueo o abrazo mortal (deadlock). El deadlock consiste en que
un usuario espera un recurso que otro usuario tiene bloqueado, y este usuario a
su vez est esperando por un recurso que el primer usuario tiene bloqueado.
Existen dos maneras comunes de resolver este problema: impidiendo que el
interbloqueo se presente o permitiendo que ocurra, y a continuacin resolverlo.
5.4.1. Tipos de Bloqueos
5.4.2. Timeouts
Cuando los datos estn bloqueados por un proceso, otro proceso tiene que
esperar hasta que se libere el bloqueo, para poder acceder a la informacin. Un
bloqueo colocado por demasiado tiempo se convierte en un potencial problema
para el rendimiento de la aplicacin. Si la aplicacin no ha sido diseada de forma
apropiada, el bloqueo no se liberar hasta que el programa falle o se realice una
accin por parte del DBA.
5.4.3. Deadlocks
Muchos escenarios han sido construidos para ilustrar las condiciones de deadlock,
siendo el ms popular el Problema de Comida de los Filsofos:
Cinco filsofos tienen cinco platos de fideos enfrente y cinco tenedores, uno a cada lado
del plato. Los filsofos requieren ambos tenedores (derecha e izquierda) para comer.
Durante la comida realizarn solo dos operaciones mutuamente excluyentes, pensar o
comer. El problema es un paralelismo simplista entre procesos (los filsofos) tratando de
obtener recursos (tenedores); mientras estn en estado de ejecucin (comiendo) o de
lectura (pensando). Una condicin posible de deadlock puede ocurrir, si todos los filsofos
quieren coger el tenedor de la derecha y, a la vez, el de la izquierda: la comida terminar
en estado de deadlock.
OBJETIVOS
- Establecer la diferencia entre la integridad semntica y la integridad estructural.
- Identificar los mecanismos de control de la integridad estructural que proveen los DBMS's.
- Identificar los mecanismos de control de la integridad semntica que proveen los DBMS's.
- Analizar los tipos de relaciones entre las entidades y la forma de mantener la integridad
referencial.
6.1. Introduccin
Adems de los ndices, existen otras estructuras de Bases de datos que utilizan
punteros. Cuando se utilizan ciertos tipos de datos, el DBMS debe utilizar
punteros. Por ejemplo, objetos muy grandes como los tipos de datos para textos o
imgenes, no son guardados de forma continua en los discos.
Siendo este tipo de utilitarios equivalentes, exploremos las opciones del comando
DBCC, para observar los tipos de chequeos de consistencia que pueden
realizarse.
Cabe indicar que estas utilidades deben ser manejadas con cuidado, porque es
posible leer y escribir directamente en los archivos que utiliza la base de datos,
cuando se las ejecuta.
- Integridad de la entidad
- Unique Constraints
- Tipos de datos
- Check Constraints
- Triggers
- Integridad Referencial
- Que siempre se especifique una clave primaria para cada entidad del modelo de
datos.
- Por definicin, las entidades en el mundo real son distinguibles; es decir se les
puede identificar de alguna manera.
- Por tanto los representantes de entidades dentro de la Base de datos deben ser
distinguibles tambin.
- Las Claves primarias son utilizadas para otorgar identidad nica dentro del
modelo relacional.
- Si tiene valor nulo y esto implica que "la propiedad no es aplicable" es evidente
que el registro no tiene sentido.
Los tipos de datos para las columnas de una tabla deben ser escogidos en tiempo
de diseo con mucha precaucin, procurando realizar la eleccin adecuada al
dominio de la informacin que se va a almacenar.
Para cada columna es posible definir un valor por defecto, de forma opcional. El
valor por defecto se asignar de forma automtica a una columna cuando no se
especifique un valor determinado al insertar un registro nuevo.
Si una columna puede tener un valor nulo y no se especifica un valor por defecto,
se usar NULL como valor por defecto.
Es claro que el valor por defecto asignado a un campo debe ser del mismo tipo de
dato.
Este tipo de constraints son usadas para asegurar reglas simples de negocio
sobre el contenido de los datos en las tablas.
Los check constraints pueden referenciar a otras columnas en la fila que est
siendo chequeada, pero no pueden referenciar a otras filas o a otras tablas, o
llamar a funciones.
6.3.6. Triggers
Un trigger (disparador) es una funcin que se ejecuta cuando se cumple una
condicin establecida, cuando se realiza una operacin de insercin, actualizacin
o eliminacin de registros en una tabla.
Los triggers son muy utilizados para mejorar la gestin de la Base de datos,
especialmente para asegurar la integridad de la informacin. Son muy tiles pues
permiten realizar una accin automtica sin necesidad de que el usuario ejecute
ninguna sentencia de SQL.
- No pueden ejecutar las operaciones COMMIT o ROLLBACK por que estas son
parte de la sentencia SQL del disparador.
- Relacin Uno a Uno: Cuando un registro de una tabla slo puede estar
relacionado con un nico registro de la otra tabla.
- Ejemplo
- Relacin Uno a Muchos: Cuando un registro de una tabla (tabla secundaria) slo
puede estar relacionado con un nico registro de la otra tabla (tabla principal) y un
registro de la tabla principal puede tener ms de un registro relacionado en la tabla
secundaria. En este caso se suele hacer referencia a la tabla principal como tabla
"padre" y a la tabla secundaria como tabla "hijo". Entonces la regla se convierte en
"un padre puede tener varios hijos pero un hijo solo tiene un padre".
- Ejemplo:
Se tiene una tabla con los datos de diferentes poblaciones y otra con los
habitantes. Una poblacin puede tener ms de un habitante, pero un habitante
estar empadronado en una nica poblacin.
Ejemplo: Se tiene una tabla con los datos de clientes y otra con los artculos que
se venden en la empresa. Un cliente puede realizar un pedido con varios artculos,
y un artculo podr ser vendido a ms de un cliente.
Para establecer la relacin entre clientes y artculos hace falta otra tabla, por
ejemplo una tabla de pedidos. La tabla pedidos estar relacionada con cliente por
una relacin uno a muchos y tambin estar relacionada con artculos por un
relacin uno a muchos.
Figura 6.3: Relacin Muchos a Muchos.
Cuando se define una columna como clave fornea, las filas de la tabla pueden
contener en esa columna un valor nulo o un valor que existe en la otra tabla. Un
error sera asignar un valor que no existe en la tabla primaria. Esto es lo que se
denomina integridad referencial y consiste en que los datos que son
referenciados desde otra tabla (claves forneas) deben ser correctos. La
integridad referencial hace que el DBMS se asegure de que no haya en las claves
forneas valores que no estn en la tabla principal.
- Cuando se desea borrar una fila de la tabla principal y ese registro tiene registros
hijos.
Para soportar los casos de cambios en las claves primarias, los DBMS's ofrecen
las siguientes posibilidades:
- Actualizacin de registros en cascada: Esta opcin le indica al DBMS que
cuando se cambie un valor del campo clave de la tabla principal, automticamente
cambiar el valor de la clave fornea de los registros relacionados en la tabla
secundaria.
Ejemplo:
Ejemplo:
OBJETIVOS
- Analizar las causas de los problemas de disponibilidad de la informacin.
- Definicin del downtime, dependiendo de los requerimientos de disponibilidad de la
informacin.
- Definir las polticas que debe ser implementadas por una organizacin para asegurar la
disponibilidad de la informacin.
7.1. Introduccin
El aseguramiento de la disponibilidad de la informacin es la tarea principal del
DBA. Si la Base de datos no est disponible, las aplicaciones no pueden trabajar,
con lo cual la Organizacin no funcionar con normalidad. Por esta razn, el DBA
pone todo su esfuerzo en asegurar que las Bases de datos se mantengan en lnea
y operativas.
- Crear y mantener una infraestructura efectiva para satisfacer los servicios de los
usuarios.
Para estimar el costo del downtime se deben considerar los siguientes factores:
- Posibles prdidas de negocios durante el tiempo de paralizacin.
Las organizaciones de este tiempo deben considerar que muchas veces las
prdidas producidas durante un dao del sistema, suelen ser mayores que la
inversin necesaria para asegurar la alta disponibilidad de los sistemas.
- Fallas de Hardware
- Fallas de Seguridad
- Problemas de rendimiento
- Desastres naturales.
- Incendios.
- Atentados.
- Contar oportunamente con una persona con las habilidades requeridas para
diagnosticar el problema, identificar la parte defectuosa y reemplazarla.
- Horario de cobertura.
- Servicio permanente: 365 das, 7 das a la semana, las 24 horas del da.
- Bloqueos o Inhibiciones.
Para evitar este tipo de fallas del DBMS, es recomendable tener instalados los
ltimos parches de la versin en produccin. Los parches contienen las soluciones
a los problemas conocidos.
La corrupcin de los datos se refiere a los errores que se producen sobre stos
durante el almacenamiento, la transmisin o la recuperacin, as como durante la
introduccin de cambios no deseados a los datos originales.
Los siguientes problemas pueden ser causa de una degradacin del rendimiento:
- Corrupcin de ndices.
- Problemas de contencin.
El DBA debe tomar acciones preventivas para evitar que este tipo de problemas se
presenten.
7.3.8. Errores del Administrador de Bases de Datos
7.4.1. Mantenimiento
- Tareas de respaldo.