Scaling Reads easy
You have a complex query that takes 10 seconds to run because it joins 5 tables. How can a 'Materialized View' help?
- A It pre-calculates the result of the query and saves it as a physical table, making future reads instant.
- B It speeds up the CPU.
- C It deletes the old tables.
- D It forces the query to run on the client side.
Answer: A. It pre-calculates the result of the query and saves it as a physical table, making future reads instant.
Standard Views are virtual (query runs every time). Materialized Views are physical snapshots. You pay the cost once (at creation/refresh) to get free reads later.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- In a caching system, what is a 'Cache Miss'?
- Why is `SELECT * FROM Users` generally discouraged in high-performance applications compared to `SELECT name, email FROM Users`?
- You have users all over the world downloading large images from your server in New York. Users in Australia complain it is slow. What solves this?
- What is the main downside of reading from a Read Replica instead of the Primary database?
- You have maximized the RAM on your single database server, but it's still too slow. You decide to add 10 more servers to share the load. What is this called?
- You have 5 Read Replicas. How does the application know which one to ask for data?