Figma смогли выграть некоторое время с помощью тактических действий и вертикального партиционирования, но инженеры поняли, что рано или поздно столкнутся с той же проблемой. Единственным способом снять ограничения была реализация бесшовного, удобного горизонтального шардирования. Поэтому они заранее определили требования к реализации и приступили к проектированию.
Во второй части рассказывается о том, как они переделали архитектуру БД и достигли (почти) бесконечного scalability:
➡️ Разделение таблиц на группы (colocations), которые объединены ключом шардирования и физическим размещением данных
➡️ Зачем инженеры Figma написали свой роутер подключений к БД
➡️ Как проверить поведение продакшн трафика до релиза в продакшн
По сути, Figma придумали уникальное инженерное решение, которое решает конкретно их спектр задач. Не рекомендую бездумно повторять
Приятного чтения!
// Понравился пост? Ставь 💛
// Есть классный материал? Пришли ссылку в комментах
#architecture@tech_fit #databases@tech_fit
➖➖➖➖➖➖➖➖➖➖➖
📝 @tech_fit