Skip to main navigation Skip to search Skip to main content

Fault-tolerant replication with pull-based consensus in mongoDB

  • MongoDB Inc

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

31 Scopus citations

Abstract

In this paper, we present the design and implementation of strongly consistent replication in MongoDB. MongoDB provides linearizability and tolerates any minority of failures through a novel consensus protocol that derives from Raft. A major difference between our protocol and vanilla Raft is that MongoDB deploys a unique pull-based data synchronization model: a replica pulls new data from another replica. This pull-based data synchronization in MongoDB can be initiated by any replica and can happen between any two replicas, as opposed to vanilla Raft, where new data can only be pushed from the primary to other replicas. This flexible data transmission topology enabled by the pull-based model is strongly desired by our users since it has an edge on performance and monetary cost. This paper describes how this consensus protocol works, how MongoDB integrates it with the rest of the replication system, and the extensions of the replication protocol that support our rich feature set. Our evaluation shows that MongoDB effectively achieved the design goals and can replicate data efficiently and reliably.

Original languageEnglish
Title of host publicationProceedings of the 18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021
PublisherUSENIX Association
Pages687-700
Number of pages14
ISBN (Electronic)9781939133212
StatePublished - 2021
Event18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021 - Virtual, Online
Duration: Apr 12 2021Apr 14 2021

Publication series

NameProceedings of the 18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021

Conference

Conference18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021
CityVirtual, Online
Period04/12/2104/14/21

Fingerprint

Dive into the research topics of 'Fault-tolerant replication with pull-based consensus in mongoDB'. Together they form a unique fingerprint.

Cite this