Please use this identifier to cite or link to this item:
https://hdl.handle.net/1822/28946
Title: | Database replication in large scale systems |
Author(s): | Araújo, Miguel Gonçalves de |
Advisor(s): | Pereira, José, 1973- |
Issue date: | 29-Jul-2011 |
Abstract(s): | There is nowadays an increasing need for database replication, as the construction of
high performance, highly available, and large-scale applications depends on it to maintain
data synchronized across multiple servers and to achieve fault tolerance.
A particularly popular approach, is the MySQL open source database management
system and its built-in asynchronous replication mechanism. The limitations imposed
by MySQL on replication topologies mean that data has to go through a number of hops
or each server has to handle a large number of slaves. This is particularly worrisome
when updates are accepted by multiple replicas and in large systems. Noting the most
common topologies and taking into account the asynchrony referred, a problem arises,
the freshness of the data, i.e. the fact that the replicas do not have just the most recently
written data. This problem contrasts with the state of the art in group communication.
In this context, the work presented in this Master’s thesis is the result of an evaluation
of the models and mechanisms for group communication, as well as the practical advantages
of group-based replication. The proposed solution extends the MySQL Proxy tool
with plugins combined with the Spread group communication system offering, transparently,
active and passive replication.
Finally, to evaluate the proposed and implemented solution we used the reference
workload defined by the TPC-C benchmark, widely used to measure the performance
of commercial databases. Under this specification, we have evaluated our proposal on
different scenarios and configurations Existe nos dias de hoje uma necessidade crescente da utilização de replicação em bases de dados, sendo que a construção de aplicações de alta performance, disponibilidade e em grande escala dependem desta para manter os dados sincronizados entre servidores e para obter tolerância a faltas. Uma abordagem particularmente popular, é o sistema código aberto de gestão de bases de dados MySQL e seu mecanismo interno de replicação assíncrona. As limitações impostas pelo MySQL nas topologias de replicação significam que os dados tem que passar por uma série de saltos ou que cada servidor tem de lidar com um grande número de réplicas. Isto é particularmente preocupante quando as actualizações são aceites por várias réplicas e em sistemas de grande escala. Observando as topologias mais comuns e tendo em conta a assincronia referida, surge um problema, o da frescura dos dados. Ou seja, o facto das réplicas não possuírem imediatamente os dados escritos mais recentemente. Este problema vai de encontro ao estado da arte em comunicação em grupo. Neste contexto, o trabalho apresentado nesta dissertação de Mestrado resulta de uma avaliação dos modelos e mecanismos de comunicação em grupo, assim como as vantagens práticas da replicação baseada nestes. A solução proposta estende a ferramenta MySQL Proxy com plugins aliados ao sistema de comunicação em grupo Spread oferecendo a possibilidade de realizar, de forma transparente, replicação activa e passiva. Finalmente, para avaliar a solução proposta e implementada utilizamos o modelo de carga de referência definido pelo TPC-C, largamente utilizado para medir o desempenho de bases de dados comerciais. Sob essa especificação, avaliamos assim a nossa proposta em diferentes cenários e configurações |
Type: | Master thesis |
Description: | Dissertação de mestrado em Engenharia Informática |
URI: | https://hdl.handle.net/1822/28946 |
Access: | Open access |
Appears in Collections: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
eeum_di_dissertacao_pg13367.pdf | 1,39 MB | Adobe PDF | View/Open |