Stage-oe-small.jpg

Thema3199/en

Aus Aifbportal
Wechseln zu:Navigation, Suche


Software Architecture Trade-offs and Consistency Benchmarking



Information on the Thesis

Type of Final Thesis: Master, Diplom
Supervisor: Markus Klems
Research Group: Economics and Technology of eOrganizations

Archive Number: 3.199
Status of Thesis: Already Assigned


Further Information

Background


Scalability and high availability are key requirements of modern cloud-based applications and services. Incremental scalability can be achieved by partitioning large data sets into data shards which are then distributed across multiple servers. Replication of servers and storage is the key technique to achieve high availability. Partitioning and replicating data across multiple networked servers provokes a trade-off challenge known as the strong CAP principle. CAP states that only two of the three properties, transactional consistency (C), high availability (A), and resiliency to network partitions (P) can be achieved at the same time. In widely distributed systems -- typical cloud computing environments -- partitions are considered inevitable, leaving the trade-off between consistency and availability.

Problem

Binning et al. (2009) are the first to suggest that cloud services require a benchmarking approach and tools that are considerably different from traditional benchmarking. The authors point out that cloud services are different from traditional software systems with respect to cost model, performance (in particular, scalability), consistency guarantees, fault-tolerance, and other properties. This thesis is focused on measuring and benchmarking eventually consistent software systems and services.

Objectives

The thesis should review consistency metrics of the distributed systems literature (c.f. Yu and Vahdat, 2002). These metrics are then discussed in the context of cloud computing, both from a service user perspective (e.g. Amazon Web Services user) and from a service system perspective (e.g. the Cassandra data store). The discussion should evaluate mechanisms to benchmark consistency levels as well as mechanisms to adjust consistency levels.