そろそろ業務で使いそうなため、カラムストアのお勉強...まではいかないものの、少しづつ色々なものをお試してみる
先日、カラムストアのお勉強を始めたのですが、業務で使うようにならないと必要に迫られないこともあり、いまいちやる気がおきません。
ryuchan.hatenablog.com
今日も暑かったので、まずはビール!
ビールサーバーほしいなぁ。けど、これ買っちゃうと休みの日に飲んだくれてしまいそう...
グリーンハウス 家庭でビアホール気分を味わえる スタンド型ビールサーバー 冷たさキープ&冷却できる保冷剤付属 ブラック GH-BEERF-BK
- 出版社/メーカー: グリーンハウス
- 発売日: 2016/04/28
- メディア: ホーム&キッチン
- この商品を含むブログを見る
さて、ビールも飲み終わったのでカラムストアをお試してみます。前回、下記の記事を書きましたが、その中で使用したクエリでカラムストアの実験をしたいと思います。
ryuchan.hatenablog.com
前回の記事で使用したクエリは下記の通りです。
SELECT [TerritoryID_is_1] = SUM(CASE WHEN TerritoryID = 1 THEN 1 ELSE 0 END), [TerritoryID_is_2] = SUM(CASE WHEN TerritoryID = 2 THEN 1 ELSE 0 END), [TerritoryID_is_3] = SUM(CASE WHEN TerritoryID = 3 THEN 1 ELSE 0 END), [TerritoryID_is_4] = SUM(CASE WHEN TerritoryID = 4 THEN 1 ELSE 0 END), [TerritoryID_is_5] = SUM(CASE WHEN TerritoryID = 5 THEN 1 ELSE 0 END), [TerritoryID_is_6] = SUM(CASE WHEN TerritoryID = 6 THEN 1 ELSE 0 END), [TerritoryID_is_7] = SUM(CASE WHEN TerritoryID = 7 THEN 1 ELSE 0 END), [TerritoryID_is_8] = SUM(CASE WHEN TerritoryID = 8 THEN 1 ELSE 0 END), [TerritoryID_is_9] = SUM(CASE WHEN TerritoryID = 9 THEN 1 ELSE 0 END), [TerritoryID_is_10] = SUM(CASE WHEN TerritoryID = 10 THEN 1 ELSE 0 END) FROM Sales.SalesOrderHeader
クエリの内容を見るために、実行プランを取得します。
実行プラン上で右クリックし、実行プランを保存しておきましょう。
Sales.SalesOrderHeader にカラムストアインデックスを下記のように作成してみます。
もう一度下記のクエリを実行してみましょう。実行後に実行プランを保存しておきます。
SELECT [TerritoryID_is_1] = SUM(CASE WHEN TerritoryID = 1 THEN 1 ELSE 0 END), [TerritoryID_is_2] = SUM(CASE WHEN TerritoryID = 2 THEN 1 ELSE 0 END), [TerritoryID_is_3] = SUM(CASE WHEN TerritoryID = 3 THEN 1 ELSE 0 END), [TerritoryID_is_4] = SUM(CASE WHEN TerritoryID = 4 THEN 1 ELSE 0 END), [TerritoryID_is_5] = SUM(CASE WHEN TerritoryID = 5 THEN 1 ELSE 0 END), [TerritoryID_is_6] = SUM(CASE WHEN TerritoryID = 6 THEN 1 ELSE 0 END), [TerritoryID_is_7] = SUM(CASE WHEN TerritoryID = 7 THEN 1 ELSE 0 END), [TerritoryID_is_8] = SUM(CASE WHEN TerritoryID = 8 THEN 1 ELSE 0 END), [TerritoryID_is_9] = SUM(CASE WHEN TerritoryID = 9 THEN 1 ELSE 0 END), [TerritoryID_is_10] = SUM(CASE WHEN TerritoryID = 10 THEN 1 ELSE 0 END) FROM Sales.SalesOrderHeader
下記の機能を使って、二つの実行プランを比較してみましょう。
ryuchan.hatenablog.com
下記のような表示になるかと思います。着目すべきは、IO部分でしょう。カラムストアインデックスの IO コストが、通常のインデックスのコストの 1/160 程度ですね。
高速になるのはわかりましたが、メンテナンス性はどうなんでしょうか?次回は、メンテナンス性・その他について実験してみます。
ビールサーバー選択肢が少ないなぁ。どれがいいんでしょ?
グリーンハウス 超音波でクリーミーな極うま泡 缶ビール用ハンディ ビールサーバー 2016年モデル 350ml/500ml/250ml 缶対応 ブラック(ドライブラック) GH-BEERBT-BK
- 出版社/メーカー: グリーンハウス
- 発売日: 2016/04/18
- メディア: ホーム&キッチン
- この商品を含むブログを見る
グリーンハウス スタンド型ビールサーバー GH-BEERD-SV
- 出版社/メーカー: グリーンハウス
- 発売日: 2015/06/17
- メディア: ホーム&キッチン
- この商品を含むブログを見る