Está en la página 1de 9

INGENIERA EN TECNOLOGAS DE LA INFORMACIN

MATERIA: BASE DE DATOS PARA APLICACIONES. TEMA:

DOCENTE: ING. FLORENCIO HERNANDEZ LARA.

Investigacin de concepto de transaccin, tipos de transacciones, concurrencia, recuperacin, protocolo basado en tcnicas de bloqueo y copias de seguridad. NOMBRE DEL ALUMNO: REYNALDO HERNNDEZ MORALES MATRCULA: 2010055

CUATRIMESTRE: OCTAVO

GRUPO: B

FECHA DE ENTREGA: 05 DE FEBRERO DEL 2013.

HUEJUTLA DE REYES HIDALGO.

INTRODUCCION.
En el presente trabajo se plantean conceptos bsicos acerca de transaccin y sus componentes, as como tambin se describirn a detalle los componentes necesarios que debe tener una transaccin, se discutirn los tipos de transacciones y se definirn los casos en que podemos encontrar e implementar determinado tipo de transaccin. Se abordara el tema de concurrencia y su importancia en el desarrollo de un sistema de informacin, tambin se incluirn los modos de recuperacin de datos para salvaguardar la integridad de los datos en una base de datos y por ultimo se contemplaran los protocolos basados en tcnicas de bloqueo y copias de seguridad

TRANSACCIN.
Una Transaccin es un unidad de la ejecucin de un programa que accede y, posiblemente, actualiza varios elementos de datos. Una Transaccin est delimitada por instrucciones de inicio transaccin y fin transaccin (la transaccin consiste en todas las operaciones que se ejecutan entre inicio transaccin y fin transaccin). Propiedades de las transacciones que debe mantener el sistema de base de datos para garantizar la integridad de los datos. Atomicidad: O se realizan adecuadamente, en la base de datos, todas las operaciones de la transaccin o no se realiza ninguna de ellas. Consistencia: La ejecucin aislada de la transaccin (es decir, sin otra transaccin que se ejecute concurrentemente) conserva la consistencia de la base de datos. Aislamiento: Aunque se ejecuten varias transacciones concurrentemente, el sistema garantiza cada transaccin ignora al resto de transacciones (para cada T, el resto de T, no ha comenzado o ya ha acabado) Durabilidad: Tras la finalizacin con xito de una transaccin, los cambios realizados en la base de datos permanecen, incluso si hay fallos en el sistema.

TIPOS DE TRANSACCIONES
Transacciones Implcitas. Este tipo de transacciones, se conocen como transacciones "de Confirmacin automtica" y es el comportamiento predeterminado de SQL Server, donde ejecuta (o hace efectivo los cambios en los ficheros de datos) por separado cada sentencia Transact-SQL justo despus de que se termine dicha sentencia. Por ejemplo, pensemos que tenemos dos INSERT, el primero de los cuales nos da error, y el segundo se ejecuta de forma exitosa, si trabajamos con Transacciones Implcitas, veremos como el segundo cambio se mantiene porque cada INSERT se incluye automticamente en su propia transaccin. Las Transacciones implcitas, crean una nueva transaccin, cuando en una sesin de SQL Server se ejecuta algn ALTER TABLE, FETCH, REVOKE, CREATE, GRANT, SELECT, DELETE, INSERT, TRUNCATE TABLE, DROP, OPEN, y UPDATE. Una transaccin no implcita, una vez creada, permanece abierta y no finaliza hasta que no se produce un ROLLBACK o se invoca al COMMIT. La transacciones Implcitas finalizan cuando se inicia una nueva transaccin en la misma sesin.

Trabajar con transacciones implcitas, puede ser problemtico en un entorno de produccin, ya que los desarrolladores o los usuarios finales se puede olvidar de cerrar las transacciones, y esto puede ser origen de bloqueos. Transacciones explcitas Por el contrario, las Transacciones explcitas son las que se define en el cdigo TSQL. Hay que indicar cundo se inician (BEGIN TRANSACTION) y cuando finalizan (COMMIT TRANSACTION), y pueden albergar un conjunto de instrucciones dentro de la misma transaccin. Cuando se produce el COMMIT, se hacen efectivos los cambios en los ficheros de datos (.mdf y .ndf). Mientras no se realiza el COMMIT las sentencias de los cambios se guardan en el log de transacciones (.log), que gracias a este es posible revertir los cambios si fuese necesario... Transacciones explcitas, es el modo de trabajo recomendado. y de esta forma se puede tener el control de un conjunto de operaciones, definidas dentro de la misma transaccin. Si una operacin fuese errnea, es posible hacer ROLLBACK del conjunto de operaciones que estn dentro de la misma transaccin. Esto nos permite establecer reglas de negocio de forma fcil, y mantener coherencia en los datos segn lo que queramos realizar. BEGIN TRANSACTION - Establece el punto de partida de una transaccin explcita. ROLLBACK TRANSACTION - Revierte la transaccin y pone los datos al estado en que estaban justo antes del inicio de la transaccin.(Los recursos usados por la transaccin son liberados.) COMMIT TRANSACTION - Finaliza la transaccin si no se han encontrado errores. (Los recursos usados por la transaccin son liberados.) BEGIN DISTRIBUTED TRANSACTION - Permite definir el comienzo de una transaccin distribuida (MS-DTC). SAVE TRANSACTION - permite definir una seal dentro de la misma transaccin al que se puede volver si parte de la transaccin se cancela. Solo se podran revertir los cambios hasta la seal indicada. @@TRANCOUNT - Devuelve el nmero de transacciones activas de la conexin. BEGIN TRANSACTION incrementa @@TRANCOUNT en 1. ROLLBACK TRANSACTION y COMMIT TRANSACTION disminuye @@TRANCOUNT en 1. ROLLBACK TRANSACTION no modifica el valor de @@TRANCOUNT.

