Я начал работать над новым интернет-магазином Magento, в котором около 250 000 различных товаров. Каждый товар может иметь разное состояние (новый, б/у, поврежденный и т. д., у каждого своя цена.). У Magento, похоже, нет способа реализовать это на данный момент. Из этих 250 000 товаров около 150 000 различных условий в наличии и еще 150 000 условий, которых нет в наличии, но есть цена (которую можно внести в список желаний).
Некоторые цифры: 1500 категорий, выпадающие атрибуты (страна) с > 300 вариантами, целочисленные атрибуты (год). Начиная с двух веб-сайтов по 6 языков каждый.
Я придумал два решения для решения этой проблемы:
Сгруппированная / простая структура продукта
Мы создаем сгруппированный продукт, который является контейнерным продуктом, каждое условие будет другим простым продуктом. Мы свяжем эти продукты со сгруппированным продуктом.
Преимущество этого решения в том, что его довольно легко реализовать, нам нужно правильно импортировать данные, и вся информация будет представлена именно так, как мы хотим.
Новый тип продукта
Мы создаем новый тип продукта, который может иметь несколько условий, каждое из которых имеет собственный инвентарь. При оформлении инвентарь вычитается. Проблема в том, что реализация модели CatalogInventory таким образом, вероятно, сложна, а создание целого типа продукта требует много времени и в целом подвержено ошибкам.
Преимущество такого решения в том, что продуктов в системе будет примерно в 2-2,5 раза меньше.
Другие
Есть ли другие варианты решения этого? Может быть есть модуль, который все это делает?
В заключение: конечно, я предпочитаю первое решение, но справится ли с ним Magento? У кого-нибудь есть опыт работы с таким большим количеством сгруппированных продуктов? В системе будет около 550 000 продуктов (сгруппированных + простых). Как это повлияет на производительность? Что произойдет, когда сайт вырастет и у нас будет в два раза больше товаров?