0

ロード用に SSIS を使用し、OLAP キューブ用に SSAS を使用して、SQL Server 2008 でデータ マートを作成しています。これまでのところ、すべてがうまく機能しています。ただし、主キーのデフォルトのクラスタリング以外に、ソース データベースにインデックスを作成していません。

アプリケーション データベースのインデックスの設計にはかなり慣れていますが、このデータベースはキューブのソースとなることが主に意図されているため、どのような種類のインデックスを作成するのが有益かはわかりません。

ディメンションとキューブの処理を改善するために行うべき索引付けの種類はありますか? 通常の Molap ストレージを使用しています。

4

1 に答える 1

1

一般に、ベストプラクティスは、レポートに直接使用されない限り、インデックスと制約をマートから遠ざけることです。インデックスと制約により、ETL時間が大幅に短縮される可能性があります(特に、通常はウェアハウスに送られるデータの量に関して)。

私が最もうまくいくと思ったのは、すべてのテーブルに単一の孤立したPKを設定することです(実際、私は複合キーを持っているので、必要に応じて複合をハッシュして自分自身にPKを取得します)。PK(ID列)を使用すると、自動生成されたインデックス、キューブの構築時の迅速な結合、および非常に迅速な挿入が可能になります。

レポートを作成する場合は、必要に応じてインデックスを作成しますが、ETLプロセスの一部として、インデックスを無効にしてから再構築してください。それ以外の場合、一括挿入には時間がかかります(場合によっては、コミットするのに何時間もかかります)。

于 2009-06-12T19:04:15.680 に答える