Является ли Magento подходящей платформой для продуктов 1M?


Мне нужно посмотреть, как Magento будет работать с 1 млн артикулов; но я изо всех сил пытаюсь найти большой набор образцов данных для загрузки - или найти приемлемый метод создания канала для импорта (и самого процесса импорта).

  1. Кто-нибудь знает, где я мог бы загрузить большой набор фиктивных данных для импорта (или разумное средство для его создания и импорта)?
  2. Какие проблемы вы предвидите, имея размер каталога товаров 1 м+?
  3. Есть ли способ поделиться одной базой данных продуктов с несколькими независимыми магазинами (разными компаниями)?
Author: philwinkle, 2013-05-11

8 answers

tl;dr -> " Может ли Magento обрабатывать 1 МЛН продуктов", ответ да, но с некоторыми соображениями. При таком масштабе можно было бы предположить, что у вас есть объем для поддержки достойных инвестиций в инфраструктуру и персонал для создания каталога такой пропорции.

Первый:

Примерные данные Magento CE, как вы, возможно, видели, содержат всего несколько продуктов из разных категорий. Данные образца EE содержат больше, и они разделены тип магазина.

Вы можете скачать образцы данных CE здесь. Вам нужно будет загрузить образцы данных EE из вашего MagentoCommerce.com учетная запись, если у вас есть EE.

Однако вы обнаружите, что это не сотни и даже не тысячи продуктов. Я бы посоветовал вам импортировать продукты в базу данных - хорошее упражнение, чтобы понять, как работает этот процесс. Это можно сделать с помощью потока данных Magento или с помощью импорта API - информация о том, как это сделать в масштабе легко доступен в Интернете.

Предостережение - Поток данных, как известно, очень медленный, поэтому для импорта каталога требуемого размера может потребоваться изрядное количество времени. Насколько мне известно, в дикой природе нет каталога образцов с сотнями тысяч или миллионами существующих продуктов.


Редактировать 1/7/14:

@ryaan_anthony в Twitter опубликовал хранимую процедуру MySQL, которая будет генерировать сотни тысяч продуктов https://gist.github.com/ryaan-anthony/6290973


Некоторые сведения об API Magento и потоке данных:

Http://www.magentocommerce.com/knowledge-base/entry/introduction-to-magento-dataflow

Http://www.magentocommerce.com/api/soap/catalog/catalog.html

Второй:

Продукт, переписывание URL-адресов и индексация запасов являются основными проблемами при запуске каталога такого размера. Поиск по каталогу может быть довольно тоже медленно, но может быть смягчено, если вы используете Apache Solr (интеграция, предоставляемая для EE). Есть плагины CE для Solr - У Sonassi есть один, а другие можно найти через Google.

Я управлял каталогами в диапазоне 700 тыс., что все еще намного меньше 1 млн, и индексация может занимать часы за часами. Это было рассмотрено в Предприятие 1.13. Я настоятельно рекомендую внимательно присмотреться к Enterprise Edition в таком масштабе. Возможно ли это с CE? Абсолютно; но улучшения индексации в EE 1.13 специально разработаны для такого рода ситуаций.

Третий:

Мульти-магазин является родным для Magento; вы можете настроить различные категории верхнего уровня и веб-сайты. Не все они должны использовать один и тот же каталог - вы можете выбрать, какими продуктами делиться на разных сайтах, или решить сохранить свой каталог отдельно. Дополнительная информация здесь:

Http://www.magentocommerce.com/knowledge-base/entry/overview-how-multiple-websites-stores-work

Чем больше магазинов, просмотров магазинов у вас в Magento, тем больше записей индекса и тем больше ваш плоский каталог может раздуться до такой степени, что плоский каталог может фактически снизить производительность. Опять же, у Сонасси есть масса информации об этом здесь, на Magento.SE и на их сайте. Вы захотите найти некоторые ответы Сонасси на Magento.SE для обработка/масштабирование Magento, когда вы попадаете в эту область управления продуктами.

Установка каждого пользователя отличается - вам нужно постоянно тестировать, совершенствовать, внедрять настройки, чтобы найти, какие настройки лучше всего подходят для вашего каталога в вашей ситуации.

 36
Author: philwinkle, 2014-01-07 23:34:18

Используйте APIIMPORT для импорта такого большого количества продуктов. Он основан на ImportExport и очень быстр... Я управлял до 500 тыс. (индексированных) простых продуктов в час на виртуальной машине.

Просто беги tests/benchmark_import_api.php . Отредактируйте этот файл, чтобы удалить типы сущностей (и подтипы), которые вам не нужны. Вы также можете установить значение USE_API равным false для более быстрых результатов.

 7
Author: Daniel Sloof, 2013-05-13 15:43:16

Мы использовали http://www.icecat.biz/en / в прошлом для извлечения каналов продуктов для загрузки в образцы данных. Есть также несколько расширений Magento, но они никогда не работали на нас, поэтому мы начали писать большинство наших сценариев импорта.

 4
Author: Vinci Rufus, 2013-05-11 20:11:11

