Denali CTP3 では Columnstore インデックスを使用することが可能となっています。
Columnstore インデックスについては Tech Ed NA 2011 の Columnstore Indexes Unveiled で解説されています。
Columnstore インデックスは PowerPivot で使われている VeritiPaq を使用した圧縮を使用して、ページに一つの列のデータを格納する方式になります。
- 一つのテーブルに一つの Columnstore インデックスしか設定できない
- 非クラスター化インデックスのみ作成可能
- 設定できる型に制限がある (クラスター化インデックスの型も考慮する必要がありそうでした)
- Columnstore インデックスを設定したテーブルは更新できない
というような制限があるため、読み取り専用のテーブルで使用する必要があるのですが情報をざっと見た感じだとかなりうまく利用するとかなり効率よく情報が検索できるようです。
設定をすると検索の条件によっては [Columnstore インデックス~] 系のプランが使用されるようになります。
今回の投稿では、この [Columnstore インデックス] を [DBCC PAGE] を使って覗いてみようと思います。