Under pressure benchmark : a large-scale availability benchmark for distributed databases
Resumo
Resumo: A disponibilidade de um sistema refere-se a probabilidade dele estar totalmente operacional (i.e., sem falhas) em um determinado momento [32]. Considerando que todo ambiente computacional e susceptível a falhas, especialmente os distribuídos, e de fundamental importância a utilização de mecanismos que proveem disponibilidade. Enquanto a maioria das aplicações tem como requisito estarem disponíveis (i.e., totalmente operacionais) em 99,99% do tempo, as aplicacoes críticas (e.g., telefonia, controle do espaço aereo) exigem mais de 99,999% de disponibilidade [19]. Os Sistemas Gerenciadores de Banco de Dados Distribuídos (SGBDDs) implementam dois mecanismos em particular para atingir estas altas taxas de disponibilidade: replicacão dos dados e particionamento. Porem, o uso destes mecanismos pode impactar negativamente o desempenho global do sistema. Este impacto precisa ser mensurado e compreendido para um bom planejamento do ambiente computacional. Nesta dissertaçao e apresentado o Under Pressure Benchmark (UPB) para avaliar os impactos causados pelos mecanismos de disponibilidade dos SGBDDs. Este benchmark e composto por quatro etapas nas quais o SGBDD e avaliado com diferentes configuraçães e cenarios (incrementando a complexidade da avaliacao, iniciando com o sistema estavel ate um ambiente com multiplas falhas). O UPB oferece varias metricas para avaliacao de desempenho que podem ser utilizadas para comparar diferentes configuracçãoes e SGBDDs de diferentes fabricantes. O UPB foi validado atraves de experimentos que avaliaram a disponibilidade do VoltDB [10], que e um SGBDD relacional baseado em memoria, que atende as propriedades ACID e utiliza uma arquitetura shared-nothing. Abstract: Availability refers to the probability that a system is operational at a given point in time [32]. Considering that every computing environment is susceptible to failures, especially the distributed ones, it is rather important to implement availability mechanisms. While most systems require to be available (i.e., fully operational) at 99.99% of the time, mission critical systems (e.g., telephone networks, airspace control) require more than 99.999% of availability [19]. The Distributed Database Management Systems (DDBMS) implements two particular mechanisms to achieve those high availability rates: data replication and partitioning. However, the use of these mechanisms may badly impact the global performance as a side effect that must be measured for further comparisons or even performance analysis. This master dissertation presents the Under Pressure Benchmark (UPB) for evaluating the performance impact of the availability mechanisms of DDBMS. The benchmark consists of four steps in which the DDBMS is evaluated through different configurations and scenarios (increasing the evaluation complexity from a stable system scenario up to a faulty system scenario). UPB offers a range of metrics for performance measurements that could be used to compare different setup configurations or even DDBMS from different vendors. We validate our benchmark through experimentation and evaluation of the in-memory VoltDB [10] database, an ACID relational DDBMS based on shared-nothing architecture.
Collections
- Teses & Dissertações [9329]