|
|||||||||||||||||||||||
|
前のページ 1 2 |
|||||||||||||||||||||||
| カラムパーティション(カラムワイズアクセス) | |||||||||||||||||||||||
|
カラムパーティションという実装は、「データウェアハウスの特性と汎用RDBMSとのミスマッチ」で述べた「不要カラムの読み出しの問題」を解決します。 ![]() 図2:カラム単位の縦割り データはロードする際、カラム単位に「縦切り」され、入出力がカラム単位で行えるようになります。カラム同士の横のつながり、すなわちローの管理は個々のカラムが保有するIDで論理的に管理されます。多項目大量データを扱うデータウェアハウスにおいて、カラムパーティションを行うことにより、以下のようなメリットが得られます。
表1:カラムパーティションのメリット 具体的な例をあげて、汎用RDBMSとの違うを説明します。今回は以下のような条件を想定してみます。
表2:想定した条件 一般的なRDBMSの場合、ロー単位アクセスですから、800バイトのローを1000万件すべて、つまり80億バイト読み込む必要があります。仮にページサイズを16KBに設定していたとすると、ディスクのI/O回数は50万回となります。 一方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 |
|||||||||||||||||||||||
|
|||||||||||||||||||||||
|
|
|||||||||||||||||||||||
|
|
|
|
||||||||||||||||||||




