Iterate and Scale

Learn how to build scalable systems in this lesson.

It is the most critical phase of system design. Sometimes, the interviewer wants us to focus only on this part.

We have created a high-level design by now, but it may not be scalable and reliable. We are supposed to dip deep into our high-level design and improve, but it is nearly impossible to go into each component in the interview. Sometimes, the interviewer will suggest a particular component they’d like us to expand on. If not, we should expand on the database part.

Scalability

It depends on the context on what and where you are trying to scale, but we will cover topics based on the experience we need in this phase.

Partitioning

Partitioning will be used when we have to scale our database and reduce the response time for clients.

Traditionally, if we store all of the data into one database, it will take a substantial amount of time to look up and query the ...