ACORDEON PARA EL EXAMEN DE BASE DE DATOS DISTRIBUIDAS TRANSACCIONES



Conectar al Mysql de otro servidor

mysql -h "IPDELAOTRACOMPU" -u "USUARIOCREADO" -p ;

//Bloquear lectura de tabla
LOCK TABLES "NOMBRE_DE_TABLA" READ;

//DESBLOQUEAR TABLAS
UNLOCK TABLES;

//BLOQUEAR ESCRITURA DE LA TABLA
LOCK TABLES "NOMBRE_DE_TABLA" WRITE;

TRANSACCIONES

BEGIN;
//SETENCIAS;
COMMIT;

//BORRAR TABLA
DROP TABLE "Nombre_Tabla";


Estos son bloqueos y son técnicas para controlar el acceso concurrente.

Granularidad.- Es el nivel que se puede obtener los datos. Que son el Compartido y Exclusivo

Compartido,. Es el de lectura Read

Exclusivo.- Es el de escritura Write

Serializabilidad.- Implica que las transacciones se realizan en paralelo pero el resultado es como se hubieran realizados en serie.

Esto es para evitar usar datos que no son ciertos

Ejemplo el de un banco donde 2 personas entran a diferentes cajeros con la misma cuenta



ACID

Atomicidad

Consistencia

Asolación

Durabilidad



  • Atomicidad: es la propiedad que asegura que la operación se ha realizado o no, y por lo tanto ante un fallo del sistema no puede quedar a medias.

  • Consistencia: Integridad. Es la propiedad que asegura que sólo se empieza aquello que se puede acabar. Por lo tanto se ejecutan aquellas operaciones que no van a romper las reglas y directrices de integridad de la base de datos.

  • Aislamiento: es la propiedad que asegura que una operación no puede afectar a otras. Esto asegura que la realización de dos transacciones sobre la misma información sean independientes y no generen ningún tipo de error.

  • Durabilidad: es la propiedad que asegura que una vez realizada la operación, ésta persistirá y no se podrá deshacer aunque falle el sistema.

Cumpliendo estos 4 requerimientos un sistema gestor de bases de datos puede ser considerado ACID Compliant.



MATRIZ DE COMPATIBLIDAD LAS TRANSACCIONES

TRANSACCION II
TRANSACCION
I
Compartido
V
F
Exclusivo
F
F



Compartido = Read;

Exclusivo = Write

//Bloquear lectura de tabla
LOCK TABLES "NOMBRE_DE_TABLA" READ;

//DESBLOQUEAR TABLAS
UNLOCK TABLES;

//BLOQUEAR ESCRITURA DE LA TABLA
LOCK TABLES "NOMBRE_DE_TABLA" WRITE;






Si es sistema se cae cuando inicia verifica la línea de tiempo las transacciones que están cometidas y las que están cometidas se ejecutan y las que no se hacen un Rollback



Para recuperar mas rápido se hace un ChekPoint “Punto de verificación” En donde se guarda el

·         acceso concurrente

·         Bloques

·         Stampa de tiempo

Granularidad

Al referirnos a lo que es bloqueo en bases de datos en realidad utilizamos lo que se conoce como granularidaddel bloqueo.

La granularidadse refiere a que tan fino se quiere que sea un bloqueo. Por ejemplo ¿desceabloquear la tabla completa (un bloqueo de granularidad gruesa) o solo deceabloquear una fila especifica (un bloqueo de granularidad fina)?.



0