In the database design for Book Someplace, there are many blocks of information that could potentially be redundant. One example is address information: this block of information can be applied to customers, partners, and also to properties! If we were dealing with a legacy two-dimensional RDBMS, we would end up with dozens of small tables with an overwhelming number of relationships and join tables.
Rather than thinking in terms of collections and document structures, let's step back for a moment and see whether we can define JSON objects that can be used as interchangeable Lego blocks. Let's start with Name.
To arrive at a good MongoDB database design, DevOps should think in terms of objects rather than two-dimensional structures based on rows and columns.