SlideShare a Scribd company logo
Cheap and Available State Machine
Replication
Rong Shi, Yang Wang(The Ohio State University)
ATC 2016
Yongrae Jo (20172938)
Active replica
Client
replica 1
replica 2
replica 4
replica 3
replica 5
replica 6
replica 7
Backup
In active replica / backup
replica organization, CFT
Active replica
Client
replica 1
replica 2
replica 4
replica 3
replica 5
replica 6
replica 7
Backup
In active replica / backup
replica organization, CFT
State transfer
Active replica
Client
replica 1
replica 2
replica 4
replica 3
replica 5
replica 6
replica 7
Backup
In active replica / backup
replica organization, CFT
Activate backup replica
(state transfer)
Request System not available
during state transfer
Active replica
Client
replica 1
replica 2
replica 4
replica 3
replica 5
replica 6
replica 7
Backup
In active replica / backup
replica organization, CFT
Completes
state transfer
Request System now available
after state transfer
Active replica
Client
replica 1
replica 2
replica 4
replica 3
replica 5
replica 6
replica 7
Backup
In active replica / backup
replica organization, CFT
Cheap
● Reducing replication cost
– 2f + 1 replicas for f crash faults
● f+1 active replicas participating in agreement or
execution stage
– 3f + 1 replicas for f arbitrary faults
● 2f + 1 active replicas participating in agreement or
execution stage
● Why needed?
– Large data center where up to millions of
machines may need to be replicated
Available
● Active / Backup replica scheme,
– When a active replica fails, backup replica
needs to be active one
– Then, backup replica needs to get state
transfer from active one
– System is not available during state transfer
– For applications with a large state, the system
can be halted for long
● Providing system availability under state transfer
with active / backup replica scheme
On-demand instantiation
● Activates a subset of replicas first and activates
backup one when active one fails
● Different from Active / Passive replica
scheme(CheapBFT)
– Passive replica simply updates result
● No need to transfer state when faulty replica
occured
– Backup replica does nothing until it is activated
Lazy recovery
● Realizing system availability during state transfer using
adaptive recovery
– Rebuilding a backup replica’s state in the background
without halting the system
● Adaptive recovery
– Coordinate recovery speed with transferred state by
periodically checking the progress
– It compares (fetched data / total data) and (elapsed
time / deadline) to coordinate recovery speed
– During adaptive recovery, client’s request is also
processed in parallel which incurs competition for
resources (e.g. network and disk bandwidth)
●
Lazy recovery is possible only when agreement and
execution are logically separated
On-demand instantiation
Unavailability
under recovery
Lazy recovery
SMR with
Low replication cost
SMR with
Low replication cost
& High availability
SMR
SMR with
Low replication cost
ThriftyPaxos
● Applying on-demand instantiation and lazy
recovery to standard Paxos
● ThriftyPaxos mostly resembles standard Paxos
– Normal case op., leader change protocol
– Not new and complete protocol
● ThriftyPaxos activates f +1 replicas and reserves f
replicas as backup
– Standard Paxos activates 2f + 1 replicas
● Same correctness guarantee as Paxos with f
fewer replicas
Evaluation
● RemoteHashMap
– An application that allows clients to get and set
key value pairs on a remote server
– It can change system parameters (e.g. request
size) arbitrarily to test different aspects of
ThriftyPaxos.
● 7 Dell R220 machines, each with 8 cores, 16GB of
memory, and two hard drivers
● Store RemoteHashMap’s data on one hard drive
and store agreement nodes’ data on the other
hard drive
● 5 minutes for triggering recovery after detecting
crash
Evaluation
Key value performance
v: value size
f=1 and v=512b
Availability of ThriftyPaxos, standard Paxos, and Cheap Paxos
Not available
f+1 active replica
2f+1 active replica
f+1 active replica,
on-demand instantiation
System is still available
Backup agreement node needs only few messages to recover
Backup execution node needs
recovery(state transfer) Backup execution node
replays the logs
Execution node depends on previous request to execute next request
→ It needs request logs(state transfer) and replay logs
Agreement node doesn’t require previous request to determine next request
(memory less property)
Less resource
allocated
to recovery task
Adaptive recovery
5 mins after crash
22240 req/s
74690 req/s
99339 req/s
Conclusion
● By combining on-demand instantiation and lazy
recovery, cheap and available state machine
replication protocol is achieved
● No need to invent new protocols
– By carefully looking at exsisting protocols,
ThriftyPaxos slightly changes standard Paxos
to provide on-demand instantiation and lazy
recovery
Thanks
Backup slides
Latency critical task
(e.g. client request)
Latency flexible task
(e.g. garbage collection)

