用SQL Server 2005构建高性能数据仓库
2008-09-09 10:03:31 来源:WEB开发网在实际的表中,各项限制也是同样的道理。在维度表中定义的限制更加合理。像PK/FK定义了集成度一样,ETL进程的工作室保证所有被载入数据仓库的数据都是干净的。
注意那些具有参考作用的集成度能够在数据源视图(data source views:DSV)中定义,它允许分析服务和报表构建器在这些内在的关系和明确表达SQL Server的正确的查询之间起到杠杆的作用。
2. 索引策略
正确的索引对SQL Server的数据仓库极其重要。第一种趋势是创建尽可能多的索引来进行方便的动态查询。对使用的索引策略进行周密的设计是相当重要的,为了更完全的懂得在数据仓库中呈现的数据,SQL Server选择帮助索引的方式,以及查询的实质将会是数据仓库的一个问题。而后一项是很难预测的。
(1) 维度表的索引
维度表的索引是相对简单的。即使这个策略偏离了市场,效率低的索引也不会产生极大的影响,因为维度表通常比较小和相对稳定。一个通常的最佳实践是创建一个集群化的、在每一个维度表的代理键的主键。代理键通常是一个IDENTITY列,这常常便利了插入操作。在一个业务键上的一个非集群的索引应该从查询目的考虑,或者如果代理键查找是通过Transact-SQL语句执行的。当使用SSIS来执行查找时,表或者表的子集合将会载入到SSIS服务器的存储器中,并且在一个业务键上的索引通常是没有用的。注意在业务键的一个非集群的索引将不需要实际数据页查找。
(2) 实际表的索引
因为索引的存在并不意味着SQL Server一定要使用它。SQL Server很少使用的索引的创建常常被作为一个入口或者对进程的管理,而不涉及到磁盘资源。
索引创建的一个考虑因素是尽可能紧凑的保持它们。紧凑的索引需要更少的页,从这方面说它提高了性能,特别当具有巨大的实际表时更加如此。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接