Actividad 31 de Octubre

1) ¿Qué es una transacción?

Es un acuerdo comercial entre personas o empresas.
 
En Economía, es una actividad que consiste en entregar una cosa para recibir otra a cambio. Pero conviene subrayar que esa definición de transacción puede ser entendida en un sentido muy amplio.

En informática, se llama transacción a la operación que modifica el estado de una base de datos, sin que los datos en sí mismos pierdan consistencia alguna.

En derecho civil, contrato por el cual las partes, cediendo o reteniendo alguna cosa, evitan el planteamiento de un pleito o resuelven el comenzado.

 
2) ¿Qué significa ACID? y defina cada una de las palabras que forman las siglas.
 
ACID es un conjunto de características o propiedades que garantizan que las transacciones en una base de datos son fiables.
 
ACID es un acrónimo de Atomicity, Consistency, Isolation and Durability: Atomicidad, Consistencia, Aislamiento y Durabilidad en español.
  • Atomicidad: cualquier cambio de estado que produce una transacción es atómico. Es decir, ocurren todos o no ocurre ninguno. En otras palabras, esta propiedad asegura que una operación se realiza o no se realiza, por lo tanto no puede quedar el sistema a medias.
  • Consistencia: propiedad que asegura que una transacción no romperá con la integridad de una base de datos, pues respeta todas las reglas y directrices de ésta.
  • Aislamiento: propiedad que asegura que no se afectarán entre sí las transacciones. En otras palabras, dos o más transacciones sobre los mismos datos no generarán un problema.
  • Durabilidad: propiedad que asegura la persistencia de una transacción, es decir, una vez que la transacción quedó aceptada no podrá deshacerse aunque falle el sistema.
3) ¿Qué significa Tx?
 
 Tx significa Transmisión o Transmisor (en este caso Transacción).
 
4) ¿Para que nos sirve el Rollback?
 
En tecnologías de base de datos, un rollback es una operación que devuelve a la base de datos a algún estado previo.
 
Esta función finaliza la transacción actual y deshace los cambios realizados.
 
5) Defina Integridad de datos.
 
Integridad de datos en general: hace referencia a que todas las características de los datos (reglas, definiciones, fechas, etc) deben ser correctos para que los datos estén completos.
 
Integridad de datos en bases de datos: Integridad de datos se refiere al estado de corrección y completitud de los datos ingresados en una base de datos.
 
6) Defina concurrencia.
 
La concurrencia es la propiedad de los sistemas que permiten que múltiples procesos sean ejecutados al mismo tiempo, y que potencialmente puedan interactuar entre sí.
 
7) Defina Grado de consistencia.
 
Podría definirse como la coherencia entre todos los datos de la base de datos.
 
8) Mencione aspectos relacionados al procesamiento de transacciones.
 
Los siguientes son los aspectos más importantes relacionados con el procesamiento de transacciones:
  • Modelo de estructura de transacciones: Es importante considerar si las transacciones son planas o pueden estar anidadas.
  • Consistencia de la base de datos interna: Los algoritmos de control de datos semántico tienen que satisfacer siempre las restricciones de integridad cuando una transacción pretende hacer un commit.
  • Protocolos de confiabilidad: En transacciones distribuidas es necesario introducir medios de comunicación entre los diferentes nodos de una red para garantizar la atomicidad y durabilidad de las transacciones. Así también, se requieren protocolos para la recuperación local y para efectuar los compromisos (commit) globales.
  • Algoritmos de control de concurrencia: Los algoritmos de control de concurrencia deben sincronizar la ejecución de transacciones concurrentes bajo el criterio de correctitud. La consistencia entre transacciones se garantiza mediante el aislamiento de las mismas.
  • Protocolos de control de réplicas: El control de réplicas se refiere a cómo garantizar la consistencia mutua de datos replicados. Por ejemplo se puede seguir la estrategia read-one-write-all (ROWA).
 
9) Defina los estados de una transacción:
  1. Activa (Active): El estado inicial; la transacción permanece en este estado durante su ejecución.
  2.  
  3. Parcialmente comprometida (Uncommited): Después de ejecutarse la ultima transacción.
  4.  
  5. Fallida (Failed): Tras descubrir que no se puede continuar la ejecución normal.
  6.  
  7. Abortada (Rolled Back): Después de haber retrocedido la transacción y restablecido la base de datos a su estado anterior al comienzo de la transacción.
  8.  
  9. Comprometida (Commited): Tras completarse con éxito.
 
10) El estándar ANSI/ISO SQL define cuatro niveles de aislamiento transaccional en función de tres eventos que son permitidos o no dependiendo del nivel de aislamiento. Estos eventos son:
  • Lectura sucia: Las sentencias SELECT son ejecutadas sin realizar bloqueos, pero podría usarse una versión anterior de un registro. Por lo tanto, las lecturas no son consistentes al usar este nivel de aislamiento.
  • Lectura norepetible: Una transacción vuelve a leer datos que previamente había leído y encuentra que han sido modificados o eliminados por una transacción cursada.
  • Lectura fantasma: Una transacción vuelve a ejecutar una consulta, devolviendo un conjuto de registros que satisfacen una condición de búsqueda y encuentra que otros registro que satisfacen la condición han sido insertadas por otra transacción cursada.
 
Bibliografía
 
 
 
 
 
 
 
 
 

No hay comentarios:

Publicar un comentario