Splitting one dataset across machines (shards or partitions) so storage, throughput and memory add up beyond one server's limits.