Mongochain : um framework para implementação de sistemas transacionais

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: SOUSA, Carlos Manoel Vasconcelos
Orientador(a): TIMES, Valeria Cesário
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/40807
Resumo: Sistemas de Gerenciamento de Banco de Dados (SGBD) relacionais têm como característica fornecer consistência forte aos dados por meio de transações que mantêm as propriedades de Atomicidade, Consistência, Isolamento e Durabilidade (ACID). Porém, não são triviais quando executados em sistemas distribuídos compostos por clusters, nos quais pode-se obter escalabilidade horizontal com a adição de mais nodes. Logo, os SGBD Não Apenas SQL (NoSQL) de agregados são usados pelos desenvolvedores para fornecer dados com maior disponibilidade. Todavia, a consistência é sacrificada ao adotar os conceitos Basicamente Disponível, Estado Leve e Consistência Eventual (BASE). Ademais, a blockchain é uma tecnologia que pode substituir o uso de ACID e BASE ao realizar transações seguras e transparentes em uma rede distribuída e descentralizada. Encontram-se no estado da arte, soluções que integram tecnologias divergentes para contemplar requisitos transacionais em diferentes domínios. Porém, não há um ambiente programável que auxilie os desenvolvedores a implementar e gerenciar sistemas transacionais com ACID, BASE e blockchain. Sendo assim, este trabalho apresenta o MongoChain, um framework proveniente da integração entre o SGBD NoSQL de agregados MongoDB com uma rede blockchain. Foi realizado um experimento para mostrar a capacidade do MongoChain em garantir a consistência dos dados ao executar transações ACID em múltiplos documentos do MongoDB e gerenciar uma rede blockchain. Além disso, para validar a capacidade de extensão do MongoChain, foram construídos dois frameworks especialistas que auxiliaram no desenvolvimento das seguintes aplicações: agendamentos em clínicas médicas e marketplace de produtos automotivos. Os resultados mostram que o MongoChain fornece os mecanismos necessários para provê dados consistentes, escaláveis, disponíveis, seguros e transparentes.