Skip to main content

Short note: Vertical and horizontal scalability

Short answer

Vertical scalability (scale up) increases a single machine's resources (CPU, RAM) but hits hardware limits. Horizontal scalability (scale out) adds more machines to a cluster, enabling near-unlimited growth with commodity hardware and better fault tolerance, as used in Hadoop.

Write a short note on Vertical and Horizontal Scalability.

Scalability is the ability of a system to handle growing amounts of data or load by adding resources.

Vertical scalability (scale up)

Increasing the capacity of a single machine by adding more CPU, RAM or disk, or replacing it with a stronger server.

  • Advantages: simple, no change in the application, no distribution complexity.
  • Disadvantages: has a hardware upper limit, expensive high-end machines, downtime during upgrade, and a single point of failure.
  • Example: upgrading a database server from 16 GB to 128 GB RAM.

Horizontal scalability (scale out)

Increasing capacity by adding more machines (nodes) to a cluster so that data and work are shared among them.

  • Advantages: almost unlimited growth, uses cheap commodity hardware, better fault tolerance because of replication, no downtime when adding nodes.
  • Disadvantages: complex software for distribution, consistency and network communication; more nodes to manage.
  • Example: adding DataNodes to a Hadoop cluster, adding Cassandra nodes.
 Vertical:    [small] -> [  BIG  ]
 Horizontal:  [node] -> [node][node][node][node]

Comparison

PointVerticalHorizontal
MethodBigger machineMore machines
LimitHardware limitPractically none
CostVery high at top endLow per node
Fault toleranceLowHigh
SoftwareSimpleNeeds distributed design

Big data systems (Hadoop, GFS, NoSQL) prefer horizontal scaling.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Big Data Technologies chapter 1 questions →