ほぼポエム。Power BIが難しい理由は基礎の存在を知らないために、それを勉強できないからじゃないかと。知らないことを知ることから始めよう。
Power BIのベスト プラクティスを紹介する記事は多いが、なぜそれが初学者にないがしろにされるのかと、初学者がそれを学ぶことの重要性について考えてみた。(ベスト プラクティスが何かは書いていない)
基礎がないがしろにされる理由
Power BIはセルフサービスBIとも呼ばれるように、特別な知識がなくともBIを構築することが可能。この「特別が知識がなくとも」がある意味厄介で、そもそもBIとは何ぞやを知らなくてもできちゃう。基礎が大事と言われても、BI初心者に中々伝わらないのは、ここに問題があるのではと思ったところ。
ゼロからBIを作る(≒C++の標準ライブラリーだけで作る)のであれば、開発がめちゃくちゃ大変なので、開発の前に自分がやろうとしていることを徹底的に精査する。つまり、以下のようなことを考えるであろう(他にもあるかも🙄)。もしくは、長く使われるうちに、ツールが保守開発を通じて自然と鍛えられる。
- BIに求められるものは何か →ビジネス要件を精査し必要なものだけを構築
- 汎用的な集計方法は何か →評価コンテキストとメジャーの関係を整理
- それら実現する最適なデータ構造は何か →スター スキーマや列指向DB
- 先行事例の調査 →マネできる具体例があればマネるし、抽象化/洗練された方法があれば活用する
で、Power BIは非常に考えられて作られているので(←BIのプロが作っているのだから当たり前!)、当然上記を考慮している。
ゼロから作ったら否応なしにBIについて深く考えなければならないが、完成されたツールを使えば考えなくてもExcelのような使い方でも何かはできる。だから、Power BIの基礎(設計思想やベスト プラクティス) なんてめんどくさいことは置いておかれ or 気づかれることもないまま、目の前のビジネス要件を満たすためだけのレポートを作りがちになるのではと。
これがPower BIの基礎が初学者にないがしろにされる、というか存在に気づかれない理由(あと、学ぼうとしても基礎の情報が断片的でどこから手を付けたらよいのかわからないというのもある気がする)。
ベスト プラクティスを学ぶことの重要性
Power BIの自由度の高さのため、個々のビジュアルのためだけのテーブルを作ることも可能。しかし、これはグラフのために使い捨てのテーブルを都度作成するレガシーExcelな発想。実際、自分も最初のころは個々のビジュアルに合わせてファクトテーブルを10個以上用意したり、ディメンションのリレーションが何層にもなったり(しかも間に中途半端なファクトテーブルを挟んだり)、ファクトテーブル内に前月比やら年度累計やらの列を入れたりと失敗してしまった。(セマンティック モデルとは言い難い😞)
これは、Power BIの設計思想から乖離した使い方をしたため。設計思想を知ろうとしていないのだから当然の結果。BIツールを使っているという頭の切り替えをしていないのだから、Power BIの良さを活かしきれないレポートとなってしまう。最悪の場合、ビジネス上の課題を解決できずに、Power BI使えないねという残念な結論に至ることも。
使っているのはExcelではなくPower BI。Excelライクな使い方は最初のとっかかりとしては悪くないけれど、Power BIの良さを活かすには、Power BIの機能をちゃんと理解して、Power BIの設計思想を踏まえた正しい使い方(=ベスト プラクティス)を学ぶ必要がある。
逆に考えてもよい。EXCELと違ってPower BIはBIしかできない。ゲームを作ったり、入力フォーマットを作ったり、ドキュメントを作成したり、他のオフィスアプリを操作したりということはできない。つまり、Power BIはBIとしてのベスト プラクティスだけを覚えればよいということ。
ベスト プラクティスを学ぶことで、Power BIの設計思想を理解し、Power BIの良さを最大限活かしたレポートを作成することが可能になる。つまり、以下を実現できる:
- さまざまな分析・可視化に対応
- セマンティック モデルを理解しやすい
- メジャーを理解しやすい
- メジャーのパフォーマンスが良い
- それなりの完成度が約束される
最後の「それなりの完成度」とは、レポートの見た目や使い勝手だけではなく、データ モデリングを含むBIとしての完成度のこと。しかも、ほとんどのケースでベストプラクティスが完成形となる(ものすごく複雑なビジネス ロジックを実装したり、ものすごく大量のデータを扱ったりしない限りね)。
自分でゼロからあれこれ考えるのは車輪の再発明になるなので、やめておいた方が良い。プログラミングの経験者であれば、デザイン パターンを再発明するようなものと言えば伝わるだろうか。
Power BIの中級者以上を目指すということは、Power BIの機能を覚えること以上に、その機能を活用して如何にベスト プラクティスを実現するかを覚えることと同義である。
おわりに
いつもどおりの抽象的な話になってしまった。わかりにくくてすみません(特に反省はしていない)。
で、ベスト プラクティスが何かと学びの順序をまとめた記事は↓
ふーっ('ω')