Предварительные расчеты — это приблизительные оценки, которые вы создаете, чтобы получить первоначальное представление о том, как должна быть спроектирована система.

Предварительные расчеты — это оценки, которые вы создаете, используя комбинацию мысленных экспериментов и общих показателей производительности, чтобы получить хорошее представление о том, какие проекты будут соответствовать вашим требованиям. © Джефф Дин, старший научный сотрудник Google.

Как бы вы решили, какой дизайн лучше всего подходит для данной проблемы?

Сколько места на диске требуется для хранения данных? Сколько серверов необходимо для выполнения всех одновременных запросов при пиковом трафике?

Две одинаковые системы с 1000 и 1 миллионом пользователей будут иметь разные потребности и разные конструкции. Вы можете выполнить предварительные расчеты, чтобы определить, как должна быть спроектирована система.

Чаще всего нам нужно делать оценки трафика, хранилища и памяти, оценки пропускной способности и оценки задержки. Наиболее важные ресурсы помогут вам сделать выбор архитектуры.

На реальном собеседовании у вас будет всего несколько минут, чтобы дать свои оценки и доказать, что ваш дизайн соответствует цели требуемой системы. Эти 3 понятия помогут вам: степень двойки, числа задержки и числа доступности.

Вы можете попрактиковаться, оценив, сколько ежедневных пользователей имеет система, если есть 200 миллионов активных пользователей в месяц. Если все они публикуют один раз в день короткое сообщение, и мы храним эти сообщения в течение года, сколько места для хранения нам потребуется?