Задать вопрос

Как спроектировать бд для высоконагруженного проекта?

Есть проект где есть товары и категории, у одной вакансии могут быть несколько категорий
сделан вот как
1) таблица category (id, name, parent_id,...) - 2 уровня главные категории и подкатегории
2) таблица product (id, name, company_id,...)
3) таблица product_to_category (product_id, category_id) category_id - это подкатегории

но при выборке товаров главной категории приходится писать запрос select * from product_to_category where category_id in (все подкатегории главной категории) group by product_id - что то долго выполняется (group чтобы отсечь дубли)

можно ли как то по другому создать таблицы, или запрос переписать?

записей 20-50млн
  • Вопрос задан
  • 272 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
  • ProductStar
    Профессия: Java-разработчик
    9 месяцев
    Далее
  • GB (GeekBrains)
    Профессия Python-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы