Каков наилучший способ создания отчета о складских запасах, чтобы SQL-запрос или таблица обновлялись триггерами? - PullRequest
0 голосов
/ 05 октября 2019

Теперь я хочу, чтобы в онлайн-балансе отчета о запасах вычислялся результат по сотням тысяч записей из стольких таблицУ меня есть два способа сделать это первый путь :Заставить запрос SQL View вычислить результат по всей транзакции и получить результат JIT Второй способ :составить таблицу баланса запасов и обновить эту таблицу с помощью триггеров, запускаемых в каждой транзакции. Как лучше всего получать балансовые отчеты?

1 Ответ

1 голос
/ 06 октября 2019

Если я правильно понимаю, вы хотите получить информацию о том, как создать отчет о балансе. Этот тип анализа обычно сводится к нескольким факторам: параллелизм, производительность и обслуживание. Мои комментарии:

1. Динамический расчет (множество таблиц, сотни тысяч записей)

Запись : таблица запасов
Считывание : таблица запасов

  • PROS: лучшая параллелизм / пропускная способность (только одна запись)
  • CONS: возможность медленных отчетов (если таблицы растут слишком большими и индексы не поддерживаются)

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

2. Ведение сводной таблицы с помощью триггеров, запускаемых после каждой транзакции

Запись : таблица запасов, сводная таблица
Считывания : сводная таблица

  • PROS: быстрые отчеты (если вы допускаете «грязное» чтение)
  • CONS: медленные записи, вероятность возникновения проблем с блокировкой

Если у вас малотранзакций, и вы хотите высокую производительность, то это стоит посмотреть. Просто имейте в виду, что вам нужно сделать два ОБНОВЛЕНИЯ, чтобы ваши операции записи заняли больше времени. Если вы можете выполнить «грязное» чтение (то есть получить доступ к сводной таблице без блокировки READ), то это должно дать вам очень быстрые отчеты.

Другой вариант просмотра - это индексированные (материализованные) представления,которая похожа на гибридную версию двух вариантов выше: Индексированные представления

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