- What are the key differences between a relational database and a NoSQL database? Provide an example use case where a relational database would be a better fit than a NoSQL database and vice versa.
- How would you scale a relational database system for a read-heavy and a write-heavy workload?
- What is the CAP theorem and is it important when choosing which NoSQL implementation to use?
- Why is it important to provide an abstraction layer between our business logic and the underlying database?
- How would you go about adding a new method to the Indexer interface we discussed in the last part of this chapter?