Нужно ставить задачу при изменении данных в БД, отображаемых во вьюхе.
1. Добавляем задачу на обновление вьюхи в очередь скрипта (база/файл).
2. После добавления - сразу дёргаем триггер, что добавилась новая задача, чтобы заставить скрипт работать до полного разбора очереди.
3. Если данные подобные/однотипные, то можно любое кол-во задач в очереди считать за одну (merge) и после исполнения - очищать все задачи, до времени вызова текущего триггера (т.к. за время работы скрипта могут появиться ещё задачи в очереди!).
После того, как очередь опустела - скрипт завершает работу. Он будет запущен вновь по следующему событию триггера (п.2).