TY - GEN A1 - Skrzypczak, Jan T1 - Weakening Paxos Consensus Sequences for Commutative Commands N2 - Consensus (agreement on a value) is regarded as a fundamental primitive in the design of fault tolerant distributed systems. A well-known solution to the consensus problem is Paxos. Extensions of the Paxos algorithm make it possible to reach agreement on a sequence of commands which can then be applied on a replicated state. However, concurrently proposed commands can create conflicts that must be resolved by ordering them. This thesis delivers an in-depth description of a Paxos-based algorithm to establish such command sequences, called Paxos Round Based Register (PRBR). In contrast to conventional approaches like Multi-Paxos, PRBR can manage multiple command sequences independently. Furthermore, each sequence is established in-place, which eliminates the need for managing multiple Paxos instances. PRBR is extended as part of this thesis to exploit the commutativity of concurrently proposed commands. As a result, conflict potential can be greatly reduced which increases the number of commands that can be handled by PRBR. This is shown for a number of workloads in an experimental evaluation. T3 - ZIB-Report - 17-64 KW - Consensus KW - Paxos Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:0297-zib-65741 SN - 1438-0064 ER - TY - THES A1 - Skrzypczak, Jan T1 - Weakening Paxos Consensus Sequences for Commutative Commands N2 - Consensus (agreement on a value) is regarded as a fundamental primitive in the design of fault tolerant distributed systems. A well-known solution to the consensus problem is Paxos. Extensions of the Paxos algorithm make it possible to reach agreement on a sequence of commands which can then be applied on a replicated state. However, concurrently proposed commands can create conflicts that must be resolved by ordering them. This thesis delivers an in-depth description of a Paxos-based algorithm to establish such command sequences, called Paxos Round Based Register (PRBR). In contrast to conventional approaches like Multi-Paxos, PRBR can manage multiple command sequences independently. Furthermore, each sequence is established in-place, which eliminates the need for managing multiple Paxos instances. PRBR is extended as part of this thesis to exploit the commutativity of concurrently proposed commands. As a result, conflict potential can be greatly reduced which increases the number of commands that can be handled by PRBR. This is shown for a number of workloads in an experimental evaluation. KW - Paxos KW - Consensus Y1 - 2017 ER - TY - CHAP A1 - Skrzypczak, Jan A1 - Schintke, Florian A1 - Schütt, Thorsten T1 - Linearizable State Machine Replication of State-Based CRDTs without Logs T2 - Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC 2019 N2 - General solutions of state machine replication have to ensure that all replicas apply the same commands in the same order, even in the presence of failures. Such strict ordering incurs high synchronization costs due to the use of distributed consensus or a leader. This paper presents a protocol for linearizable state machine replication of conflict-free replicated data types (CRDTs) that neither requires consensus nor a leader. By leveraging the properties of state-based CRDTs—in particular the monotonic growth of a join semilattice—synchronization overhead is greatly reduced. In addition, updates just need a single round trip and modify the state ‘in-place’ without the need for a log. Furthermore, the message size overhead for coordination consists of a single counter per message. While reads in the presence of concurrent updates are not wait-free without a coordinator, we show that more than 97 % of reads can be handled in one or two round trips under highly concurrent accesses. Our protocol achieves high throughput without auxiliary processes such as command log management or leader election. It is well suited for all practical scenarios that need linearizable access on CRDT data on a fine-granular scale. Y1 - 2019 U6 - https://doi.org/10.1145/3293611.3331568 SP - 455 EP - 457 ER - TY - JOUR A1 - Skrzypczak, Jan A1 - Schintke, Florian A1 - Schütt, Thorsten T1 - RMWPaxos: Fault-Tolerant In-Place Consensus Sequences JF - IEEE Transactions on Parallel and Distributed Systems Y1 - 2020 U6 - https://doi.org/10.1109/TPDS.2020.2981891 SN - 1045-9219 VL - 31 IS - 10 SP - 2392 EP - 2405 ER - TY - CHAP A1 - Thostrup, Lasse A1 - Skrzypczak, Jan A1 - Jasny, Matthias A1 - Ziegler, Tobias A1 - Binnig, Carsten T1 - DFI: The Data Flow Interface for High-Speed Networks T2 - SIGMOD '21: International Conference on Management of Data Y1 - 2021 U6 - https://doi.org/10.1145/3448016.3452816 SP - 1825 EP - 1837 PB - ACM ER - TY - JOUR A1 - Skrzypczak, Jan A1 - Schintke, Florian T1 - Towards Log-Less, Fine-Granular State Machine Replication JF - Datenbank Spektrum Y1 - 2020 U6 - https://doi.org/10.1007/s13222-020-00358-4 VL - 20 IS - 3 SP - 231 EP - 241 ER - TY - CHAP A1 - Alonso, Gustavo A1 - Binnig, Carsten A1 - Pandis, Ippokratis A1 - Salem, Kenneth A1 - Skrzypczak, Jan A1 - Stutsman, Ryan A1 - Thostrup, Lasse A1 - Wang, Tianzheng A1 - Wang, Zeke A1 - Ziegler, Tobias T1 - DPI: The Data Processing Interface for Modern Networks T2 - 9th Biennial Conference on Innovative Data Systems Research N2 - As data processing evolves towards large scale, distributed platforms, the network will necessarily play a substantial role in achieving efficiency and performance. Increasingly, switches, network cards, and protocols are becoming more flexible while programmability at all levels (aka, software defined networks) opens up many possibilities to tailor the network to data processing applications and to push processing down to the network elements. In this paper, we propose DPI, an interface providing a set of simple yet powerful abstractions flexible enough to exploit features of modern networks (e.g., RDMA or in-network processing) suitable for data processing. Mirroring the concept behind the Message Passing Interface (MPI) used extensively in high-performance computing, DPI is an interface definition rather than an implementation so as to be able to bridge different networking technologies and to evolve with them. In the paper we motivate and discuss key primitives of the interface and present a number of use cases that show the potential of DPI for data-intensive applications, such as analytic engines and distributed database systems. Y1 - 2019 ER - TY - JOUR A1 - Skrzypczak, Jan A1 - Schintke, Florian A1 - Schütt, Thorsten T1 - Linearizable State Machine Replication of State-Based CRDTs without Logs JF - arXiv N2 - General solutions of state machine replication have to ensure that all replicas apply the same commands in the same order, even in the presence of failures. Such strict ordering incurs high synchronization costs caused by distributed consensus or by the use of a leader. This paper presents a protocol for linearizable state machine replication of conflict-free replicated data types (CRDTs) that neither requires consensus nor a leader. By leveraging the properties of state-based CRDTs - in particular the monotonic growth of a join semilattice - synchronization overhead is greatly reduced. In addition, updates just need a single round trip and modify the state `in-place' without the need for a log. Furthermore, the message size overhead for coordination consists of a single counter per message. While reads in the presence of concurrent updates are not wait-free without a coordinator, we show that more than 97% of reads can be handled in one or two round trips under highly concurrent accesses. Our protocol achieves high throughput without auxiliary processes like command log management or leader election. It is well suited for all practical scenarios that need linearizable access on CRDT data on a fine-granular scale. Y1 - 2019 ER - TY - JOUR A1 - Schütt, Thorsten A1 - Schintke, Florian A1 - Skrzypczak, Jan T1 - Transactions on Red-black and AVL trees in NVRAM JF - arXiv Y1 - 2020 ER -