0

我正在 SQL Server 2008 中创建一个数据集市,使用 SSIS 进行加载,使用 SSAS 进行 OLAP 多维数据集。到目前为止,一切都运行良好。但是,除了主键上的默认集群之外,我没有在源数据库上创建任何索引。

我对在应用程序数据库上设计索引非常满意,但由于该数据库主要用作多维数据集的源,因此我不确定哪种索引(如果有的话)将是有益的。

我应该做任何索引来改进维度和多维数据集的处理吗?我正在使用您的常规 Molap 存储。

4

1 回答 1

1

一般来说,最好的做法是让索引和约束远离集市,除非它们直接用于报告。索引和约束会严重占用您的 ETL 时间(尤其是通常进入仓库的数据量)。

我发现最好的方法是在所有表上都有一个单独的 PK(包括事实上,因为我有复合键,如果必须的话,我只会对复合键进行散列以获得 PK)。拥有 PK(即标识列)可为您提供自动生成的索引、构建多维数据集时的快速连接以及非常快速的插入。

如果您要进行报告,请按照您的意愿构建索引,但请确保在您的 ETL 过程中禁用然后重新构建索引。否则,批量插入需要一些时间来完成(在某些情况下,需要数小时才能提交)。

于 2009-06-12T19:04:15.680 回答