Страница категории не работает Magento 2 с более чем 13 миллионами продуктов - PullRequest
0 голосов
/ 25 апреля 2019

Я застрял в проблеме с Magento 2, более 13 миллионов продуктов. Нам удалось загрузить 13 миллионов продуктов, хотя это происходит медленно и работает как индексация, страница продукта и страница поиска. enter image description here

Моя страница категории внешнего интерфейса теперь не открывается после ожидания почти 2 минут, когда память исчерпана, мы попытались выделить 18 ГБ памяти, но она застряла в этом запросе и из-за исчерпания памяти ошибок.

SELECT  1 AS status, e.entity_id, e.attribute_set_id, e.type_id,
        e.created_at, e.updated_at, e.sku,
        cat_index.position AS cat_index_position,
        stock_status_index.stock_status AS is_salable
    FROM  catalog_product_flat_1 AS e
    INNER JOIN  catalog_category_product_index_store1 AS cat_index
           ON cat_index.product_id=e.entity_id
      AND  cat_index.store_id=1
      AND  cat_index.category_id='4'
    INNER JOIN  cataloginventory_stock_status AS stock_status_index
           ON e.entity_id = stock_status_index.product_id
      AND  stock_status_index.website_id = 0
      AND  stock_status_index.stock_id = 1
    WHERE  (stock_status_index.stock_status = 1)

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

  • Intel Xeon E5-2689v4
  • 128 ГБ ОЗУ
  • 1200 ГБ хранилищ данных

    Я уже включил плоский каталог товаров и категорию плоского каталога.

1 Ответ

0 голосов
/ 30 апреля 2019

Добавьте эти составные индексы:

stock_status_index:  (stock_status, website_id, stock_id, product_id)
e:  (entity_id)  -- unless that is the PRIMARY KEY
cat_index:  (product_id, store_id, category_id)

Если это не поможет, укажите EXPLAIN SELECT ... и SHOW CREATE TABLE.

Дополнительные советы по индексированию: http://mysql.rjweb.org/doc.php/index_cookbook_mysql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...