Power BI 101 使い始めた時/学び始めた時に知っておくとよいこと - Japan Power Platform Conference 2022 #JPPC2022


Power BI 勉強しているっていうひとに
- どんなことを勉強しましたか？
- どこが難しいと思いましたか？
- わからなかったことはどれですか？

という質問。答えられないのはなぜだろう🤔と思うことがあるね。

# 最近よく感じることなどから
## アプリケーションやサービスは思っているほどあなたに寄り添うことはない
レポートを Power BI Desktop というデスクトップ アプリケーションで作成し、Power BI サービス で共有できます。提示されている規約から外れることがなければ、レポートの作り方や共有する方法まで強要されることはありません。ビジュアルごとにテーブルを用意したり、テーブルひとつだけ、メジャーを記述しないとかの選択は自由といった意味です。こと細かにすべてを準備をしないと操作や入力すら受け付けず動作しないということにはならず、ひとまずは動作させることはできます。
しかしアプリケーションやサービスですから、どのように使うとよいのかという指針や用法があり、パフォーマンスに優れていたり、データを消費するのにとても都合がよいためのものです。できるからといって自由奔放に使ってしまった結果、あれができない、これができないという感じに行き詰まり、問題の解決ができないということが発生します。
Microsoft からは様々なベストプラクティスが提供されています。

https://learn.microsoft.com/ja-jp/power-bi/guidance/

なんども読んで確かめて理解することを強くおススメします。ベストプラクティスは守ったほうがよいですよ。ではなくて、ベストプラクティスは守らなければならない。だと思うのです。だって、トラブルが起きて困るのはあなた自身だけだから。
とはいえ、Power BI を使う人すべてがベストプラクティスを熟知し実践する必要まではないと考えています。Power BI を組織に導入したり、運用や管理すること、レポートを作成し共有すること。さまざまなフェーズやロールが存在するはずです。たとえば、自身が担当する範囲についてはできるだけ高いレベルで理解する必要がありますよね。勉強を始めたばかりなら当初の目標にすることができます。でも、ゴールではなくマイルストーンなのです。担当する範囲の周辺について担当外だからと言って無視することはできないと考えています。少なくとも知っていることが重要です。そして、その知識は近い未来の自分を助けることになるでしょう。

## "○○だけで" = よくない傾向

https://jpbap-sqlbi.github.io/blog/powerbi/pbi_folder_incremental_refresh/

ポストされた背景がわからないまま引き合いに出して申し訳ない。
このポストを読んだとき、"よくないな" と思いました。**Power BI だけ**でなんとかしようとしていることです。いわゆる "技術的に可能" ということだと考えていまして、ここに到達するまでには高いレベルの知識が必要になるから。気軽に手にした手段でも、うまくいっているまではよい。でもトラブルは必ず起きるのです。データおかしくね？と指摘されました。さぁどうします？どこを調べますか？解決手段はありますか？解決するにもそれなりの技術が必要ですよ。

技術も模倣から始まると考えていますが、模倣するにも十分な技術が必要だとも思うのです。

もっともよくないケースは、この方法**だけ**しか知らないということです。

# Power BI サービス / Power BI Desktop とは？
それぞれをクラウド版の Power BI、デスクトップ版の Power BI という表現をされる人をよく見かけます。これはよろしくない理解/解釈だと考えています。一見わかりやすいからと言ってこのような説明をすることはないのだけど、"クラウド版 デスクトップ版 どちらかで充分なんでしょ？"って誤解するのではないか？と思うのです。

https://learn.microsoft.com/ja-jp/power-bi/fundamentals/power-bi-overview

https://www.microsoft.com/en-us/download/details.aspx?id=58494

> Microsoft Power BI Desktop is a companion desktop application to Power BI.

Power BI Desktop は Power BI の一部であり、Power BI サービス で利用する Power BI レポートを作成する多くの場合で利用される オーサリング ツールです。

https://learn.microsoft.com/ja-jp/power-bi/fundamentals/service-service-vs-desktop

なので、どちらかを選択して利用するものではないし、それぞれの役割でそれぞれを補完し使用するものなのです。

**なぜ、このような話から始めたのか**
Power BI の勉強 = Power BI Desktop の使い方 という節を強く感じているから。流通している初級の教育用コンテンツ(書籍や動画コンテンツなど)では、Power BI Desktop について多く取り上げるのは当然です。
- Power BI を使用する時に必要な基本とその知識だから
- Power BI Desktop でモデリング、レポートを作成するための基礎とその知識だから

それでも、データセットやレポート、ダッシュボードを共有する手段は Power BI サービス であることに変わりがありません。多くの人は"Power BI Desktop の使い方"という技術的知識に注目しがちです。でもそれには、レポートがどのように利用され、どのような効果があるのか確認するすべや知識が不足しています。

# さぁ、Power BI の勉強を始めましょう
"Power BI Desktop の使い方"のような勉強をする方が多いから、Power BI サービスの共有について。

