Несколько лет назад я начал всё больше разбираться в том, как проектируются большие и сложные IT-системы. Ещё и такие, которые выдерживают огромные нагрузки: обрабатывают запросы миллионов пользователей каждый день, гоняют петабайты данных ежемесячно и всё такое. YouTube, TikTok, Google Docs и т.п.
А в последнее время и по работе чаще стало необходимо погружаться в архитектурные обсуждения. Интересно ещё и то, что в крупных IT-компаниях всё чаще наблюдается тренд на проведение так называемых System Design Interview. Это по сути архитектурное собеседование для специалистов с серьёзным уровнем.
Что хочу сказать? Информации по этой теме просто невероятное количество! Я попытался как-то собрать в одном месте и структурировать всё, что находил, и получился гигантский паук! Так получилось, что большую часть картинок забрал с сайта bytebytego.com
Подумал, зачем зря добру пропадать? Поразглядывайте картинки тоже! Может кому пригодится в работе или даже для трудоустройства:
https://miro.com/app/board/uXjVLw0JIYw=

Я, например, осознал для себя, что по аналогии с тем, как фронтенд общается с бекендом, так же и анализ данных осуществляется на основе DataLake и DWH, собранных благодаря тому же бекенду. Ну кайф же!
P.S.: Буду благодарен за вопросы и замечания к схеме. Наверняка там ещё множество неточностей и конспект явно неполный. Так что с удовольствием поправлю все ошибки, которые поможете найти. Можно писать как здесь в комментах, так и под постом в моей телеге.

Автор: polyakovin