Tabla de contenido:
Definición - ¿Qué significa Transacción Distribuida?
Una transacción distribuida es un tipo de transacción con dos o más hosts de red comprometidos. En general, los hosts proporcionan recursos y un administrador de transacciones es responsable de desarrollar y manejar la transacción. Como cualquier otra transacción, una transacción distribuida debe incluir las cuatro propiedades ACID (atomicidad, consistencia, aislamiento, durabilidad). Dada la naturaleza del trabajo, la atomicidad es importante para garantizar un resultado de todo o nada para el paquete de operaciones (unidad de trabajo).
Techopedia explica la transacción distribuida
Las bases de datos son recursos transaccionales estándar, y las transacciones generalmente se extienden a un pequeño número de tales bases de datos. En tales casos, una transacción distribuida puede verse como una transacción de base de datos que debe sincronizarse entre varias bases de datos participantes asignadas entre varias ubicaciones físicas. La propiedad de aislamiento presenta un obstáculo único para las transacciones de bases de datos múltiples.Para las transacciones distribuidas, cada computadora cuenta con un administrador de transacciones local. Si la transacción funciona en varias computadoras, los gerentes de transacciones se comunican con otros gerentes de transacciones por medio de relaciones superiores o subordinadas, que son precisas solo para una transacción específica.
Los administradores de recursos manejan datos consistentes o resistentes y cooperan estrechamente con el coordinador de transacciones distribuidas (DTC) para garantizar el aislamiento y la atomicidad de una aplicación. En las transacciones distribuidas, cada elemento participante debe cumplir con la confirmación de una acción de cambio, como una actualización de la base de datos, antes de la transacción. El DTC coordina la transacción para los componentes participantes y funciona como un administrador de transacciones para cada computadora que está destinada a administrar las transacciones. Al distribuir transacciones entre varias computadoras, el administrador de transacciones entrega, prepara, confirma y aborta los mensajes a cada administrador de transacciones subordinado.
En el algoritmo de confirmación de dos fases del DTC, la fase uno implica que el administrador de transacciones solicite la preparación del compromiso de cada componente alistado, mientras que en la fase dos, si todos los componentes están preparados para comprometerse con éxito, el administrador de transacciones envía la decisión de comprometerse.