У меня есть набор из примерно 1 миллиона строк (приблизительный размер строки: 1,5 КБ), который необходимо «кэшировать», чтобы его могли использовать многие различные части нашего приложения.
Эти строки представляют собой производное / денормализованное «представление» скомпилированных данных из других таблиц. Генерирование этих данных не очень дорого (30-60 секунд), но слишком медленное, чтобы генерировать их «на лету» как часть представления или табличной функции, которую приложение может запросить напрямую. Я хочу обновлять эти данные периодически, возможно, каждые несколько минут.
Моя первая мысль - создать запланированное задание, которое будет обновлять глобальную временную таблицу с этими данными каждые n минут.
Какая лучшая стратегия с точки зрения производительности? Я не уверен в влиянии на производительность хранения его в реальной таблице по сравнению с глобальной временной таблицей (## tablename) по сравнению с другими стратегиями, о которых я не задумывался. Я не хочу портить журналы транзакций с помощью вставок в эту таблицу ... это все производные данные, которые не нужно сохранять.
Я использую Microsoft SQL Server 2000. Обновление во время этого проекта не вариант, но если в 2005/2008/2010 есть функциональность, которая облегчила бы это, я был бы рад услышать об этом. 1011 *