Чтобы получить более миллиона продуктов в magento. напишите простой php-скрипт, который генерирует csv-файл импорта продукта, поддерживаемый magmi, с различными типами продуктов. Затем используйте magmi для их импорта

Http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Magmi_Wiki

 4
Author: sutha kathir, 2013-05-13 07:35:51

На самом деле это не полный ответ, так как, похоже, другие уже ответили на большинство ваших вопросов, просто нужно добавить несколько вещей:

1) У меня это было повсюду: Почти миллион случайных продуктов Magento в десяти CSV Вы также могли бы дать http://beta.generatedata.com / попробуйте.

2) Как уже упоминал Филвинкл: индексирование, поток данных и поиск - это самое большое препятствие, которое необходимо преодолеть с таким большим набором данных. EE1.13 лучше справляется с обработка таких больших данных (триггеры MySQL, учитывая статус всех продуктов/категорий и т. Д.), Но имейте в виду, что в настоящее время это все еще начальный выпуск (x.0.0), я склонен подождать несколько выпусков, чтобы позволить другим взять на себя бремя поиска ошибок, прежде чем рассматривать его для производственной среды. Инфраструктура и оптимизация являются ключевыми факторами. Будущее обновление также следует учитывать, так как ALTER TABLE не объединяются во время обновлений и могут занять часы/дни для выполнения обновления на БД:

Некоторые дополнительные сведения по теме индексирования в большой базе данных:

3) Самый простой способ обмена данными между двумя магазинами Magento - это отправить запрос REST/SOAP другим компаниям Magento API. Альтернативой было бы просто сбросить каталог с одного компании и позволить другому подобрать и проанализировать его, это может быть намного быстрее, чем проходить через API с 1+ миллионом продуктов.

 3
Author: B00MER, 2017-04-13 12:55:05

Мы только что работали над проектом с 1,2 млн (без атрибутов и особенно с одним видом магазина) продуктов с использованием magento 1.7.x, и вот некоторые из наших впечатлений:

  1. На самом деле импорт продуктов довольно хорош, я думаю, что наш первоначальный импорт занял примерно 1,5 часа

  2. При выполнении переиндексации наш дисковый ввод-вывод сильно пострадал бы, решение состояло в том, чтобы получить хороший объем оперативной памяти (32 гб ОЗУ, экземпляр amazon ssd). Оптимизируйте настройки innodb, в которые мы помещаем выделение памяти пула innodb немного превышает размер базы данных, и особенно изменение буфера временной таблицы с 16 Мб по умолчанию на 128 Мб, это действительно то, что спасло наш процесс переиндексации.

  3. Кэш, использование только кэша APC для быстрого кэширования, файлов для медленного кэширования, отключение ненужного ведения журнала и модулей вместе с плоской таблицей и несколькими другими оптимизациями позволяет серверу доставлять html-страницы продукта (не всю страницу) за 200 мс. В нашем списке дел есть лак кэш.

  4. Мы боремся и убиваем множество тупиковых проблем (некоторые из них в admin все еще остаются), возможно, более новая версия Magento не даст этих проблем в соответствии с форумами.

Я скажу, что действительно есть проблемы с 1,2 млн продуктов, это не то, что я бы рекомендовал делать, не имея надлежащей команды и ресурсов, однако, если у вас есть время, вы можете заставить это работать.

Я не знаю, какая другая платформа справилась бы лучше.

 3
Author: palmik, 2014-05-27 19:46:35

Это всегда хорошо, да, Magento CE & EE может (исходя из опыта, а не теории, используя предоставленные наборы данных), хотя, очевидно, EE лучше подходит для индексирования. Magmi в порядке, однако, когда вы перейдете к переиндексации для начальной загрузки, у вас возникнет серьезная проблема. Кроме того, у вас будет техническое обслуживание, при котором, если 3 % продуктов меняются ежедневно, вам необходимо обновить 30 000 продуктов с помощью автоматического индекса, вы не сможете выполнять ежедневную переиндексацию. Все это сводится к двум вещам: кластерному хостингу и delta включила адаптацию поставщиков, которые являются доменами корпоративных компаний.

Люди, похоже, думают, что работа заканчивается, когда продукты загружены, однако именно тогда начинается тяжелая работа. Если у вас слишком много магазинов, ценовые уровни, то ваш хостинг должен удвоиться, поэтому, по сути, у 95 % нет шансов реализовать его, у 99 % нет шансов сохранить его. Миллионы продуктов равны среднему и Крупному предприятию - если ваши консультанты не имеют такого опыта, ожидайте инфраструктура рухнет в среднесрочной и долгосрочной перспективе.

 2
Author: , 2014-01-08 14:05:23

Magmi также отлично подходит для импорта большого количества продуктов. http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Magmi_Wiki

В настоящее время мы работаем над разработкой для клиента, у которого 2,2 миллиона артикулов, первоначальный импорт был выполнен с использованием Magmi.

 0
Author: Jamie Jackson, 2013-07-10 22:01:16