Вопрос по MySQL и кол-ву хранения данных

Тема в разделе "OpenCart", создана пользователем alex_storm, 27 июн 2015.

  1. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Всем привет!

    Вопрос такого плана, как лучше реализовать хранилище данных на Opencart имея в наличии 13-14т товаров и у каждого примерно по 300-400 отзывов с ежедневным апдейдом в 5-10шт.

    Если хранить все в одной таблице oc_rewies то в итоге получается +3 900 000 записей и ежедневно будет прибавляться. Не много ли это?

    Или лучше сделать микротаблицы типа oc_rewies_productId_124124 (название для примера) и в ней хранить 300 отывов, а при удалении товара удалять и саму таблицу

    Просто будет храниться 13 т таблиц в пределах одной БД.
    Как лучше в данном случаи? Или я еще думал вынести все из БД и хранить в файлах по типу папка категории, папка товара и файлики с отзывами отдельно каждый лежит. Но здесь SSD может загнуться.
     
  2. $iD

    $iD Команда форума

    Регистрация:
    13 мар 2012
    Сообщения:
    3.580
    Симпатии:
    1.482
    сделать одну таблицу, oc_rewies, связать по форейн кею с продуктами (т.е. добавить product_id в эту таблицу), если будет поиск/выборка по ревью, то повесить индексы на те поля, по которым делается селект.
    при удалении продукта, удалять все связанные записи (ON DELETE CASCAD) это будет правильно, логично и быстрее чем на каждый продукт свою таблицу.
     
    alex_storm нравится это.
  3. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Если убрать вывод рейтинга (в том числе и почистить запросы в моделях) с групповых страниц, количество записей в таблице отзывов не будет проблемой. На странице товара они грузятся отдельными запросами (отдельно от данных самого товара), так что там можно сделать простую выборку без джоинов из одной таблицы (но нужно почистить модель review, там зачем-то джоинятся таблицы товаров и описания).
     
    alex_storm нравится это.
  4. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Т.е. по факту проблем с больших кол-вом хранящихся записей у MySQL нет?
    Ок) Тогда фигачу по людски)
     
  5. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Ну я же рассказывал тебе пример с двумя таблицами на 250 тысяч и 10 тысяч записей. С навешенными индексами им даже джоин не страшен. Если обходиться без джоинов (а с отзывами это возможно), то и несколько миллионов записей не станут проблемой.