Мне интересно решение в моем недавнем проекте. На сайте есть категории (модель вложенного множества) и товары. Основная проблема заключается в том, что я должен реализовать много категорий свойств. Эти свойства различны для каждой категории. Конечно, продукты, которые относятся к определенной категории, имеют определенные значения свойств.
Моя проблема заключается в том, как решить хранение этих свойств. Я читал о модели EAV, но основной недостаток этого решения в основном медленный, требует много дополнительных таблиц и не подходит для больших наборов данных. Чем больше я читаю об этом, тем больше я не убежден.
Моя вторая мысль — это XML. Таблица категорий будет иметь столбец xml, в котором хранятся имена свойств, а в таблице товаров также столбец xml, но со значениями свойств.
Теперь вопрос — какое решение будет лучше и гибче? Другая проблема заключается в том, чтобы разрешить пользователю поиск по определенным категориям свойств. Я предполагаю, что в БД будет много продуктов, поэтому производительность запросов очень важна.
Задача ещё не решена.
Других решений пока нет …