Здравствуйте, Fox007, Вы писали:
F>Стандартная задача для бухгалтерских систем: F>имеется таблица содержащая бухгалтерские проводки. Нужно как можно быстрее считать остаток на определенную дату. Дополнительное условие: любые проводки могут отредактированы с течением времени.
F>В данный момент это реализовано на MySQL 4 простой выборкой по всей таблице (суммирование значения поля). В таблице пока немного записей, однако уже сейчас появляются проблемы с большой длительностью запроса. В дальнейшем таблица ещё увеличится раз в 10.
пользуетесь ли группировкой?
насколько оптимально составлен запрос (все ли индексы, чего говорит explain)?
F>Какие способы решения задачи существуют применительно к различным СУБД? У меня пока только один вариант — сделать доп. таблицу с остатками на определ. даты (на неделю или месяц) и задать триггеры F>на редактирование таблицы проводок, чтобы они изменяли соответствующие остатки в доп. таблице. Нет ли более простых способов?
1. триггеры только только появились в новой альфа версии mysql-5.0 и очень сырые
2. наверно как то еще view можно приспособить (та же самая альфа)