More Related Content

What's hot

zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity Planning
Martin Packer
 
zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018
Martin Packer
 
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topicsMunich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Martin Packer
 
zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity Planning
Martin Packer
 
SHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENTSHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENT
ramya marichamy
 
Database recovery
Database recoveryDatabase recovery
Database recovery
Student
 
Life And Times Of An Address Space
Life And Times Of An Address SpaceLife And Times Of An Address Space
Life And Times Of An Address Space
Martin Packer
 
data replication
data replicationdata replication
data replication
Hassanein Alwan
 
DB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and controlDB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and control
Florence Dubois
 
ALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARM
IBM
 
Tashkent
TashkentTashkent
Tashkent
ashish61_scs
 
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 lockingUsing Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
John Campbell
 
database recovery techniques
database recovery techniques database recovery techniques
database recovery techniques
Kalhan Liyanage
 
Topic 4 database recovery
Topic 4 database recoveryTopic 4 database recovery
Topic 4 database recovery
acap paei
 
Galvin-operating System(Ch9)
Galvin-operating System(Ch9)Galvin-operating System(Ch9)
Galvin-operating System(Ch9)
dsuyal1
 
DB2 Through My Eyes
DB2 Through My EyesDB2 Through My Eyes
DB2 Through My Eyes
Martin Packer
 
Best practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recoveryBest practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recovery
Florence Dubois
 
Parallel Batch Performance Considerations
Parallel Batch Performance ConsiderationsParallel Batch Performance Considerations
Parallel Batch Performance Considerations
Martin Packer
 
Data base recovery
Data base recoveryData base recovery
Data base recovery
Visakh V
 

What's hot (19)

zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity Planning
 
zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018
 
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topicsMunich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
 
zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity Planning
 
SHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENTSHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENT
 
Database recovery
Database recoveryDatabase recovery
Database recovery
 
Life And Times Of An Address Space
Life And Times Of An Address SpaceLife And Times Of An Address Space
Life And Times Of An Address Space
 
data replication
data replicationdata replication
data replication
 
DB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and controlDB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and control
 
ALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARM
 
Tashkent
TashkentTashkent
Tashkent
 
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 lockingUsing Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
 
database recovery techniques
database recovery techniques database recovery techniques
database recovery techniques
 
Topic 4 database recovery
Topic 4 database recoveryTopic 4 database recovery
Topic 4 database recovery
 
Galvin-operating System(Ch9)
Galvin-operating System(Ch9)Galvin-operating System(Ch9)
Galvin-operating System(Ch9)
 
DB2 Through My Eyes
DB2 Through My EyesDB2 Through My Eyes
DB2 Through My Eyes
 
Best practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recoveryBest practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recovery
 
Parallel Batch Performance Considerations
Parallel Batch Performance ConsiderationsParallel Batch Performance Considerations
Parallel Batch Performance Considerations
 
Data base recovery
Data base recoveryData base recovery
Data base recovery
 

Similar to Thriftypaxos

High availability and disaster recovery in IBM PureApplication System
High availability and disaster recovery in IBM PureApplication SystemHigh availability and disaster recovery in IBM PureApplication System
High availability and disaster recovery in IBM PureApplication System
Scott Moonen
 
NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...
NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...
NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...
DataWorks Summit
 
