Google назвал причину сбоя Gmail
Устройство облачных почтовых сервисов
Почтовые сервисы уровня Gmail хранят данные не на одном сервере, а в распределённой системе дата-центров. Письма, вложения и метаданные разносятся по множеству узлов, что обеспечивает доступность при выходе из строя отдельных машин. Физически информация записывается на жёсткие диски, но логически управляется программным слоем, который отвечает за индексацию, поиск и отображение содержимого в веб-интерфейсе.
Обновление программного обеспечения в такой среде — операция с высоким риском. Изменения разворачиваются постепенно, от кластера к кластеру, но ошибка в коде может нарушить связь между индексом и фактическим расположением данных. В этом случае письма перестают отображаться в интерфейсе пользователя, хотя физически остаются на дисках. Восстановление требует сверки индексных таблиц с содержимым хранилищ, что при больших объёмах занимает часы или дни.
Для защиты от потерь применяется многоуровневое резервирование. Оперативные копии поддерживаются в синхронном или близком к синхронному режиме, а для страховки от логических сбоев создаются отложенные слепки данных — офлайновые архивы. Именно к таким архивам прибегают, когда оперативные реплики уже повреждены ошибочным обновлением. Восстановление из отложенной копии требует физической пересылки массивов между площадками и последующей интеграции в работающую систему.


