Философское - облако и разделение труда (2)
Переложим эту мысль на наш мир ИТ.
Если мы переложим часть задач разработки на аутсорс, мы успеем больше. Риски от этого повысятся: вдруг заказчик обанкротится, профакапит, сорвет сроки, сделает не так как надо?
Можем взять на администрирование СУБД или кубернетисов внешнюю команду. Можем часть функционала закрыть SaaS.
Рост кооперации, рост производительности, но и рост рисков.
Чтобы заняться ростом кооперации, нужно чтобы удовлетворялось ряд требований.
1️⃣ Члены кооперации должны уметь считать выгоду и главное, риски. Часто бывает, когда критический функционал аутсорсится, а внутренняя команда занимается всякой ерундой.
2️⃣ Должно быть доверие между участниками. Доверие создается годами и успешными проектами. Часто просто должно пройти время.
3️⃣ Рост производительности должен конвертироваться в рост благосостояния. Телеги должны продаваться и растить маржу, а не оседать на складе.
4️⃣ Риски должны быть разумными и не расти со временем. Не должно быть риска роста рисков - например введения смертельных штрафов в случае если что-то идет не так.
Хотя как известно, нет такого преступления, на которое капитал не пойдет ради 500% прибыли. Люди идут на риск даже при угрозе физического вывоза себя в лес.
Переложим эту мысль на наш мир ИТ.
Если мы переложим часть задач разработки на аутсорс, мы успеем больше. Риски от этого повысятся: вдруг заказчик обанкротится, профакапит, сорвет сроки, сделает не так как надо?
Можем взять на администрирование СУБД или кубернетисов внешнюю команду. Можем часть функционала закрыть SaaS.
Рост кооперации, рост производительности, но и рост рисков.
Чтобы заняться ростом кооперации, нужно чтобы удовлетворялось ряд требований.
Хотя как известно, нет такого преступления, на которое капитал не пойдет ради 500% прибыли. Люди идут на риск даже при угрозе физического вывоза себя в лес.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8
Философское - облако и разделение труда (3)
Верх кооперации в ИТ - Платформы и облака.
Сегодня у большой ИТ компании может быть 0 собственных серверов, а продукт базируется на IaaS, PaaS, SaaS сервисах.
В то же время многие либо сидят на своей инфраструктуре, либо даже мигрируют в другую сторону: с облака на землю.
Если спросить, почему они так делают, то мы по сути получим какой-то недостаток из 4 пунктов выше.
Часто приходится слышать о таких вещах как
🔤 Мы поехали в облако, а оно нас подвело вследствие багов и аварий. Разрушение доверия, реализовавшиеся риски.
🔤 У нас регуляторные ограничения. Прямой запрет на этот тип кооперации от государства. Так как государство считает, что рост рисков конкретно в этой области неприемлем.
🔤 У нас и так все хорошо. Нет рынка для сбыта новой продукции. Нет воли к расширению. Экономика расширения не сходится.
При этом эти глубинные возражения как правило, не озвучиваются. Никто на встрече с представителями подрядчика или вендора не скажет: мы не верим вам достаточно, чтобы поручить вам критичный для нас функционал. Скажут: вот вам таких и таких фичей не хватает, и это срывает головы. Сейлу и продакту кажется, что вот-вот еще доработать то и это, и тогда мы получим крупного клиента.
Не получите. Не потому что фичи плохие, а потому что доверия к вам нет. Sad but true.
Верх кооперации в ИТ - Платформы и облака.
Сегодня у большой ИТ компании может быть 0 собственных серверов, а продукт базируется на IaaS, PaaS, SaaS сервисах.
В то же время многие либо сидят на своей инфраструктуре, либо даже мигрируют в другую сторону: с облака на землю.
Если спросить, почему они так делают, то мы по сути получим какой-то недостаток из 4 пунктов выше.
Часто приходится слышать о таких вещах как
При этом эти глубинные возражения как правило, не озвучиваются. Никто на встрече с представителями подрядчика или вендора не скажет: мы не верим вам достаточно, чтобы поручить вам критичный для нас функционал. Скажут: вот вам таких и таких фичей не хватает, и это срывает головы. Сейлу и продакту кажется, что вот-вот еще доработать то и это, и тогда мы получим крупного клиента.
Не получите. Не потому что фичи плохие, а потому что доверия к вам нет. Sad but true.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6👍5🔥2
Артем, спасибо за вопрос!
Договор - это хорошо, но есть ряд нюансов.
1) Договоры бывают разные. От ничего не обязывающей рамки до суровых "бери или плати" схем.
2) Договор - это скорее следствие возникшего доверия, а не его причина. Причем, это скорее промежуточный этап отношений. Это как девушка согласилась взять у тебя букет и пойти с тобой в кино 🙂. Да, успех, да, ты на верном пути, но до крупкой семьи и домика с белым забором еще довольно далеко.
Большинство договоров это что-то вроде входного билета в ИТ-мир заказчика. Ты становишься одним из вариантов решения неких проблем внутри - если ты вендор. Или тебе дали возможность решить одну прикладную задачу - если ты подрядчик-интегратор.
А "крепкий брак" и возникшее доверие - это когда по любой возникшей ИТ проблеме к тебе бегут к первому.
В случае облака - у крупных заказчиков как правило несколько облаков. Какие сервисы и на какой объем будут в какой зоне размещаться - всегда вопрос.
Договор - это хорошо, но есть ряд нюансов.
1) Договоры бывают разные. От ничего не обязывающей рамки до суровых "бери или плати" схем.
2) Договор - это скорее следствие возникшего доверия, а не его причина. Причем, это скорее промежуточный этап отношений. Это как девушка согласилась взять у тебя букет и пойти с тобой в кино 🙂. Да, успех, да, ты на верном пути, но до крупкой семьи и домика с белым забором еще довольно далеко.
Большинство договоров это что-то вроде входного билета в ИТ-мир заказчика. Ты становишься одним из вариантов решения неких проблем внутри - если ты вендор. Или тебе дали возможность решить одну прикладную задачу - если ты подрядчик-интегратор.
А "крепкий брак" и возникшее доверие - это когда по любой возникшей ИТ проблеме к тебе бегут к первому.
В случае облака - у крупных заказчиков как правило несколько облаков. Какие сервисы и на какой объем будут в какой зоне размещаться - всегда вопрос.
👍6💯5😎2
Задачка для съевших собаку на Гринпламе. Реши если силен!
В кластере гринплама 1 мастер, 1 стендбай-мастер и 24 сегмент-сервера. Я выключаю случайные 2 сервера. С какой вероятностью кластер упадет в отказ в обслуживании?
Со звездочкой - выдергиваю 5 случайных нод.
В кластере гринплама 1 мастер, 1 стендбай-мастер и 24 сегмент-сервера. Я выключаю случайные 2 сервера. С какой вероятностью кластер упадет в отказ в обслуживании?
Со звездочкой - выдергиваю 5 случайных нод.
Аналитика для руководителей - подарите эту книгу своему СЕО
Открываем книжный клуб любителей данных!
Автор книги - Николай Валиотти, @leftjoin. Бывалый аналитик, предприниматель в области данных.
Для меня книга поделилась на несколько частей.
Часть 1. Ликвидация безграмотности СЕО.
Это первые 40 страниц, поэтому улучите момент, когда ваш директор куда-то летит и всуньте ему эту книгу в дорожный рюкзак. Пока он будет час скучать в зале ожидания, он вполне осилит самую важную для себя часть.
В ней будут ответы на вопросы:
Что такое аналитика данных и зачем она нужна. Какую пользу СЕО может извлечь из аналитики данных для себя.
Какое разделение труда практикуется в командах по работе с данными. какие вопросы правильно и какие неправильно задавать аналитику, дата саентисту, дата инженеру.
На что тратятся деньги. Что стоит за этими странными аббревиатурами в чеках: DWH, BI, ETL.
Часть 2. Для СТО. Избавляемся от людей с песьими головами.
Что такое DWH и какими свойствами должен обладать хороший DWH. Почему самописный BI поверх ElasticSearch - плохая идея. То же про BI, Data Governance, ETL/ELT - что все эти системы делают, на что идут бюджеты и ресурсы. На каких опенсорс и платных инструментах это можно собрать, какие лучшие практики.
Часть 3. Пособие начинающему аналитику.
Какие бывают аналитики и кем можно стать. Какое разделение труда между заказчиком и аналитиком (Маркетолог - Маркетинговый аналитик), как правильно принять и сдать задачу.
Какой инструментарий изучить. Очень много примеров реальных архитектур данных.
Как строить BI, компоновать отчеты.
Часть 4. Взгляд со стороны CDO.
Как сформировать команду, распределить роли. Какие функции централизовать, какие отпустить в бизнес-подразделения. Какие модели управления дата офисом существуют.
Pro:
➕ Книга-дайджест, полезная для многих ролей.
➕ Много практических примеров дата-архитектур
➕ Много полезных прикладных советов, которые могут быть интересны даже опытным специалистам в данных
Contra:
➖ Несколько книг в одной с разным уровнем детализации и погружения.
➖ Есть ошибки в полиграфии, когда на черно-белую диаграмму ссылаются как на цветную
➖ Много рекламы консалт-агентства автора (но иначе книги бы не было!)
В целом, книга точно заслуживает свое место на полке. Особенно ценно будет для специалистов около-данных в качестве брифа по сложному стеку: как что в нем устроено, почему именно так и почему это столько стоит.
Открываем книжный клуб любителей данных!
Автор книги - Николай Валиотти, @leftjoin. Бывалый аналитик, предприниматель в области данных.
Для меня книга поделилась на несколько частей.
Часть 1. Ликвидация безграмотности СЕО.
Это первые 40 страниц, поэтому улучите момент, когда ваш директор куда-то летит и всуньте ему эту книгу в дорожный рюкзак. Пока он будет час скучать в зале ожидания, он вполне осилит самую важную для себя часть.
В ней будут ответы на вопросы:
Что такое аналитика данных и зачем она нужна. Какую пользу СЕО может извлечь из аналитики данных для себя.
Какое разделение труда практикуется в командах по работе с данными. какие вопросы правильно и какие неправильно задавать аналитику, дата саентисту, дата инженеру.
На что тратятся деньги. Что стоит за этими странными аббревиатурами в чеках: DWH, BI, ETL.
Часть 2. Для СТО. Избавляемся от людей с песьими головами.
Что такое DWH и какими свойствами должен обладать хороший DWH. Почему самописный BI поверх ElasticSearch - плохая идея. То же про BI, Data Governance, ETL/ELT - что все эти системы делают, на что идут бюджеты и ресурсы. На каких опенсорс и платных инструментах это можно собрать, какие лучшие практики.
Часть 3. Пособие начинающему аналитику.
Какие бывают аналитики и кем можно стать. Какое разделение труда между заказчиком и аналитиком (Маркетолог - Маркетинговый аналитик), как правильно принять и сдать задачу.
Какой инструментарий изучить. Очень много примеров реальных архитектур данных.
Как строить BI, компоновать отчеты.
Часть 4. Взгляд со стороны CDO.
Как сформировать команду, распределить роли. Какие функции централизовать, какие отпустить в бизнес-подразделения. Какие модели управления дата офисом существуют.
Pro:
Contra:
В целом, книга точно заслуживает свое место на полке. Особенно ценно будет для специалистов около-данных в качестве брифа по сложному стеку: как что в нем устроено, почему именно так и почему это столько стоит.
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Архитектор Данных
Люди с песьими головами или эта ваша аналитика глазами CTO
Расскажу об одном разговоре с моим тогдашним СТО, который многое для меня сделал понятным.
СТО был прекрасный, на 146% на своем месте. Трудились мы в небольшой компании, которая разрабатывала подписочный…
Расскажу об одном разговоре с моим тогдашним СТО, который многое для меня сделал понятным.
СТО был прекрасный, на 146% на своем месте. Трудились мы в небольшой компании, которая разрабатывала подписочный…
❤10👍6✍3💩1😎1 1
Forwarded from MyDB
🔥 Alibaba представила open-source интеграцию DuckDB — AP-движок для аналитических запросов прямо в MySQL
Крупнейший китайский облачный вендор Alibaba открыл исходный код глубокой интеграции аналитической СУБД DuckDB в AliSQL (форк MySQL). Это позволяет запускать аналитические запросы (OLAP) в тысячи раз быстрее, чем на InnoDB, с полным сохранением MySQL-синтаксиса.
Проект доступен полностью в open source — разработчики и компании могут использовать, модифицировать и внедрять эту технологию самостоятельно, без привязки к облачным сервисам.
🛠 Как это работает:
DuckDB встроен как плагинный storage-движок в архитектуру MySQL. Аналитические реплики синхронизируются через бинарный лог (binlog), что обеспечивает согласованность данных и отказоустойчивость. Под капотом реализованы оптимизации:
- Пакетное выполнение транзакций
- Поддержка DDL через
- Многопоточная конвертация таблиц
📊 Производительность:
На тестах TPC-H SF100 DuckDB показал впечатляющие результаты — общее время выполнения 22 запросов:
• DuckDB: 15.31 сек (в 1648 раз быстрее!)
• InnoDB: 25 234.31 сек
🌐 Исходный код и документация:
Решение полностью открыто и доступно в репозитории AliSQL. Сообщество может изучать, использовать и развивать эту интеграцию.
👉 Репозиторий и подробная документация
#OpenSource #AliSQL #DuckDB #MySQL #OLAP #Database #Analytics #Alibaba #GitHub
Крупнейший китайский облачный вендор Alibaba открыл исходный код глубокой интеграции аналитической СУБД DuckDB в AliSQL (форк MySQL). Это позволяет запускать аналитические запросы (OLAP) в тысячи раз быстрее, чем на InnoDB, с полным сохранением MySQL-синтаксиса.
Проект доступен полностью в open source — разработчики и компании могут использовать, модифицировать и внедрять эту технологию самостоятельно, без привязки к облачным сервисам.
🛠 Как это работает:
DuckDB встроен как плагинный storage-движок в архитектуру MySQL. Аналитические реплики синхронизируются через бинарный лог (binlog), что обеспечивает согласованность данных и отказоустойчивость. Под капотом реализованы оптимизации:
- Пакетное выполнение транзакций
- Поддержка DDL через
INPLACE / INSTANT или COPY - механизмы- Многопоточная конвертация таблиц
📊 Производительность:
На тестах TPC-H SF100 DuckDB показал впечатляющие результаты — общее время выполнения 22 запросов:
• DuckDB: 15.31 сек (в 1648 раз быстрее!)
• InnoDB: 25 234.31 сек
🌐 Исходный код и документация:
Решение полностью открыто и доступно в репозитории AliSQL. Сообщество может изучать, использовать и развивать эту интеграцию.
👉 Репозиторий и подробная документация
#OpenSource #AliSQL #DuckDB #MySQL #OLAP #Database #Analytics #Alibaba #GitHub
Целеполагания вопрос
На третьем курсе физтеха после многих семестров матана я добрался до ТФКП и решал примерно такое.
Теперь же второклассница Маша с помощью GPT 5.2 вполне может решить вот такой примерчик
sin(z) = 5 (в военное время синус может достигать пяти!)
Если больше не нужно, как ее папе, тратить 12 лет на обучение сложным техническим премудростям, то чем тогда полезным заняться Маше?
На третьем курсе физтеха после многих семестров матана я добрался до ТФКП и решал примерно такое.
Теперь же второклассница Маша с помощью GPT 5.2 вполне может решить вот такой примерчик
sin(z) = 5 (в военное время синус может достигать пяти!)
Если больше не нужно, как ее папе, тратить 12 лет на обучение сложным техническим премудростям, то чем тогда полезным заняться Маше?
🤔7😁4 3
Сергей, спасибо за коммент!
Когда я в Вышке изучал трудовую экономику, узнал, что этот вопрос - одна из главных загадок мироздания. Как влияют уровни и годы обучения на доход, удовлетворенность жизнью, карьеру и так далее.
С одной стороны есть факт, что тот кто больше учится, зарабатывает больше. Даже несмотря на то, что у бросившего универ будет больше лет опыта, через лет 5 они сравниваются. То есть 5 лет учебы + 5 лет работы начинают обгонять 10 лет работы.
С другой стороны, невозможно проверить: этот эффект именно от обучения или работают другие факторы. Те, кто дольше учатся, происходят в целом из более обеспеченных семей. Или обладают большей склонностью к науке и способностями. Эти же факторы, очевидно, влияют и на карьеру. И поди пойми, человек сделал карьеру потому что стал умнее или потому что его папа, который может потянуть 5 лет обучения, может и в карьере подтолкнуть.
Есть еще такое хорошее объяснение как сигнальная теория. Если у человека на руках диплом хорошего ВУЗа, то это сигнал что он не тупой, и поэтому его стоит взять на работу. В стопке джунов без достижений у этого джуна достижение как раз-таки есть.
Сигнальная теория это когда сама академия говорит: эй, мы знаем, что все чему мы учим - для работы малополезная ерунда. Но зато, зарыв много лет и денег в формальное образование, ты будешь иметь на руках бумажку, что вот, ты в состоянии осиливать довольно сложные материи довольно быстро.
Подпись, печать, бланк с Госзнака.
Когда я в Вышке изучал трудовую экономику, узнал, что этот вопрос - одна из главных загадок мироздания. Как влияют уровни и годы обучения на доход, удовлетворенность жизнью, карьеру и так далее.
С одной стороны есть факт, что тот кто больше учится, зарабатывает больше. Даже несмотря на то, что у бросившего универ будет больше лет опыта, через лет 5 они сравниваются. То есть 5 лет учебы + 5 лет работы начинают обгонять 10 лет работы.
С другой стороны, невозможно проверить: этот эффект именно от обучения или работают другие факторы. Те, кто дольше учатся, происходят в целом из более обеспеченных семей. Или обладают большей склонностью к науке и способностями. Эти же факторы, очевидно, влияют и на карьеру. И поди пойми, человек сделал карьеру потому что стал умнее или потому что его папа, который может потянуть 5 лет обучения, может и в карьере подтолкнуть.
Есть еще такое хорошее объяснение как сигнальная теория. Если у человека на руках диплом хорошего ВУЗа, то это сигнал что он не тупой, и поэтому его стоит взять на работу. В стопке джунов без достижений у этого джуна достижение как раз-таки есть.
Сигнальная теория это когда сама академия говорит: эй, мы знаем, что все чему мы учим - для работы малополезная ерунда. Но зато, зарыв много лет и денег в формальное образование, ты будешь иметь на руках бумажку, что вот, ты в состоянии осиливать довольно сложные материи довольно быстро.
Подпись, печать, бланк с Госзнака.
❤13👍3😢2
School ties
Красивая английская идиома, которая обозначает полезные связи, полученные в школьном возрасте. На выпускной в крутых британских школах дарят галстуки с символикой школы. А слово ties это одновременно и «галстуки» и «связи»
Мне мои дипломы позволили легко перескочить один из самых сложных этапов - первые джунские позиции.
Моей первой работой была очень маленькая и бедная компания, в которой лидами тянули девушки из МГУ. Думаю, не в последнюю очередь повлияло то, что в массе откликов я как раз «сигналил». Был понятен и одной крови.
На втором месте просто первый был вопрос: «Лицо у тебя знакомое, ты с физтеха чтоли?» А физтех, он маленький, все мы ходим по одним коридорам, поэтому даже если кого-то и не знаешь лично, то в лицо вы друг другу примелькаетесь. Потом я написал за 20 секунд запрос к ораклу с двумя джойнами и оконной функцией - ох как меня дрючили девушки из МГУ! - и понял по лицам что я впереди примерно 95% кандидатов. Все, дальше я работу искал и находил уже на лида и далее.
Такие вот school ties в действии.
Учитесь, ребята. Если можете себе позволить - учитесь. Размен потенциальных полезных связей и сигналов на сиюминутные и небольшие деньги - очень невыгодная сделка.
Красивая английская идиома, которая обозначает полезные связи, полученные в школьном возрасте. На выпускной в крутых британских школах дарят галстуки с символикой школы. А слово ties это одновременно и «галстуки» и «связи»
Мне мои дипломы позволили легко перескочить один из самых сложных этапов - первые джунские позиции.
Моей первой работой была очень маленькая и бедная компания, в которой лидами тянули девушки из МГУ. Думаю, не в последнюю очередь повлияло то, что в массе откликов я как раз «сигналил». Был понятен и одной крови.
На втором месте просто первый был вопрос: «Лицо у тебя знакомое, ты с физтеха чтоли?» А физтех, он маленький, все мы ходим по одним коридорам, поэтому даже если кого-то и не знаешь лично, то в лицо вы друг другу примелькаетесь. Потом я написал за 20 секунд запрос к ораклу с двумя джойнами и оконной функцией - ох как меня дрючили девушки из МГУ! - и понял по лицам что я впереди примерно 95% кандидатов. Все, дальше я работу искал и находил уже на лида и далее.
Такие вот school ties в действии.
Учитесь, ребята. Если можете себе позволить - учитесь. Размен потенциальных полезных связей и сигналов на сиюминутные и небольшие деньги - очень невыгодная сделка.
❤9🤡5🤔4💯4
Архитектор Данных
Задачка для съевших собаку на Гринпламе. Реши если силен! В кластере гринплама 1 мастер, 1 стендбай-мастер и 24 сегмент-сервера. Я выключаю случайные 2 сервера. С какой вероятностью кластер упадет в отказ в обслуживании? Со звездочкой - выдергиваю 5 случайных…
Правильный ответ - задать встречный вопрос. Здесь ничего не сказано о режиме зеркалирования. Если grouped mirrors, ответ один. Если spread mirrors, то еще важно, сколько праймари сегментов на сегмент-сервер.
Дальше считаем по формуле Байеса, аккуратно складывая случаи выхода мастеров и сегментов.
Вопрос с подвохом - на понимание архитектуры ГП. Берите на собес на позиции, где она, архитектура, важна.
Дальше считаем по формуле Байеса, аккуратно складывая случаи выхода мастеров и сегментов.
Вопрос с подвохом - на понимание архитектуры ГП. Берите на собес на позиции, где она, архитектура, важна.
❤7✍1👨💻1
Задачи разного уровня
Джун: Неси [куриные] яйца из холодильника к плите и постарайся не разбить, как в прошлый раз!
Миддл: Бери скоровороду, наливай масло, ставь на огонь, кидай туда яйца, жарь до готовности!
Сениор: Приготовь яичницу!
Тимлид: Приготовь вкусный и полезный ужин!
Архитектор: Спланируй кухню: где что лежит, сколько надо обрудования, какой персонал, какие требования по помещению, электричеству и т.д.
СТО: Организуй надежную массовую готовку и поставку еды.
СЕО: Открой сеть ресторанов и выведи их в прибыль.
Джун: Неси [куриные] яйца из холодильника к плите и постарайся не разбить, как в прошлый раз!
Миддл: Бери скоровороду, наливай масло, ставь на огонь, кидай туда яйца, жарь до готовности!
Сениор: Приготовь яичницу!
Тимлид: Приготовь вкусный и полезный ужин!
Архитектор: Спланируй кухню: где что лежит, сколько надо обрудования, какой персонал, какие требования по помещению, электричеству и т.д.
СТО: Организуй надежную массовую готовку и поставку еды.
СЕО: Открой сеть ресторанов и выведи их в прибыль.
1👍20🔥8❤6🥴4
Архитектор Данных
Задачи разного уровня Джун: Неси [куриные] яйца из холодильника к плите и постарайся не разбить, как в прошлый раз! Миддл: Бери скоровороду, наливай масло, ставь на огонь, кидай туда яйца, жарь до готовности! Сениор: Приготовь яичницу! Тимлид: Приготовь…
CDO: Выступи с докладом, что все наши [куриные] яйца проверены ИИ.
1😁29💯5🎉2❤1
PgPro Day 2026
Много интересных технологий, ребята решили всерьез заняться аналитикой. Собрали аж несколько весьма представительных команд.
Уверен, мы будем слышать от них много интересных и прорывных в хорошем смысле идей в ближайшие годы.
Много интересных технологий, ребята решили всерьез заняться аналитикой. Собрали аж несколько весьма представительных команд.
Уверен, мы будем слышать от них много интересных и прорывных в хорошем смысле идей в ближайшие годы.
❤9 7🔥3
Forwarded from System Design & Highload (Alexey Rybak)
Что не так с постом от OpenAI про PostgreSQL на 800 млн пользователей
Недавно вышла статья про 800 миллионов юзеров ChatGPT на одном постгресе. Помимо очевидного пиара размера ChatGPT и достоинств Azure очевиден мессадж “А слыхали, постгрес крут — миллиард юзеров держит”. И действительно, в статье есть интересное, но в целом это не только ода PostgreSQL 😉 Ниже — саммари и комментарии в критическом, провокацонном ключе! Nuff said, погнали.
🤩 1 один primary + ~50 read-replicas по миру. OpenAI держит один мастер (Azure PostgreSQL Flexible Server) и почти 50 реплик чтения в разных регионах, при этом заявляет миллионы QPS на read-heavy нагрузке от 800 млн пользователей.
🤩 Главный враг — каскады аварий. Сценарий: сбой выше → промах кэша → лавина чтения; или всплеск дорогих join’ов → умираем по CPU; или write-storm от релиза/маркетинга → деградация. Дальше таймауты и ретраи раскручивают “петлю смерти”. Тут мы понимаем, что львиная доля запросов оседает в кеше, что если б кеша не было - постгресу приходит кабзда, и собственно можно расходиться со всем заявлением о могуществе PostgreSQL.
🤩 Postgres “упирается” в MVCC на записи — write-heavy уводят в шардированные системы. MVCC причиной write amplification / bloat / сложностей autovacuum и постепенно мигрируют шардируемые write-heavy нагрузки в Azure Cosmos DB, а в текущий Postgres даже не разрешают добавлять новые таблицы (новые ворклоады по умолчанию — в шардированные хранилища). Тут мы понимаем, что где-то ещё есть какой-то шардированный сторадж, это космос, и грустнеем ещё больше.
🤩 Главный анти-паттерн: джойнус гигантус вульгарис, особенно из ORM. Приводят пример запроса с join 12 таблиц, пики которого приводили к серьёзным инцидентам. Рецепт: ломать сложные join’ы, часть логики переносить в приложение, ревьюить SQL. Тюнить аймауты вроде idle_in_transaction_session_timeout, чтобы “idle in transaction” не блокировали vacuum.
🤩 Интересные моменты “уличной магии”
🤩 PgBouncer для защиты от connection storms и лимитов (в Azure упоминают 5000 коннектов на инстанс). В их бенчмарках коннект-латентность упала примерно с 50 ms до 5 ms.
🤩 Workload isolation: разделяют high-priority и low-priority трафик на разные инстансы (борьба с noisy neighbor).
🤩 Caching + locking/leasing: при промахах по одному ключу в БД ходит только один “победитель”, остальные ждут — защита от cache-miss storm.
🤩 Rate limiting на нескольких слоях (приложение/пулер/прокси/запросы) + возможность блокировать конкретные “query digests”, чтобы быстро гасить дорогие паттерны.
Отличные советы, но почему баунсер, он же херово скейлится по ядрам? Впрочем, можно по-дедовски много инстансов наподнимать - да всё нагрузку-то оказывается уже унесли.
🤩 Много реплик: привет, Релей. Primary стримит WAL на каждую реплику; с ростом их числа растёт нагрузка на сеть/CPU и риск лагов. Поэтому они вместе с Azure делают каскад (промежуточные реплики, или релеи, ретранслируют WAL дальше), чтобы масштабироваться до “сотни+” реплик без убийства primary, но отмечают усложнение failover. Тут я подумал, что я будто машине времени лет на 20 назад переместился.
🤩 Минное поле альтеров. Даже маленький ALTER может вызвать полный table rewrite. Разрешают только лёгкие операции, вводят таймаут 5 секунд на schema changes, индексы — только CONCURRENTLY, а backfill’ы — под строгими лимитами.
Ну! Надавали по рукам программистам со своими ORM, увели writes в волшебный космос, наставили релеев, чтобы репликация не убивала систему, немного уличной магии — и можно и порадоваться: p99 на клиенте “низкие десятки миллисекунд”, five-nines availability и всего один SEV-0 за 12 месяцев (вирусный запуск ImageGen, пришло +100 млн пользователей за неделю).
Так-то! Статья супер, но много вопросов к постгресу при чтении “между строк” 🙂
🔥всё правильно пишешь
👍и всё равно постгрес - вещь!
—
обучение devhands
Недавно вышла статья про 800 миллионов юзеров ChatGPT на одном постгресе. Помимо очевидного пиара размера ChatGPT и достоинств Azure очевиден мессадж “А слыхали, постгрес крут — миллиард юзеров держит”. И действительно, в статье есть интересное, но в целом это не только ода PostgreSQL 😉 Ниже — саммари и комментарии в критическом, провокацонном ключе! Nuff said, погнали.
Отличные советы, но почему баунсер, он же херово скейлится по ядрам? Впрочем, можно по-дедовски много инстансов наподнимать - да всё нагрузку-то оказывается уже унесли.
Ну! Надавали по рукам программистам со своими ORM, увели writes в волшебный космос, наставили релеев, чтобы репликация не убивала систему, немного уличной магии — и можно и порадоваться: p99 на клиенте “низкие десятки миллисекунд”, five-nines availability и всего один SEV-0 за 12 месяцев (вирусный запуск ImageGen, пришло +100 млн пользователей за неделю).
Так-то! Статья супер, но много вопросов к постгресу при чтении “между строк” 🙂
🔥всё правильно пишешь
👍и всё равно постгрес - вещь!
—
обучение devhands
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥4 4❤3