SAP HANA System Replication - Setup, Operations and HANA Monitoring
SAP HANA System Replication - Setup, Operations and HANA MonitoringSAP HANA System Replication - Setup, Operations and HANA Monitoring
SAP HANA System Replication - Setup, Operations and HANA Monitoring
Linh Nguyen
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats new
Nassyam Basha
 
State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...
State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...
State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...
Paris Carbone
 
When Streaming Needs Batch With Konstantin Knauf | Current 2022
When Streaming Needs Batch With Konstantin Knauf | Current 2022When Streaming Needs Batch With Konstantin Knauf | Current 2022
When Streaming Needs Batch With Konstantin Knauf | Current 2022
HostedbyConfluent
 
Distributed DBMS - Unit 9 - Distributed Deadlock & Recovery
Distributed DBMS - Unit 9 - Distributed Deadlock & RecoveryDistributed DBMS - Unit 9 - Distributed Deadlock & Recovery
Distributed DBMS - Unit 9 - Distributed Deadlock & Recovery
Gyanmanjari Institute Of Technology
 
HPE + Veeam Technical Hands ON Workshop #1
HPE + Veeam Technical Hands ON Workshop #1HPE + Veeam Technical Hands ON Workshop #1
HPE + Veeam Technical Hands ON Workshop #1
Tanawit Chansuchai
 
Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...
Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...
Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...
confluent
 
Veeam Webinar - Case study: building bi-directional DR
Veeam Webinar - Case study: building bi-directional DRVeeam Webinar - Case study: building bi-directional DR
Veeam Webinar - Case study: building bi-directional DR
Joep Piscaer
 
Choosing the right high availability strategy
Choosing the right high availability strategyChoosing the right high availability strategy
Choosing the right high availability strategy
MariaDB plc
 
Veeam Webinar - Backing up Zarafa with SureBackup
Veeam Webinar - Backing up Zarafa with SureBackupVeeam Webinar - Backing up Zarafa with SureBackup
Veeam Webinar - Backing up Zarafa with SureBackup
Joep Piscaer
 
Stateful stream processing with Apache Flink
Stateful stream processing with Apache FlinkStateful stream processing with Apache Flink
Stateful stream processing with Apache Flink
Knoldus Inc.
 
NFSv4 Replication for Grid Computing
NFSv4 Replication for Grid ComputingNFSv4 Replication for Grid Computing
NFSv4 Replication for Grid Computing
peterhoneyman
 
The Good, The Bad and the Ugly
The Good, The Bad and the UglyThe Good, The Bad and the Ugly
The Good, The Bad and the Ugly
Roy Salazar
 
M|18 Choosing the Right High Availability Strategy for You
M|18 Choosing the Right High Availability Strategy for YouM|18 Choosing the Right High Availability Strategy for You
M|18 Choosing the Right High Availability Strategy for You
MariaDB plc
 
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
Ververica
 
Pnuts yahoo!’s hosted data serving platform
Pnuts  yahoo!’s hosted data serving platformPnuts  yahoo!’s hosted data serving platform
Pnuts yahoo!’s hosted data serving platform
lammya aa
 
Solving Hadoop Replication Challenges with an Active-Active Paxos Algorithm
Solving Hadoop Replication Challenges with an Active-Active Paxos AlgorithmSolving Hadoop Replication Challenges with an Active-Active Paxos Algorithm
Solving Hadoop Replication Challenges with an Active-Active Paxos Algorithm
DataWorks Summit
 
CS_10_DR_CFD
CS_10_DR_CFDCS_10_DR_CFD
CS_10_DR_CFD
ajaya gummadi
 

Similar to Thriftypaxos (20)

High availability and disaster recovery in IBM PureApplication System
High availability and disaster recovery in IBM PureApplication SystemHigh availability and disaster recovery in IBM PureApplication System
High availability and disaster recovery in IBM PureApplication System
 
NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...
NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...
NonStop Hadoop - Applying the PaxosFamily of Protocols to make Critical Hadoo...
 
