つまづいたLODの振り返り

Akiです。
今回はLODに関する振り返りを書きたいと思います。

Ordeal8に取り組む中で見事にLODの沼にハマってしまい、
今もまだ完璧に抜け出せているか自信はないのですが、
今の自分の理解力を確かめるという意味を込めて書いております。

ちなみに、理解が深まりだした内容から徐々に書いておりますゆえ
若干尻切れトンボなってしまっている部分があるような記事となっておりますことをお許しください。
(その都度書き足してまいります)

そもそもLODとは

LODとは「Lebel Of Detail」の略で、データひとつひとつの粒度=レベル
のことをさします。
Tableauで分析をする上で、まずは取り扱うデータがどれくらい細かい=粒度が高いのかを理解することがとても重要です。

・・・正直に白状すると、このあと出てくるFIXEDなどの計算自体を単純に略して呼んでいるとばかり思っていたので、まずはここが私の中のひとつめの衝撃ポイントでした。


そして、実際にTableauのビュー上で気になるディメンションを行や列に入れて、それに応じてメジャーが集計されて表現されるという仕組みになっています。
このTableau上で可視化された状態のことを「VizLOD」と呼びます。

今作成しているフィールドでどんなディメンションを使ってVizLODを
表現しているのかをしっかりと理解することがとても大切です。
なぜならここから解説するLOD計算においてはVizLODをきちんと
把握しておかないと、思ったとおりの表現をTableau上で正しく出すことが
できないからです。

LOD計算とは

ではLOD計算とはなにかというと、通常Tableauでは操作しているシート上の
ディメンション等に応じて集計されるところに対し、任意のLOD(粒度)で集計させることができる機能のことをいいます。

それが「FIXED」、「INCLUDE」、「EXCLUDE」の3種類です。

それぞれの特徴の違いはひとことでいうと以下のとおりです。

FIXEDはVizに関係なく特定の粒度で集計
INCLUDEはVizよりも細かい粒度で集計
EXCLUDEはVizよりも粗い粒度で集計

それぞれの細かい振り返りは別の記事で書きたいと思います。

ここで私がLOD計算を勉強する中で、「なるほど」ともっとも理解が
進んだ考え方が、
「今とは異なる集計用テーブルを作成し、それを結合させるイメージ」
と捉えるということです。
よく裏側で作るという表現がさまざまな記事ではなされています。

どういうことか今回はFIXED計算を使って解説したいと思います。

例えば都道府県ごとの売上を表現しようとすると以下のようになるかと思います。
この状態のVizLODは「都道府県」ということになります。

次にFIXED計算を使って地域ごとの売上を表現したいとすると、
別に以下のようなテーブルを今のシートとは別にまずは作るイメージと
いうことになります。

その後、もとのシートと結合をさせた結果が以下のとおりです。
比較できるように元のテーブルで表現していた都道府県ごとの売上についても残した状態にしています。
見てわかるように本来であればこのテーブルにおいては「都道府県」が最も粒度が低いことになりますが、FIXED計算の場合はどんなときも
別テーブルで作ったVizLOD(今回であれば「地域」)で表現されるため、
このようになります。

まとめ

もしかすると日常からデータベースを理解している、もしくは構築に
携わるようなお仕事をされている方はあまりあてはまらないのかも
しれないですが、私のような表計算や単純なAccess作業しか経験のない
人にとっては、データの粒度を順序だてて理解することに大変な苦労を感じました。
と同時にTableauを正しく使いこなすためには、LODをまずは理解しておく
重要性も感じ取ることができたので大変有意義でした。


以下は今回私がLODを理解するために何度も読み返しさせていただいた
記事です。

LOD計算を本気で理解する (yarakawa.com)
LOD計算を視覚的に理解する (yarakawa.com)
[Tableau Tips]Tableauの計算順序(クエリパイプライン)の覚え方と、もっと細かい情報|みのる|note

どれも大変参考になりましたこと、厚く御礼申し上げます。

そして引き続き精進してまいりたいと思います。


いいなと思ったら応援しよう!