Teresa K. Abuya, Richard M. Rimiru e Cheruiyot WK
Os sistemas de bases de dados distribuídas apresentam problemas diferentes no acesso a bases de dados distribuídas e replicadas. O protocolo Two-Phase Commit (2PC) é um algoritmo padrão para proteger as propriedades ACID das transações em sistemas distribuídos. Garante que cada transação num sistema distribuído é executada até à sua conclusão ou que uma das suas operações é confirmada. Num sistema de base de dados distribuído, uma transação é bloqueada durante o processamento de Two-Phase Commit (2PC) se o site coordenador falhar e ao mesmo tempo algum site participante se declarar pronto para confirmar a transação. Os fenómenos de bloqueio reduzem a disponibilidade do sistema, uma vez que os participantes mantêm bloqueios nos recursos até receberem a próxima mensagem do coordenador após a sua recuperação. Foi contratado um coordenador de backup para lidar com o problema, mas isso introduziu mais sobrecarga de comunicação. Este artigo aborda o problema do bloqueio de transações e, ao mesmo tempo, reduz os custos indiretos de comunicação utilizando um algoritmo de simulação. O algoritmo de simulação foi desenvolvido utilizando o Jcreator com o mySQL a funcionar como gestor de dados back end, o gestor de transações Bitronix (BTM) que é uma implementação simples mas completa de aplicações Java. O gestor de transações Bitronix é a escolha perfeita para um projeto que utiliza as capacidades de transação através da fachada Java Transfer Manager (JTM). O algoritmo de transação de simulação irá minimizar o problema de falha do coordenador em transações distribuídas.