SAP HANA System Replication - Setup, Operations and HANA Monitoring
SAP HANA System Replication - Setup, Operations and HANA MonitoringSAP HANA System Replication - Setup, Operations and HANA Monitoring
SAP HANA System Replication - Setup, Operations and HANA Monitoring
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats new
 
State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...
State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...
State Management in Apache Flink : Consistent Stateful Distributed Stream Pro...
 
When Streaming Needs Batch With Konstantin Knauf | Current 2022
When Streaming Needs Batch With Konstantin Knauf | Current 2022When Streaming Needs Batch With Konstantin Knauf | Current 2022
When Streaming Needs Batch With Konstantin Knauf | Current 2022
 
Distributed DBMS - Unit 9 - Distributed Deadlock & Recovery
Distributed DBMS - Unit 9 - Distributed Deadlock & RecoveryDistributed DBMS - Unit 9 - Distributed Deadlock & Recovery
Distributed DBMS - Unit 9 - Distributed Deadlock & Recovery
 
HPE + Veeam Technical Hands ON Workshop #1
HPE + Veeam Technical Hands ON Workshop #1HPE + Veeam Technical Hands ON Workshop #1
HPE + Veeam Technical Hands ON Workshop #1
 
Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...
Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...
Kafka Cluster Federation at Uber (Yupeng Fui & Xiaoman Dong, Uber) Kafka Summ...
 
Veeam Webinar - Case study: building bi-directional DR
Veeam Webinar - Case study: building bi-directional DRVeeam Webinar - Case study: building bi-directional DR
Veeam Webinar - Case study: building bi-directional DR
 
Choosing the right high availability strategy
Choosing the right high availability strategyChoosing the right high availability strategy
Choosing the right high availability strategy
 
Veeam Webinar - Backing up Zarafa with SureBackup
Veeam Webinar - Backing up Zarafa with SureBackupVeeam Webinar - Backing up Zarafa with SureBackup
Veeam Webinar - Backing up Zarafa with SureBackup
 
Stateful stream processing with Apache Flink
Stateful stream processing with Apache FlinkStateful stream processing with Apache Flink
Stateful stream processing with Apache Flink
 
NFSv4 Replication for Grid Computing
NFSv4 Replication for Grid ComputingNFSv4 Replication for Grid Computing
NFSv4 Replication for Grid Computing
 
The Good, The Bad and the Ugly
The Good, The Bad and the UglyThe Good, The Bad and the Ugly
The Good, The Bad and the Ugly
 
M|18 Choosing the Right High Availability Strategy for You
M|18 Choosing the Right High Availability Strategy for YouM|18 Choosing the Right High Availability Strategy for You
M|18 Choosing the Right High Availability Strategy for You
 
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
 
Pnuts yahoo!’s hosted data serving platform
Pnuts  yahoo!’s hosted data serving platformPnuts  yahoo!’s hosted data serving platform
Pnuts yahoo!’s hosted data serving platform
 
Solving Hadoop Replication Challenges with an Active-Active Paxos Algorithm
Solving Hadoop Replication Challenges with an Active-Active Paxos AlgorithmSolving Hadoop Replication Challenges with an Active-Active Paxos Algorithm
Solving Hadoop Replication Challenges with an Active-Active Paxos Algorithm
 
CS_10_DR_CFD
CS_10_DR_CFDCS_10_DR_CFD
CS_10_DR_CFD
 

More from YongraeJo

Enhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
Enhancing Ethereum PoA Clique Network with DAG-based BFT ConsensusEnhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
Enhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
YongraeJo
 
Zeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptxZeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptx
YongraeJo
 
basil.pptx
basil.pptxbasil.pptx
basil.pptx
YongraeJo
 
HotStuff
HotStuff HotStuff
HotStuff
YongraeJo
 
Fbft
FbftFbft
Fbft
YongraeJo
 
