Introduction
Two core traits of a well designed database system are consistency of data and ability to restore data from a known good state. In MongoDB, the former part is mostly managed by the underlying server software. For example, using features like write concerns can also help ensure that writes received by the cluster are acknowledged under the predefined conditions. However, the ability to restore data is, for the most part, still a system that heavily relies on backup and restore strategies designed by database administrators. In this chapter, we will be looking at various tools and techniques that would hopefully help you in designing your optimal backup strategy.