1

巨大なテーブルに列ストア インデックスを作成する場合、列ストア インデックスを格納するためにディスク上の別の物理ストレージを使用しますか、それともベース テーブルのストレージ構造を行ストレージから列ストアに変更しますか。

ここで私の質問は、任意のテーブルに通常のインデックスを作成すると、列ストア インデックスと同じように、ベース テーブルに影響を与えずに別のストレージを使用して、インデックス付きの列データを B ツリーに格納することです。

4

2 に答える 2

1

インデックス (テーブル自体であるクラスター化インデックスを除く) は別々の場所に格納され、独自のパッキング (ツリーのバランスが崩れすぎずにさらに挿入できるスペース) を持つことができ、別々のドライブに格納することもできます: CREATE INDEX ....ON PRIMARY、SECONDARY など。インデックスを作成してファイルに割り当てる前に、SECONDARY 以降のファイルを作成する必要があります。論理ファイル名にはインデックスが割り当てられます。障害が発生した場合、データを失うことなくインデックスを再構築できるため、これらを RAID ドライブではなく単一のドライブとして使用することで、コストを削減し、速度を向上させることができます。 http://msdn.microsoft.com/en-us/library/ms188783.aspxおよびhttp://msdn.microsoft.com/en-us/library/gg492088.aspx

于 2013-05-10T13:05:51.307 に答える
1

SQL Server 2012 では非クラスター化列ストア インデックスのみがサポートされているため、テーブル自体は再編成されません。

http://msdn.microsoft.com/en-us/library/gg492153.aspx

非クラスター化

テーブルの論理的な順序を指定する列ストア インデックスを作成します。クラスター化された列ストア インデックスはサポートされていません。

于 2013-05-10T13:40:26.567 に答える