blockchain-and-trusted-computing
blockchain-and-trusted-computingblockchain-and-trusted-computing
blockchain-and-trusted-computing
YongraeJo
 
Blockchain meets database
Blockchain meets databaseBlockchain meets database
Blockchain meets database
YongraeJo
 
Beat
BeatBeat
Beat
YongraeJo
 
Byzantine ordered consensus
Byzantine ordered consensusByzantine ordered consensus
Byzantine ordered consensus
YongraeJo
 
Stellar
StellarStellar
Stellar
YongraeJo
 
Ledgerdb
LedgerdbLedgerdb
Ledgerdb
YongraeJo
 
Blockene
BlockeneBlockene
Blockene
YongraeJo
 
BlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lotteryBlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lottery
YongraeJo
 
Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)
YongraeJo
 
FlexSC
FlexSCFlexSC
FlexSC
YongraeJo
 
Honeybadger of BFT Protocols
Honeybadger of BFT ProtocolsHoneybadger of BFT Protocols
Honeybadger of BFT Protocols
YongraeJo
 
Cheapbft
Cheapbft Cheapbft
Cheapbft
YongraeJo
 
Practical Byzantine Fault Tolernace
Practical Byzantine Fault TolernacePractical Byzantine Fault Tolernace
Practical Byzantine Fault Tolernace
YongraeJo
 
Making BFT Protocols Really Adaptive
Making BFT Protocols Really AdaptiveMaking BFT Protocols Really Adaptive
Making BFT Protocols Really Adaptive
YongraeJo
 
Pileus
PileusPileus
Pileus
YongraeJo
 

More from YongraeJo (20)

Enhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
Enhancing Ethereum PoA Clique Network with DAG-based BFT ConsensusEnhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
Enhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
 
Zeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptxZeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptx
 
basil.pptx
basil.pptxbasil.pptx
basil.pptx
 
HotStuff
HotStuff HotStuff
HotStuff
 
Fbft
FbftFbft
Fbft
 
blockchain-and-trusted-computing
blockchain-and-trusted-computingblockchain-and-trusted-computing
blockchain-and-trusted-computing
 
Blockchain meets database
Blockchain meets databaseBlockchain meets database
Blockchain meets database
 
Beat
BeatBeat
Beat
 
Byzantine ordered consensus
Byzantine ordered consensusByzantine ordered consensus
Byzantine ordered consensus
 
Stellar
StellarStellar
Stellar
 
Ledgerdb
LedgerdbLedgerdb
Ledgerdb
 
Blockene
BlockeneBlockene
Blockene
 
BlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lotteryBlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lottery
 
Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)
 
FlexSC
FlexSCFlexSC
FlexSC
 
Honeybadger of BFT Protocols
Honeybadger of BFT ProtocolsHoneybadger of BFT Protocols
Honeybadger of BFT Protocols
 
Cheapbft
Cheapbft Cheapbft
Cheapbft
 
Practical Byzantine Fault Tolernace
Practical Byzantine Fault TolernacePractical Byzantine Fault Tolernace
Practical Byzantine Fault Tolernace
 
Making BFT Protocols Really Adaptive
Making BFT Protocols Really AdaptiveMaking BFT Protocols Really Adaptive
Making BFT Protocols Really Adaptive
 
Pileus
PileusPileus
Pileus
 

Recently uploaded

Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfAI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
Techgropse Pvt.Ltd.
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 

Recently uploaded (20)

Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfAI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 

