Performance and Optimization
When the performance of a relational database isn’t acceptable, we face two choices: either replace the relational database with another technology (e.g., NoSQL) or break some of the design rules to improve performance. This lesson covers partitioning, which splits a relational table into multiple tables and distributes them across multiple machines, and denormalization, which sacrifices redundancy in exchange for reducing the number of joins when processing queries.
Learning Objectives
- Describe horizontal and vertical partitioning for relational schemas
- Describe the concept of denormalization and when to consider it
How to Complete this Lesson
Complete the following learning activities: (2.75–3.25 hours total)
- Read “Physical Database Design Techniques” in Fundamentals of Database Management Systems Chapter 8: Physical Database Design (15 minutes)
- Attend the class meeting (60 minutes)
- Work on the project’s web application (90–120 minutes)
Resources
- Scaling Databases (7 minutes)