Когда одного сервера мало
Рано или поздно успешный сервис упирается в предел одного узла: не хватает диска, CPU или пропускной способности при росте трафика. Дальше обычно идут две большие идеи: копировать один и тот же набор данных на несколько машин (репликация) или разделить данные по частям на разные машины (шардирование). Это разные цели: надёжность и масштаб чтения vs горизонтальный объём и параллелизм записи по частям данных.