Thriftypaxos

  • 1. Cheap and Available State Machine Replication Rong Shi, Yang Wang(The Ohio State University) ATC 2016 Yongrae Jo (20172938)
  • 2. Active replica Client replica 1 replica 2 replica 4 replica 3 replica 5 replica 6 replica 7 Backup In active replica / backup replica organization, CFT
  • 3. Active replica Client replica 1 replica 2 replica 4 replica 3 replica 5 replica 6 replica 7 Backup In active replica / backup replica organization, CFT
  • 4. State transfer Active replica Client replica 1 replica 2 replica 4 replica 3 replica 5 replica 6 replica 7 Backup In active replica / backup replica organization, CFT
  • 5. Activate backup replica (state transfer) Request System not available during state transfer Active replica Client replica 1 replica 2 replica 4 replica 3 replica 5 replica 6 replica 7 Backup In active replica / backup replica organization, CFT
  • 6. Completes state transfer Request System now available after state transfer Active replica Client replica 1 replica 2 replica 4 replica 3 replica 5 replica 6 replica 7 Backup In active replica / backup replica organization, CFT
  • 7. Cheap ● Reducing replication cost – 2f + 1 replicas for f crash faults ● f+1 active replicas participating in agreement or execution stage – 3f + 1 replicas for f arbitrary faults ● 2f + 1 active replicas participating in agreement or execution stage ● Why needed? – Large data center where up to millions of machines may need to be replicated
  • 8. Available ● Active / Backup replica scheme, – When a active replica fails, backup replica needs to be active one – Then, backup replica needs to get state transfer from active one – System is not available during state transfer – For applications with a large state, the system can be halted for long ● Providing system availability under state transfer with active / backup replica scheme
  • 9. On-demand instantiation ● Activates a subset of replicas first and activates backup one when active one fails ● Different from Active / Passive replica scheme(CheapBFT) – Passive replica simply updates result ● No need to transfer state when faulty replica occured – Backup replica does nothing until it is activated
  • 10. Lazy recovery ● Realizing system availability during state transfer using adaptive recovery – Rebuilding a backup replica’s state in the background without halting the system ● Adaptive recovery – Coordinate recovery speed with transferred state by periodically checking the progress – It compares (fetched data / total data) and (elapsed time / deadline) to coordinate recovery speed – During adaptive recovery, client’s request is also processed in parallel which incurs competition for resources (e.g. network and disk bandwidth) ● Lazy recovery is possible only when agreement and execution are logically separated
  • 11. On-demand instantiation Unavailability under recovery Lazy recovery SMR with Low replication cost SMR with Low replication cost & High availability SMR SMR with Low replication cost
  • 12. ThriftyPaxos ● Applying on-demand instantiation and lazy recovery to standard Paxos ● ThriftyPaxos mostly resembles standard Paxos – Normal case op., leader change protocol – Not new and complete protocol ● ThriftyPaxos activates f +1 replicas and reserves f replicas as backup – Standard Paxos activates 2f + 1 replicas ● Same correctness guarantee as Paxos with f fewer replicas
  • 13. Evaluation ● RemoteHashMap – An application that allows clients to get and set key value pairs on a remote server – It can change system parameters (e.g. request size) arbitrarily to test different aspects of ThriftyPaxos. ● 7 Dell R220 machines, each with 8 cores, 16GB of memory, and two hard drivers ● Store RemoteHashMap’s data on one hard drive and store agreement nodes’ data on the other hard drive ● 5 minutes for triggering recovery after detecting crash
  • 14. Evaluation Key value performance v: value size f=1 and v=512b
  • 15. Availability of ThriftyPaxos, standard Paxos, and Cheap Paxos Not available f+1 active replica 2f+1 active replica f+1 active replica, on-demand instantiation System is still available
  • 16. Backup agreement node needs only few messages to recover Backup execution node needs recovery(state transfer) Backup execution node replays the logs Execution node depends on previous request to execute next request → It needs request logs(state transfer) and replay logs Agreement node doesn’t require previous request to determine next request (memory less property)
  • 17. Less resource allocated to recovery task Adaptive recovery 5 mins after crash 22240 req/s 74690 req/s 99339 req/s
  • 18. Conclusion ● By combining on-demand instantiation and lazy recovery, cheap and available state machine replication protocol is achieved ● No need to invent new protocols – By carefully looking at exsisting protocols, ThriftyPaxos slightly changes standard Paxos to provide on-demand instantiation and lazy recovery
  • 21. Latency critical task (e.g. client request) Latency flexible task (e.g. garbage collection)