"Power BI は組織のデータを可視化するツールです。" と表現されることはありますが、答えは YES です。だけど、それより大きな声で "それは当たり前" です。ビジュアライズ(可視化)機能は BI ソリューションであるからとても当たり前のこと。これを"可視化します"と説明しても、組織の意思決定者に伝わることはわずかだし、ユーザはメリットを見いだせない。Excel でよくね？ってなりますよね。

Power BI は、
- 適切なデータを
- 適切なひとに
- 適切な方法で

提供し続けられる仕組みを持つサービスです。なので、データをビジュアライズ(可視化)するには？という勉強だけでは不十分なのです。データをビジュアライズ(可視化)し、その成果物を共有される仕組みを詳しく理解しておくべきです。

共有する機能だけではないですよ。他にもありますが、共有のフォーカスを当てているということです。

Power BI Desktop だけの勉強だけではだめですよってこと。

## データが共有される仕組みを知っていることが重要
まずは、Power BI ワークスペースでどのようなことを実現しているか。
### Power BI ワークスペース
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/1b41d080-f9c4-870b-fe6e-92c7f128d7b6.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/03788afe-7886-90b4-e8da-d6cfcdf5e34b.png)


https://learn.microsoft.com/ja-jp/power-bi/collaborate-share/service-roles-new-workspaces

それぞれのロールには、Power BI ワークスペースで管理される Power BI アイテム(データセットやレポートなど)についての権限は定義済みです。運用のポイントとしては、必要以上に権限を制限/緩和をしないことです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/dedec52c-a998-7fc9-a7e0-3592eb3db008.png)
Power BI ワークスペースで管理されるもっとも重要なアイテムは Power BI データセットです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/258517c4-47c3-d804-1e3f-357dc909bc65.png)
Power BI データセットは複数配置することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/1829f21e-30c7-226e-b264-689c6d4b55ef.png)
ただし、ワークスペースごと容量やデータセットサイズには最大値が定義されています。
- グループ ストレージの容量 (10 GB / Power BI Pro)
- データセットのサイズ (1 GB / Power BI Pro)
- テナント全体のストレージ容量 (10 GB * Power BI Pro アカウント数)
- Power BI Premium 環境については大幅に緩和

https://jpbap-sqlbi.github.io/blog/powerbi/pbi_storage/

次に重要なアイテムは Power BI レポートです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/6f969e60-fc71-d043-a56c-3c0f5dae75f2.png)
Power BI レポートは 単体で存在することはできません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/67cfe464-f483-7d3f-688d-2cbe3ff6238c.png)
Power BI レポートは Power BI データセットをソース データセットとし、データセットに問い合わせた結果を利用しビジュアルとして投影します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/92fde356-0f7c-77c3-76e1-946f417812fb.png)
Power BI レポートのソース データセットは常にひとつです。ひとつのデータセットを複数のレポートのソース データセットにすることもできます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/dd90c12d-5b61-3447-a425-3ed318fa8626.png)
複数のPower BI データセットをバインドするデータセット(Composite model/複合モデル)も存在しますが、ここでは取り上げません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/2537953f-c3b2-4bf7-56f4-edbcc0bed168.png)
### 運用
Power BI Desktop で作成したレポート(pbix ファイル)は Power BI ワークスペースに発行することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/26a11b64-04b5-489e-6ed8-50809d4e75cb.png)
Power BI Desktop で作成したレポート(pbix ファイル)であっても、Power BI ワークスペースで管理されるデータセットとレポートになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/aadfc101-297b-0484-2691-952d90847f92.png)
Power BI Desktop とのポイントはPower BI Desktop では、データセットとレポートを同時にデザインしているということ。管理される機能との対象としては Power BI ワークスペースの機能とほぼ同じで、データセットとレポートが常に 1対1 になっているということです。また、異なるファイル名でレポートを発行すると、別のデータセット/レポートとしてワークスペースに配置されることになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/338d6bd4-be1e-f2a4-bebe-3b7b729ca6bd.png)
では、Power BI Desktop 作成したレポートをふたたび発行した時どうなるのか、よく確認しておくとよいでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/7ecf6261-52cc-f595-ad8a-f07565aa3d4a.png)
このケースだと、データセットとレポートいずれも上書きとなります。この処理が必要なのであれば構わないけれども。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/6558802b-def5-1ec6-6791-df322ced778e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/8bda5028-558d-a096-3ec3-25e5ca7e5882.png)
該当のレポートだけを更新できれば便利です。Power BI サービスでレポート更新するのが最も簡単です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/74b08032-99ec-f7b4-35cf-8698abdae1ad.png)
ライブ接続を使用するレポート(pbix ファイル)にはデータセット本体が含まれていないので、ワークスペースに配置済みのデータセットを上書きしません。
Power BI Dektop : [Data ハブ] → [Power BI データセット] で該当するデータセットを選択。ライブ接続を使用するレポートを新規作成できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/bf930957-fff5-2bef-4acb-ef46777047fc.png)
Power BI サービスからデータセットにライブ接続するレポート(pbix ファイル)をダウンロードすることもできます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/c0a544c4-22b0-6174-dc51-781b546ee442.png)
ただし、既に存在しているレポートの更新はできません。発行先ワークスペースを変更するか、ファイル名を変更することで発行するレポート名を変更することです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/e50fcd2d-dbaf-d4be-7eba-55bae8e0cffb.png)
既に存在しているレポート更新の手段に限られるわけですが、レポートの更新ができなくても困ることはありません。なぜなら、ワークスペースのユーザはワークスペースにアクセスしレポートを探索できるからです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/cac38c49-97ec-c4a2-06b7-4ce63d0bf824.png)
では、リンク共有/直接アクセスでレポートが共有されている場合はどうしたらよいでしょうか。
共有されていたレポートが存在しなくなった場合、当然リンク切れなどになります。レポートを追加したとき、アクセス権限は存在していませんので、新たに共有設定を行うことになります。これは面倒です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/e69bcb4e-c9a1-f89d-24f6-6d52058c86c0.png)
# Power BI アプリ
面倒なことは機能で補いましょう。そこで Power BI アプリ。 
Power BI アプリで実現できるのは、ワークスペースで管理されているアイテムと共有されるアイテムを分離できること、そして、アプリ ユーザは Power BI アプリを介してアイテムのコレクションにアクセスできることです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/5046b662-5987-289a-f12b-ef70afbd3aa6.png)

