List of Figures – MongoDB in Action

List of Figures

Chapter 1. A database for the modern web

Figure 1.1. A basic relational data model for entries on a social news site

Figure 1.2. A portion of the schema for the PHP e-commerce project Magento. These tables facilitate dynamic attribute creation for products.

Figure 1.3. Automated failover with a replica set

Figure 1.4. Horizontal versus vertical scaling

Chapter 2. MongoDB through the JavaScript shell

Figure 2.1. The MongoDB JavaScript shell on startup

Chapter 3. Writing programs using MongoDB

Figure 3.1. MongoDB object ID format

Figure 3.2. Translating from Ruby to BSON

Figure 3.3. The Tweet Archiver output rendered in a web browser

Chapter 6. Updates, atomic operations, and deletes

Figure 6.1. An initial category hierarchy

Figure 6.2. Adding a Gardening category

Figure 6.3. The category tree in its final state

Figure 6.4. When a review is updated concurrently via targeted and replacement updates, data can be lost.

Chapter 7. Indexing and query optimization

Figure 7.1. A compound index inside a cookbook

Figure 7.2. Single-key index traversal

Figure 7.3. Compound-key index traversal

Figure 7.4. A compound-key index with the keys reversed

Figure 7.5. Sample B-tree structure

Chapter 8. Replication

Figure 8.1. A basic replica set consisting of a primary, a secondary, and an arbiter

Figure 8.2. A three-node replica set with members in two data centers

Chapter 9. Sharding

Figure 9.1. Components in a MongoDB shard cluster

Figure 9.2. A map of processes comprising the sample shard cluster

Figure 9.3. Targeted and global queries against a shard cluster

Figure 9.4. A two-shard cluster deployed across four machines

Figure 9.5. A two-shard cluster deployed across six machines and two data centers

Chapter 10. Deployment and administration

Figure 10.1. The MongoDB web console

Appendix B. Design patterns

Figure B.1. Threaded comments in a forum

Appendix C. Binary data and GridFS

Figure C.1. Storing a file with GridFS