Please use this identifier to cite or link to this item: https://hdl.handle.net/10316/110625
DC FieldValueLanguage
dc.contributor.advisorAraújo, Filipe João Boavida Mendonça Machado de-
dc.contributor.authorLeite, Gustavo Miguel Martins-
dc.date.accessioned2023-11-23T23:06:14Z-
dc.date.available2023-11-23T23:06:14Z-
dc.date.issued2023-09-20-
dc.date.submitted2023-11-23-
dc.identifier.urihttps://hdl.handle.net/10316/110625-
dc.descriptionDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia-
dc.description.abstractO armazenamento tradicional de dados tem tipicamente o estado atual dos dados armazenados numa base de dados SQL ou NoSQL, e quando ocorre umatransação, esses dados são atualizados. O objetivo principal é armazenar o estado atual, e mesmo que funcione bem, pode ser limitativo se for necessária maisinformação do que os valores atuais. A informação, tal como as transações que levam aos valores atuais, é perdida. Ainda que seja possível ter registos históricos e registos de transações no armazenamento tradicional de dados, é uma possibilidade de se tornar uma tarefa complexa de gestão e utilização.Event Sourcing é uma forma diferente de armazenamento de dados onde, em vez de armazenar o estado atual, é a sequência de transações que é armazenada. Oestado atual é construído através do processamento dos eventos, e não se perdem dados, o que dá ao Event Sourcing capacidades robustas de auditoria e análise.O objetivo desta dissertação é enfrentar o desafio de pegar numa aplicação centralizada de Event Sourcing e replicá-la para a tornar mais fiável e disponível emdiferentes regiões. Para atingir este objetivo, uma aplicação com armazenamento de eventos replicado teve de ser desenvolvida e colocada na Internet para ter osistema distribuído por várias áreas do mundo.Como resultado, este trabalho apresenta a arquitetura do sistema replicado criado em diferentes graus de especificidade, juntamente com tecnologias utilizadas, incluindo SpringBoot, Axon e MongoDB. Além disso, este documento apresenta também uma análise de desempenho das velocidades das operações de escrita e de leitura da referida aplicação colocada na nuvem. Estes resultados recolhidos a partir dos testes de desempenho revelaram-se encorajadores para os sistemasEvent Sourcing geo-replicados, abrindo novos caminhos para futuras aplicações.por
dc.description.abstractTraditional data storage typically has the current state of data stored in a SQL or NoSQL database, and when a transaction occurs, that data is updated. Theprimary objective is to store the current state, and even though it works, it can be limiting if more information than the current values is needed. Information such as what transactions lead to the current values is lost. Even though it is possible to have historical registration and transaction logs in traditional data storage, it is a possibility that it can become a complex task to manage and use.Event Sourcing is a different way of storing data where instead of storing the current state, it is the sequence of transactions that is stored. The current state is built by replaying the events, and no data is lost, which gives event sourcing robust audit and analytical capabilities.This dissertation’s objective is to tackle the challenge of taking a centralized Event Sourcing application and replicating it to make it more reliable and available across different regions. To achieve this goal, an application with a replicated event store had to be developed and placed on the internet to have the system distributed across multiple areas of the world.As a result, this work presents the architecture of the created replicated system, along with the used technologies, including SpringBoot, Axon and MongoDB. Inaddition, this document also presents a performance analysis of the write and read operations speeds of the said application placed on the cloud. These resultsgathered from the performance testing proved encouraging for event-sourced geo-replicated systems, opening new ways for future applications.eng
dc.description.sponsorshipFCT-
dc.description.sponsorshipOutro - This work is funded by the project POWER (grant number POCI-01-0247-FEDER-070365), co-financed by the European Regional Development Fund (FEDER), through Portugal 2020 (PT2020), and by the Competitiveness and Internationalization Operational Programme (COMPETE 2020).-
dc.language.isoeng-
dc.relationinfo:eu-repo/grantAgreement/FCT/6817 - DCRRNI ID/UIDP/00326/2020/PT-
dc.rightsopenAccess-
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/-
dc.subjectEstadopor
dc.subjectEvent Sourcingpor
dc.subjectStateeng
dc.subjectEvent Sourcingeng
dc.titleCreation of a Replicated Event Sourcing Applicationeng
dc.title.alternativeCriação de uma Aplicação Event Sourcing Replicadapor
dc.typemasterThesis-
degois.publication.locationDEI-FCTUC-
degois.publication.titleCreation of a Replicated Event Sourcing Applicationeng
dc.peerreviewedyes-
dc.identifier.tid203397770-
thesis.degree.disciplineInformática-
thesis.degree.grantorUniversidade de Coimbra-
thesis.degree.level1-
thesis.degree.nameMestrado em Engenharia Informática-
uc.degree.grantorUnitFaculdade de Ciências e Tecnologia - Departamento de Engenharia Informática-
uc.degree.grantorID0500-
uc.contributor.authorLeite, Gustavo Miguel Martins::0000-0003-1791-8849-
uc.degree.classification17-
uc.degree.presidentejuriCorreia, João Nuno Gonçalves Costa Cavaleiro-
uc.degree.elementojuriAraújo, Filipe João Boavida Mendonça Machado de-
uc.degree.elementojuriCurado, Marília Pascoal-
uc.contributor.advisorAraújo, Filipe João Boavida Mendonça Machado de-
item.openairetypemasterThesis-
item.fulltextCom Texto completo-
item.languageiso639-1en-
item.grantfulltextopen-
item.cerifentitytypePublications-
item.openairecristypehttp://purl.org/coar/resource_type/c_18cf-
Appears in Collections:UC - Dissertações de Mestrado
Files in This Item:
Show simple item record

Page view(s)

35
checked on Jul 17, 2024

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons