TOP
>
サーバ構築・運用
> カラムパーティション(カラムワイズアクセス)
Sybase IQで学ぶデータウェアハウス
第2回:縦切りで不要カラムの呼び出しを解決!
著者:
サイベース
2007/7/10
前のページ
1
2
カラムパーティション(カラムワイズアクセス)
カラムパーティションという実装は、「データウェアハウスの特性と汎用RDBMSとのミスマッチ」で述べた「不要カラムの読み出しの問題」を解決します。
図2:カラム単位の縦割り
データはロードする際、カラム単位に「縦切り」され、入出力がカラム単位で行えるようになります。カラム同士の横のつながり、すなわちローの管理は個々のカラムが保有するIDで論理的に管理されます。多項目大量データを扱うデータウェアハウスにおいて、カラムパーティションを行うことにより、以下のようなメリットが得られます。
不要カラムの読み込みを抑制することによるディスクI/Oの減少
圧縮時の効率向上
処理スピード(パッチ処理時間、レスポンスタイム)の向上
表1:カラムパーティションのメリット
具体的な例をあげて、汎用RDBMSとの違うを説明します。今回は以下のような条件を想定してみます。
テーブルは、1ローあたり800バイト、1億ローから成る
性別、州、保険の加入状況のカラムが含まれている
「カリフォルニアで保険に加入していない男性」という条件で検索する
表2:想定した条件
一般的なRDBMSの場合、ロー単位アクセスですから、800バイトのローを1000万件すべて、つまり80億バイト読み込む必要があります。仮にページサイズを16KBに設定していたとすると、ディスクのI/O回数は50万回となります。
図3:汎用RDBMSのディスクアクセス量
(画像をクリックすると別ウィンドウに拡大図を表示します)
一方Sybase IQでは、性別、加入状況をそれぞれ1バイト、州を2バイトと仮定すると、カラム単位アクセスですから読み込み量は1000万バイト+1000万バイト+2000万バイトで、合計4000万バイト、同じく16KBのページサイズとすると、I/O回数はわずか2500回となります。
図4:Sybase IQのディスクアクセス量
実際には、Sybase IQ側ではページが圧縮されるうえ、実際のページサイズは最低64KBと非常に大きいためI/O量はさらに減少し、汎用RDBMSとの差はもっと大きくなります。また、構造的にカラム単位でしかアクセスしないため、時間がかかる全テーブルスキャンに陥る可能性がありません。
次回は
次回は今回説明できなかった「インデックス化(ビットワイズインデックス)」と「データ圧縮」について解説していきます。
前のページ
1
2
技術ホワイトペーパ「情報分析用高速クエリエンジンSybase IQ」
本連載はサイベースが提供している技術ホワイトペーパ「情報分析用高速クエリエンジンSybase IQ」の転載となります。Sybase IQのより詳細な内容については以下のページを参照してください。
http://www.sybase.jp/products/informationmanagement/sybaseIQ_moreInfo.html
著者プロフィール
サイベース株式会社
1984年、カリフォルニア州バークレーで設立。情報の管理能力と、卓越したレベルでデータの信頼性とセキュリティを提供し、データセンターからアクションポイントまで、情報の管理と可動化のみに焦点を合わせた最大のグローバルエンタープライズソフトウェア企業として活動。サイベース株式会社は、米国 サイベース社 の日本法人として1991年に設立。
INDEX
第2回:縦切りで不要カラムの呼び出しを解決!
データ構造の違いをSybase IQで学ぶ
カラムパーティション(カラムワイズアクセス)