はじめに

これまでご紹介しました「10分で試すQlik Senseでデータ分析」などのエントリでは、軸とメジャーを追加してチャートの作成を行ってきました。この様な形で複数の軸(次元)の視点からデータ集計を行って分析する手法を一般的に多次元データ分析と呼びますが、ここでは改めて多次元データ分析の観点からQlik Senseで使われる軸やメジャーといった用語や、多次元データの内部的なデータ保持形式についてご説明させて頂きます。

軸(ディメンション)とメジャー

Qlik Senseでは各種チャートを作成するに当たって、以下の軸(ディメンション)とメジャーを追加します。

  • :データ分析を行う視点や切り口に当たり、この軸単位でグループ化されてデータの集計が行われます。
  • メジャー:数式によって算出される売上や予算などの集計値。

例えば、以下の例では「商品カテゴリ」と「年」を軸として設定し、「Sum([販売価格])」をメジャーとして設定することとで、「商品カテゴリ」と「年」によりグループ化されて売上額(「販売価格」の集計値)が集計されていることが分かるかと思います。この様にして、Qlik Senseでは設定された複数の軸の視点から多次元でのデータ分析を行うことができます。

1

キューブ

では、上記のような複数の軸とメジャーで構成される多次元データはどの様な形式で保持されているのでしょうか?Qlik Senseでは軸とメジャーを定義してチャートを作成すると、以下の様なキューブと呼ばれるデータ構造が内部的に定義されます。(Qlik Senseではこのようなキューブを「ハイパーキューブ(Hypercube)」と呼んでいます。)軸がキューブの次元、メジャーがそれぞれのセルに対応し、複数の軸単位でグループ化してメジャーの値が集計されます。

2

Qlik Senseではアプリに取り込まれたデータモデルからユーザーが自由に軸やメジャーを定義してチャートを作成することが可能で、ユーザーが作成した軸とメジャーの定義に従って内部的にこのハイパーキューブが自動的に生成されます。一般的なBIツールではこのようなキューブはIT担当者がシステム構築の際に設計・開発を行うのが一般的ですが、Qlik Senseではユーザー側が軸とメジャーの定義を行ってより柔軟性が高い多次元分析を行えるのが大きなメリットです。

3

また、集計はインメモリに格納されたデータに対して行われるため、柔軟に切り口を変えて分析を行えるとともに、インメモリでの高速処理も享受することができます。

まとめ

このエントリでは、Qlik Senseで使われる軸とメジャーのご説明と、その裏の仕組みについてご説明させて頂きました。