https://learn.microsoft.com/ja-jp/power-bi/collaborate-share/service-create-distribute-apps

Power BI アプリ に含めるレポートを選択し、アプリを発行します。複数のレポートを含めることもできます。
アプリに含めるアイテムはレポートだけではありません。ダッシュボードやリンクなども追加できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/161428aa-bb75-aca1-468a-fb358c3cd83e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/089507fc-305a-1f5c-39a9-de3e667bc902.png)
Power BI アプリ ユーザはアプリを介してレポートにアクセスできるようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/1e4de7fc-ba9b-248e-af0d-4be63e01a649.png)
Power BI アプリに含められたレポートのソース データセットは引き続きワークスペースに配置されているデータセットです。
データセットの更新/Refresh 結果も反映されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/829f8854-abd4-9d89-bc2a-a8d0851f2563.png)
Power BI アプリに含められたレポートは、ワークスペースに配置されているレポートに"強く関連付けされた複製"と考えることができます。ソースとなるレポートを更新してもアプリで共有しているレポートに影響しません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/0a2ada16-0e16-9cdc-ddfd-1fb01100b0b8.png)
ワークスペースに配置されているレポートを更新し、Power BI アプリを更新します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/41ba82f3-5fa1-2ca5-7553-72d8715a1a4e.png)
Power BI アプリに含められたレポートがアップデートされます。アプリ ユーザは一貫したエンドポイントからアクセスできるのでとても便利です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/c047cabf-79b9-d11a-8095-74a1501e9e2d.png)
ワークスペース内のコレクションを追加したり更新したりしても、Power BI アプリに含まれるコンテンツに影響することはありません。
ただし、ソース データセットやソースになるレポートを削除してはいけません。よく検証して確かめてください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/948521bc-746c-8660-01cd-afd2f9381314.png)
Power BI アプリのアップデートでレポートを追加することもできます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/5947ecf5-e8f4-1dab-47fd-3698f015eab0.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/e0b0d300-f32a-580c-7e53-9da1ebae96df.png)
Power BI アプリのレポートなどコレクションをユーザもしくはユーザ グループごとに振り分けることもできるようになりました。(Public preview)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/a3509f54-8649-78ac-713e-7ff627523cb1.png)

https://powerbi.microsoft.com/en-sg/blog/announcing-public-preview-of-multiple-audiences-for-power-bi-apps/

利用するユーザの属性ごとでレポートを表示する Power BI アプリは便利です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/ac7b00b2-64f8-b489-232c-e3ea5b697587.png)

"Audience Access を管理する" については、詳しく検証してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/1c55e274-f6d6-ea28-6b83-7f13f5310a0a.png)

- Audience の定義に利用できるグループとは
- 権限の種類 - 再共有/Reshare と ビルド/build と アプリ/App
- Power BI アプリを発行した時
- Power BI アプリをアップデートした時
- Power BI アプリの発行を取り消したした時

Power BI アプリの発行を取り消し
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193509/6b3a05a5-b042-c8df-87ff-eccea5c78f17.png)


# その他
https://powerbi.connpass.com/

- [Power BI 勉強会 - connpass](https://powerbi.connpass.com/)
- [Power BI Desktop を使い始めるには](http://qiita.com/PowerBIxyz/items/6c4735cb5b5712e70981)
- [Excel で Power Query を使い始めるには](http://qiita.com/PowerBIxyz/items/52e563037b855a099ca9)