“…scale has four pathways…
• Scale vertically, via resource allocation. aka scale up
• Scale horizontally, by duplication of the system or service. aka scale out
• Separate workloads to smaller sets of functionality, to allow for each to scale
independently, also known as functional partitioning
• Split specific workloads into partitions that are identical, other than the specific set of data that is being worked on also known as sharding.”
—Laine Campbell and Charity Majors, Database Reliability Engineering:
Designing and Operating Resilient
Database Systems.