CONCURRENCIA
La Concurrencia en las bases de datos es de suprema importancia en los sistemas de informacin, ya que evita errores en el momento de ejecutar las diferentes transacciones. En si la concurrencia es la propiedad de los sistemas que permiten que mltiples procesos sean ejecutados al mismo tiempo, y que potencialmente puedan interactuar entre s. El control de concurrencia se refiere a las diversas tcnicas que se utilizan para preservar la integridad de la base de datos cuando varios usuarios actualizan filas al mismo tiempo. Concurrencia incorrecta puede conducir a problemas como las lecturas sucias, lecturas fantasmas, y lecturas no repetibles existen dos tipos de control de concurrencia. Control de concurrencia pesimista Un sistema de bloqueos impide que los usuarios modifiquen los datos de una manera que afecta a otros usuarios. Despus de que un usuario realiza una accin que provoca un bloqueo que se aplica, otros usuarios no pueden realizar acciones que puedan entrar en conflicto con el bloqueo hasta que el propietario lo libere. Esto se llama control pesimista, ya que se utiliza principalmente en entornos donde hay una alta contencin de datos, donde el costo de la proteccin de datos con bloqueos es menor que el costo de deshacer transacciones si se producen conflictos de concurrencia. Control de concurrencia optimista En el control de concurrencia optimista, los usuarios no bloquean los datos cuando lo lean. Cuando un usuario actualiza los datos, el sistema comprueba si otro usuario ha modificado los datos despus de que se ley. Si otro usuario ha actualizado los datos, se genera un error. Normalmente, el usuario recibe el error deshace la transaccin y vuelve a empezar. Esto se denomina optimista porque se utiliza principalmente en entornos donde hay contencin de baja de los datos, y donde el costo de vez en cuando se revierte una transaccin es menor que el costo de bloqueo de los datos cuando se leen.

RECUPERACIN
Las operaciones de copias de seguridad y restauracin de SQL Server se producen en el contexto del modelo de recuperacin de la base de datos. Los modelos de recuperacin se han diseado para controlar el mantenimiento del registro de transacciones.

Un modelo de recuperacin es una propiedad de base de datos que controla la forma en que se registran las transacciones, si el registro de transacciones requiere que se realice la copia de seguridad y si lo permite, y qu tipos de operaciones de restauracin hay disponibles. Existen tres modelos de recuperacin: simple, completa y por medio de registros de operaciones masivas. Normalmente, en las bases de datos se usa el modelo de recuperacin completa o el modelo de recuperacin simple. Una base de datos se puede cambiar a otro modelo de recuperacin en cualquier momento. Simple Sin copias de seguridad de registros. Recupera automticamente el espacio de registro para mantener al mnimo los requisitos de espacio, eliminando, en esencia, la necesidad de administrar el espacio del registro de transacciones. Completa Requiere copias de seguridad de registros. No se pierde trabajo si un archivo de datos se pierde o resulta daado. Se puede recuperar hasta cualquier momento, por ejemplo, antes del error de aplicacin o usuario. Por medio de registros de operaciones masivas Requiere copias de seguridad de registros. Complemento del modelo de recuperacin completa que permite operaciones de copia masiva de alto rendimiento. Reduce el uso del espacio de registro mediante el registro mnimo de la mayora de las operaciones masivas.

PROTOCOLO BASADO EN TCNICAS DE BLOQUEO Y COPIAS DE SEGURIDAD.


Protocolo de bloqueo de dos fases Requisito: todos los bloqueos preceden a los desbloqueos. Primera fase: bloqueos. Segunda: desbloqueos. Propiedad: segn este requisito no existen planificaciones no secuenciales legales. Teorema 9.2: Si S es cualquier planificacin de transacciones de dos fases, S es secuenciadle. Demostracin: Supongamos que no sea secuenciales. Entonces, por el teorema 9.1, el grafo de secuencializacin de G para S tiene un ciclo:

