Mongochain : um framework para implementação de sistemas transacionais
Ano de defesa: | 2020 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | |
Tipo de documento: | Dissertação |
Tipo de acesso: | Acesso aberto |
Idioma: | por |
Instituição de defesa: |
Universidade Federal de Pernambuco
UFPE Brasil Programa de Pos Graduacao em Ciencia da Computacao |
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
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. |