0

我的一个应用程序具有以下用例:

  • 用户输入一些关于订单的过滤器和条件(交货日期范围,...)来分析
  • 应用程序计算大量数据并将其保存在多个支持表中(每次分析可能有数千条记录)
  • 应用程序启动使用这些表中的数据的报表引擎
  • 退出时,应用程序从支持表中删除计算记录

实际上,我正在分析如何提高查询性能,添加索引/统计信息以支持表,SQL Profiler 建议我创建 3-4 个索引和 20-25 个统计信息。

支持表中的记录是成本高昂的创建和删除:创建所有这些索引/统计信息是正确的,还是存在所有这些数据很容易过时的风险(唯一的结果是维护索引/统计信息的成本高昂)?

数据库服务器:SQL Server 2005+ 应用语言:C# .NET

提前感谢您的任何提示/建议!

4

1 回答 1

0

对于数据多维数据集来说,首先似乎是一个很好的情况。其次,是的,一旦填充了支持表,您应该在运行查询之前更新统计信息。插入数据时应该禁用索引。然后重建命令将一次性更新您的索引和统计信息。如今的 Profiler 通常非常擅长这些建议,但要测试这些组合,看看哪些组合能带来最好的性能提升。在这里看 os cubes有哪些开源工具和技术来构建完整的数据仓库平台?

于 2013-06-27T15:46:17.297 回答