Ti1 Ti2 L Tip Ti1 Por tanto, algn bloqueo de Ti2 sigue a un desbloqueo de Ti1; algn bloqueo de Ti3 sigue a un desbloqueo de Ti2, algn bloqueo de Ti1 sigue a un desbloqueo de Tip. Por tanto, algn bloqueo de Ti1 sigue a un desbloqueo de Ti1, contradiciendo la suposicin de que Ti1 es una transaccin de dos fases. El protocolo de dos fases no asegura ausencia de interbloqueos: T1= LOCK B; LOCK A; UNLOCK A; UNLOCK B; T2= LOCK A; LOCK B; UNLOCK B; UNLOCK A;

Protocolos basados en grafos A menudo es til observar el conjunto de elementos de datos de la base de datos como una estructura de grafo. Por ejemplo: 1. Organizacin lgica o fsica de los elementos. 2. Definicin de elementos de varios tamaos, donde los grandes engloban a los pequeos. Ej.: relacional: tupla bloque relacin base de datos. 3. Control de concurrencia efectivo. Se pueden disear protocolos que no sean de dos fases pero que aseguren la secuencialidad. En general, sea { , , , } D = d1 d2 K dn el conjunto de todos los elementos de datos de la base de datos dotado de un orden parcial . Si en el grafo existe un arco di d j, entonces la transaccin que acceda tanto a di como a d j debe acceder primero a di y despus a d j.

Protocolo de rbol Caso particular de protocolo basado en grafos, grafos que sean rboles con raz. Reglas: 1. Cada transaccin Ti bloquea al menos un elemento. 2. El primer bloqueo de Ti puede ser sobre cualquier elemento.

3. Sucesivos bloqueos de Ti slo pueden ser sobre elementos cuyo padre haya bloqueado Ti. 4. Los elementos se pueden desbloquear en cualquier momento. 5. Ti no puede bloquear de nuevo un elemento que haya bloqueado y desbloqueado anteriormente. Ej:

CATEGORAS

COMPETENTE AUTNOMO ( )

COMPETENTE DESTACADO ( )

COMPETENTE ( )

NO COMPETENTE ( )

T1: LOCK B; LOCK E; LOCK D; UNLOCK B; UNLOCK E; LOCK G; UNLOCK D; UNLOCK G; T2: LOCK D; LOCK H; UNLOCK D; UNLOCK H; T3: LOCK B; LOCK E; UNLOCK E; UNLOCK B; T4: LOCK D; LOCK H; UNLOCK D; UNLOCK H;

Bibliografa (2012, 09). Manejo De Transacciones Y Concurrencia En Sql. BuenasTareas.com. Recuperado 02, 2013, de http://www.buenastareas.com/ensayos/Manejo-DeTransacciones-y-Concurrencia-En/5439202.html

Rbrica para evaluar Resumen (RU-10)


Profesor:ing. Florencio Hernndez Lara Alumno:TSU. Reynaldo Hernndez morales Grado y Grupo : 8 B Materia: Base de Datos Para Aplicaciones Tema: Resumen de Conceptos Fecha: 05/02/2013

Portada. (Ttulo, nombre del alumno, matrcula, asignatura, titular, grado, grupo)

Cumple con todos los datos de la portada y define a travs del ttulo la idea principal sobre el tema que desarrollar el cuerpo del documento.

Cumple con todos los datos de la portada, hay relacin del ttulo con el documento, pero no se concreta por completo el tema a tratar.

Cumple con algunos datos de la portada, el titulo esta trazado de manera general y no se concreta al tema a tratar. No hay relacin alguna del ttulo y el tema.

No present portada y no hay relacin alguna del ttulo y el tema o no existe.

Introduccin

Establece el objetivo del documento, situacin problemtica o interrogante. Se justifica y plantea la idea que quiere defender. Cumple con la estructura solicitada y el contenido es acorde a cada uno de los puntos.

Se justifica y plantea El objetivo y la No existe la idea que quiere justificacin no tienen introduccin. defender. relacin alguna.

una

Contenido

Cumple con la mayor parte de la estructura solicitada y el contenido es acorde a cada uno de los puntos. Ortografa: con errores. Redaccin: En tercera persona, Ideas claras, lgicas y secuenciadas en todos los prrafos Inclusin de datos bibliogrficos pero no escritos de acuerdo al formato APA.

Cumple con algunos elementos de la estructura solicitada y el contenido es acorde a cada uno de los puntos.

No se respet la estructura, pobre contenido del documento.

Ortografa y redaccin.

Ortografa: Sin errores. Redaccin: En tercera persona, Ideas claras, lgicas y secuenciadas en todos los prrafos. Inclusin apropiada de datos bibliogrficos. Se manejan correctamente las citas y referencias bibliogrficas de acuerdo al formato APA

Ortografa: con errores. Redaccin: No est redactado en tercera persona, Ideas poco claras, lgicas y secuenciadas.

Existen demasiados errores ortografa problemas redaccin.

de y de

Bibliografa

Contiene citas No existen citas ni bibliogrficas que no referencias estn relacionadas con bibliogrficas. las referencias y no tienen el formato adecuado.