Нашей команде необходимо отслеживать запасы, по сути, для собственной ERP-системы. Нам потребуется часто получать доступ к количеству запасов в системе для данного товара на заданном складе и иметь возможность отслеживать, что и когда изменило запасы.
Первоначальная мысль заключалась в том, чтобы просто иметь таблицу корректировок и вычислять текущие запасы каждый раз, когда мы ее просматриваем. В ходе нашего тестирования стало ясно, что выполнение этого расчета было слишком дорогостоящим, учитывая, сколько раз мы будем делать это каждый день.
Наша новая идея состоит в том, чтобы иметь таблицу корректировок с историей, а также вести таблицу с текущими запасами. При внесении корректировок наша программа одновременно обновляет как таблицу корректировок, так и таблицы текущих запасов. Мне не очень нравится это решение, так как для внесения одного изменения требуется 2 обновления. Что, если один потерпит неудачу? Как вы согласовываете, когда корректировки не отражают то, что находится в таблице запасов?
У кого-нибудь есть лучший подход?