Maysam Yabandeh
École Polytechnique Fédérale de Lausanne
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Maysam Yabandeh.
dependable systems and networks | 2011
Flavio Junqueira; Benjamin Reed; Maysam Yabandeh
In this paper, we introduce ReTSO, a reliable and efficient design for transactional support in large-scale storage systems. ReTSO uses a centralized scheme and implements snapshot isolation, a property that guarantees that read operations of a transaction read a consistent snapshot of the data stored. The centralized scheme of ReTSO enables a lock-free commit algorithm that prevents unre-leased locks of a failed transaction from blocking others. We analyze the bottlenecks in a single-server implementation of transactional logic and propose solutions for each. The experimental results show that our implementation can service up to 72K transaction per second (TPS), which is an order of magnitude larger than the maximum achieved traffic in similar data storage systems. Consequently, we do not expect ReTSO to be a bottleneck even for current large distributed storage systems.
european conference on computer systems | 2012
Maysam Yabandeh; Daniel Gómez Ferro
The support for transactions is an essential part of a database management system (DBMS). Without this support, the developers are burdened with ensuring atomic execution of a transaction despite failures as well as concurrent accesses to the database by other transactions. Ideally, a transactional system provides serializability, which means that the outcome of concurrent transactions is equivalent to a serial execution of them. Based on experiences on lock-based implementations, nevertheless, serializability is known as an expensive feature that comes with high overhead and low concurrency. Commercial systems, hence, compromise serializability by implementing weaker guarantees such as snapshot isolation. The developers, therefore, are still burdened with the anomalies that could arise due to the lack of serializability. There have been recent attempts to enrich large-scale data stores, such as HBase and BigTable, with transactional support. Not surprisingly, inspired by traditional database management systems, serializability is usually compromised for the benefit of efficiency. For example, Google Percolator, implements lock-based snapshot isolation on top of BigTable. We show in this paper that this compromise is not necessary in lock-free implementations of transactional support. We introduce write-snapshot isolation, a novel isolation level that has a performance comparable with that of snapshot isolation, and yet provides serializability. The main insight in write-snapshot isolation is to prevent read-write conflicts in contrast to write-write conflicts that are prevented by snapshot isolation.
Proceedings of the 4th International Workshop on Large Scale Distributed Systems and Middleware | 2010
Rachid Guerraoui; Maysam Yabandeh
Byzantine fault tolerant (BFT) protocols are replication-based solutions to the problem of tolerating the arbitrary failures of software and hardware components. The essential assumption for replication is independence of failures. In this paper, we categorize four different failure independence levels that could be obtained from the cloud. Not surprisingly, providing more level of independence comes with the cost of more delays and less bandwidth. We report on our experiments to identifying the most appropriate BFT protocol for each level.
ACM Transactions on Computer Systems | 2010
Maysam Yabandeh; Nikola Knežević; Dejan Kostic; Viktor Kuncak
We propose a new approach for developing and deploying distributed systems, in which nodes predict distributed consequences of their actions and use this information to detect and avoid errors. Each node continuously runs a state exploration algorithm on a recent consistent snapshot of its neighborhood and predicts possible future violations of specified safety properties. We describe a new state exploration algorithm, consequence prediction, which explores causally related chains of events that lead to property violation. This article describes the design and implementation of this approach, termed CrystalBall. We evaluate CrystalBall on RandTree, BulletPrime, Paxos, and Chord distributed system implementations. We identified new bugs in mature Mace implementations of three systems. Furthermore, we show that if the bug is not corrected during system development, CrystalBall is effective in steering the execution away from inconsistent states at runtime.
networked systems design and implementation | 2009
Maysam Yabandeh; Nikola Knezevic; Dejan Kostic; Viktor Kuncak
networked systems design and implementation | 2011
Rachid Guerraoui; Maysam Yabandeh
Archive | 2009
Maysam Yabandeh; Abhishek Anand; Marco Canini; Dejan Kostic
symposium on reliable distributed systems | 2011
Maysam Yabandeh; Abhishek Anand; Marco Canini; Dejan Kostic
Archive | 2009
Maysam Yabandeh; Dejan Kostic
Archive | 2010
Maysam Yabandeh; Leandro Franco; Rachid Guerraoui