为了增加报告的响应时间,我创建了一个汇总表,其作用类似于物化视图。我尚未确定刷新数据的频率,因为我仍在决定如何实际交换数据。
基于键更新数据不是当前结构的选项,因为每条记录都是从许多列的不同组合创建的,其中一些可以为空。当涉及空值时,这会导致更新匹配多行。数据库中的数据每天只更新一到两次,因此实际上没有必要非常频繁地更新它。
正如我目前设置的那样,我的存储过程只是截断汇总表中的数据,然后立即重新运行查询以从头开始重新填充它。由于我从数百万条记录中提取,这可能需要一些时间。是否有一种标准做法可以极快地替换大型数据集以最大程度地减少数据的停机时间?比如将新的汇总数据加载到临时表中,然后在查询完成后将其移动到汇总表中,也许?