170 похожих чатов

Ребят, приветствую. Не совсем по теме. Но может кто подскажет. Имею,

скажем.
Таблицу заказов.
И эти заказы имеют статусы: оплачен, в ожидании и т.д
Мне необходимо подводить статистику по каждому из этих статусов ежедневно.
Статусы динамичные. То есть, пользователь может их добавлять.
Как мне реализовать хранение и запись подобной статистики в базу?

Думал реализовать так:
Таблица.
В ней id, дата, ид статуса, в который заказ пере.
Скажем. Заказ перешел в статус "Оплачен", В таблице добавилась запись: 1,25.04.2020, 24
После, еще один заказ перешел: 2, 25.04.2020,24
В итоге. Я смогу вывести так статистику по каждому статусу без проблем.

НО, МНЕ КАЖЕТСЯ ЭТО НЕ ВЕРНЫМ
Т.к будет создавать нереальная нагрузка на базу.
Скажем, у пользователя на аккаунте около 15 проектов, в каждом из которым по 25к заказов, и по 5 статусов.
Не будет ли это слишком нерациональным использованием ресурсов? Может быть реально создать иной алгоритм? Я уже других вариантов не вижу.

1 ответов

4 просмотра

если тебе нужна статистика по статусам, то хранить весь лог статусов ни к чему, а если статистику по всем изменениям и прочему - то это не такая уж нереальная нагрузка

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

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
А табстоп это сообщение от окна или от элемента управления?
The Bird of Hermes
18
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Открыл свой двухкилобайтный экзешник в x32dbg, а тут какая-то хрень. Смущает кнопка "выполнить до пользовательского кода", а что ещё может быть в файле помимо него ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
11
Мне были интересны дишные хаки и я нашёл любопытный способ на форуме через __traits, что-то вроде int delegate(int) fac = (int n) => n == 0 ? 1 : n * __traits(parent, {})(n - ...
Constantin F.
1
Вопрос тем кто смотрит видео и слушает подкасты - как вы потом ищете нужную вам информацию? Вот статью я прочитал, потом могу искать нужную мне часть банальным поиском. Пропус...
Aleksandr Druzhinin
4
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
Коллеги, доброе утро. Запустил на удаленном хосте приложение (ручками зашел туда по ssh и запустил, не командой удаленно). Создал потом ssh-туннель, и с моей машины приложение...
Δημήτηρ
9
Карта сайта