Котятки, На прошлой неделе в моей команде была очень крутая дискуссия - как хранить сущность с динамическим набором атрибутов (в зависимости от какого-нибудь атрибута этой же сущности). Обычно такие кейсы возникают, когда мы берем слишком высокий уровень абстракции (условно, не сущности ‘стол’ и ‘шкаф’, а объединяем в одну сущность- ‘мебель’). Я люблю всякое хранение, основанное на идентифицирующих связях. Он мне напоминает data vault. Кто-то любит EAV. До 24 года я очень любила БД Cassandra для таких кейсов. Отсутствие гибкости компенсировалось скоростью работы в конкретно задачах с динамическими атрибутами. Моя любовь бы и дальше продолжалась, если бы не драматическая ситуация с удвоением данных,- увы, тут эта базеночка явно не пушка, однажды начисто парализовала чтение. Линк на почитать: https://habr.com/ru/companies/tbank/articles/951772/