Я только начинаю изучать Ruby, но работаю администратором баз данных (DBA) уже более 30 лет, из которых последние 20 лет — с PostgreSQL.
Структура данных сложная, но я видел (и, вероятно, писал) и похуже.
Можно ли выполнять такие операции, как изменение группы для большого количества пользователей, используя SQL вместо rake? Какие здесь есть подводные камни?
Вы играете с огнём, если пойдёте по этому пути: вы, скорее всего, пропустите записи в самых разных таблицах аудита и явно обойдёте множество проверок в коде.
Да, и я не собираюсь идти по пути SQL. Иногда, сталкиваясь с проблемой, более творческий подход оказывается изящнее первоначального замысла — именно так я и структурирую свои архивы.
Однако я впечатлён структурой данных, которую использует Discourse, и выражаю благодарность команде по проектированию данных.