連載
» 2007年01月13日 00時00分 公開

SQL Server 2005で学ぶデータ分析(2):多次元分析の概要とデータ分析のポイント (2/3)

[高橋恭之,日本ユニシス株式会社]

多次元データ分析の概要

 次に多次元データ分析について解説します。前回も記述しましたが、多次元データ分析は複数の次元(ディメンション)を切り替えて、さまざまな角度で分析できるのが特徴です。そのためには「キューブ」という独自のデータベースを構築することが不可欠で、キューブの構成を理解しておく必要があります。本稿では、最初にキューブの構成を解説し、次に分析方法とポイントについて解説します。

キューブの構成

 多次元分析を行うためには、専用のデータベースである「キューブ」を構築する必要があります。キューブは分析の視点となるディメンションと金額や数量などの分析の対象となるメジャー(集計した値)で構成されています。

 製品によっても異なりますが、SQL ServerのAnalysis Servicesではキューブの基となるデータはリレーショナル・データベースで、スタースキーマの構造で管理するのが一般的です(図1)。また、キューブには3種類のデータモデルがあり、MOLAPは分析のパフォーマンスに優れたモデルです(表2)。

図1 キューブの構成 図1 キューブの構成
データモデル 概  要
MOLAP 多次元データベースは独自形式(MDB)。一般的にはリレーショナル・データベースを使用したROLAPよりレスポンスは良いが、SQLのような標準のAPIはなく、ディメンションの数が増加するとデータ容量も増加する
ROLAP 多次元データベースにリレーショナル・データベースを使用する。ディメンションを柔軟に変更できるのが特徴だが、MOLAPに比べパフォーマンスが低いのが問題
HOLAP 多次元データベースにMDB(集計データ)とRDB(明細データ)を使用する。MOLAPとROLAPの両方の特徴を備えている
表2 キューブのデータモデル

 ディメンションには階層構造を定義します。各階層に属するデータは「メンバ」と呼びます。多次元分析はディメンションと階層の定義で分析できる範囲が決定するため、階層の定義は重要です。階層はどのレベルでデータを分析したいかで決定します。例えば、図2の店舗ディメンションで地区ごとに売り上げを把握する必要がないのであれば、地区階層は不要となり、階層としては都道府県−店舗の2階層になります。

図2 ディメンションの階層構造とメンバ 図2 ディメンションの階層構造とメンバ

多次元分析方法

 多次元分析の分析方法は表3と図3に表したとおり、5つの方法があります。図3を見れば分かるとおり、直感的な操作で分析できるのが特徴です。特にダイスについては、複数のディメンションを切り替えてさまざまな視点で分析ができる、多次元分析の特徴を表しています。

 図3のダイスの例では、最初に店別/期間別で売り上げの悪い店舗を分析します(1)。次に視点を変えて、商品別/店別で売り上げの悪い店舗のどの商品が売れていないのかを分析します(2)。最後に(3)の商品別/期間別で、(2)で売れていない商品が、全店舗レベルで分析して売れていることが確認できるので、A店の販売方法に問題があるのではないかと想定できます。

分析方法 概  要
ドリルダウン ディメンションの現在の階層よりも下位の階層のデータを分析する
 例:関東地区から下位の都道府県を検索する
ドリルアップ ディメンションの現在の階層よりも上位の階層のデータを分析する
 例:都道府県から上位の関東地区を検索する
スライス ディメンションの特定の値を選択して、データを絞り込んで分析する
 例:特定の商品を指定して、その商品の月別、店舗別売り上げを見る
ダイス ディメンションを入れ替えて、異なる角度で分析する
 例:店別/期間別 ⇒ 商品別/店別 ⇒ 商品別/期間別
ドリルスルー 集計データの基になる明細データを分析する
 例:11月にA店で売れたX商品の内訳(明細データ)検索
表3 5つの多次元分析方法
図3 多次元分析方法のイメージ 図3 多次元分析方法のイメージ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。