Consistency in Distributed Systems

State: completed by Sebastian Golaszewski

Recent trends in distributed systems focus on eventually consistency (BASE). This means that the state of a distributed system may be in an inconsistent state temporarily but it will reach a consistent state eventually. In contrast to centralized database systems such PostgreSQL or DB/2, which follows the ACID principle, has much stricter consistency guarantees. That means that a transaction will bring a DB from one consistent state to another. One main goal of this research is to bring distributed systems and stricter consistency guarantees closer together. Googles F1 claims that this is possible, however, being closed-source it is not possible to analyze and verify. Thus, the key idea is to find mechanisms, rules and its dependencies to make consistency requirements configurable and easy to use. A prototypical implementation shows how constancy can be configured and fine-tuned from a system with BASE to a system with ACID requirements. Ideally, multiple constancy requirements can be configured in the same system depending on the type of application.

At this moment in time, there is only a very basic generalized library for the functionality described above. On the Basis of TomP2P, an open-source implementation of a distributed hash table (DHT), an API to provide configurable consistency needs to be developed. As a demonstrator Hive2Hive should be used.

20% Design, 70% Implementation, 10% Documentation
TomP2P, Java, CSG testbed, evaluation, P2P, client / server

Supervisors: Prof. Dr. Burkhard Stiller, Dr. Thomas Bocek, Andri Lareida

back to the main page