Power BI データフロー を試せる環境を構築する

Power BI データフロー の Public preview が公開されたので試せる環境を構築してみる手順など。そもそもとして、Power BI の試用環境を作るところから。すでに Office 365 を利用している環境であれば少なくともPower BI サービスが使える状態にあるのだけど、Power BI データフローには Premium など キャパシティベースのライセンスが必要な機能があって手持ちの環境で試すのがお財布的にちょっと大変なんですよね。

# 試用環境を用意
Power BI サービス 単体でも可能ではあるが、試用環境を準備するにあたり Office 365 の試用テナントを用意するのが手早く&手離れしやすく便利。
## Office 365 E5 Trial
[Office 365 E5 trial - Microsoft Go!](https://go.microsoft.com/fwlink/?LinkID=723562) などから 試用のOffice 365 E5 をサインアップ。E5 を選択したのは、Power BI Pro ライセンスが標準で含まれてるから。E3 でもよいのだけど、"Power BI Pro を試用する Power BI (無料) ユーザー"というのが 検証に影響するのがあったら嫌なので。
## Power BI を利用できるユーザーを追加
[Microsoft 365 admin center - アクティブなユーザー](https://admin.microsoft.com/AdminPortal/Home#/users) で "Office 365 Enterprise E5" の 製品ライセンスを割り当てた ユーザーを追加するだけで Power BI Pro ライセンスも付与されることになる。追加したユーザーそれぞれでサインインして Outlook on the Web の設定しておけば 通知などデータフロー以外の機能も確認できるでしょう。

**Power BI (無料) ユーザーも必要ですか ?**
Power BI (無料)ユーザーの動作も確認したいのであれば、ライセンスの追加が必要。新規で作成した E5テナントでは Power BI (無料)が追加されていないのでライセンスを追加するには、
[Microsoft 365 admin center - サービスを購入する](https://admin.microsoft.com/AdminPortal/Home#/catalog) から Power BI (無料)を[今すぐ購入] しライセンス取得するか、Power BI Pro のみ 無効にした Office 365 E5 ユーザーアカウントで [Power BI サービス](https://app.powerbi.com/)に **サインアップ** するとよい。

# Power BI データフローを試す
## アプリのワークスペースを作成する。
個別に割り当てられた "マイ ワークスペース"では データフローを利用できないので。Office 365 グループ ベースのワークスペースではなく、現在プレビュー中の ワークスペース(WorkspaceV2)のほうがよいかも。

## データフロー を追加する
ワークスペースにデータフローを追加。
データフローには複数のエンティティ(テーブル)を配置でき、ワークスペースには複数のデータフローを配置できる
### エンティティの定義
新規のデータフロー にはエンティティが存在しないので [新しいエンティティを追加]
ここからが Power Query Online。 ただ正式名称ではなかったかも。
すでにいくつかのデータソース(コネクター)が用意されていてすこし試してみる。
#### Blank Table
Power BI Desktop で利用できる [データの入力] と同じ機能でデータソースを必要せずデータを用意できる。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/0ece6502-09b6-77cb-80ce-82c5c1f09972.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/300e930e-3893-a432-f4e7-ee8fe0dbd916.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/f327103c-e7f2-cfda-2fad-cbfc6a23ddf5.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/efafd2a3-c73a-5b70-e5d5-73e16c85c176.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/0a4d360e-467c-d1cc-c7b7-38a413e94318.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/14b44955-ae8b-2859-6d48-e1463263ac7e.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/56235884-c3ef-8ad4-a462-967ee39cee17.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/3cb4da74-1668-3e6a-7cf2-633d75523d24.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/ce34ab66-3a7d-b681-9c7a-514313f3ae63.png)

列のデータ型まで設定し[完了]
バリデーション後 [データフローの保存]
この状態ではまだデータは用意されていないので[今すぐ更新] など

#### OData

データフローを追加し OData.org の TripPin に接続してみる
https://services.odata.org/TripPinRESTierService/
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/5c6c31da-4c54-3634-d666-48ca23941893.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/60605f07-3a8f-e103-c125-4ee30b7e0430.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/86649683-9fa9-dd2c-4355-0a593c997866.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/f36843c9-1123-b6a1-1d01-790a074850fd.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/8886172d-0ce6-c669-db4f-27b3d4a4104a.png)
type record の Location 列をひとまず展開して警告は解消
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/a465920d-e909-169a-1830-a58e1d55b512.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/3b578ce3-d05c-f8b7-c045-a88a1d72aa98.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/6f403103-c4a6-235e-cc00-67f590c85be2.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/e70939f1-6405-8a8e-1f59-b5551ff9c582.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/477057ae-4391-0fb3-3a08-d26432f3a13e.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/baa327b9-24b0-f505-e50b-af3371d8595a.png)



### Power BI Desktop から接続
Power BI Desktop のコネクタを利用しデータフローからデータを取得する。
Power BI データフロー (ベータ) 
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/4e255d28-ac86-53f6-9ed6-e9380d51a24f.png)

初回など接続したことがない場合、組織アカウントでサインイン
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/f1d6169e-bce8-08ca-8cb0-d170fe2b03ad.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/a4f8dae8-8605-9c82-a97a-64b977b5813d.png)
※ コネクタに対するサインイン先が保存されてしまうので、異なる環境のデータフローに接続されてしまう場合には データソース設定で認証情報を削除
※ PowerBI.Dataflows という関数(コネクタ)の引数はいまのところ不明

# Power BI データフローをもっと試せるようにする
Power BI Embedded でもデータフローが使えるのでもう少し試すことができる。
**Computed entities**
[Using computed entities on Power BI Premium - Power BI | Microsoft Docs](https://docs.microsoft.com/en-us/power-bi/service-dataflows-computed-entities-premium)
**Incremental refresh**
[Using incremental refresh with Power BI dataflows - Power BI | Microsoft Docs](https://docs.microsoft.com/en-us/power-bi/service-dataflows-incremental-refresh)
**Linked entities**
[Link entities between dataflows in Power BI - Power BI | Microsoft Docs](https://docs.microsoft.com/en-us/power-bi/service-dataflows-linked-entities)

## Power BI Embedded を追加する
### 無料試用版のサブスクリプション
Office 365 試用テナントの全体管理者 で [Azure ポータル](https://portal.azure.com/) にサインイン
[サブスクリプション - Microsoft Azure](https://portal.azure.com/#blade/Microsoft_Azure_Billing/SubscriptionsBlade) でサブスクリプションの追加
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/674b011b-0fcf-ef21-a519-4ca24f169682.png)

無料試用版のアクティベート ※クレジットカードの登録は必要
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/fd57358f-bb72-4ac3-bfbf-c35cab28b825.png)

### Power BI Embedded
[Power BI Embedded - Microsoft Azure](https://portal.azure.com/#blade/HubsExtension/Resources/resourceType/Microsoft.PowerBIDedicated%2Fcapacities) でリソースを  A1 プランを追加
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/5ed98161-ed2f-4f16-b196-23f56b250611.png)

1時間あたりだいたい 500JPY なので 22500JPY / 500 で 45h ほど試せる。Power BI Embedded は一時停止できるので試す時だけという使い方は可能。

### 容量の設定
[Power BI 管理ポータル - 容量の設定 - Power BI Embedded](https://app.powerbi.com/admin-portal/capacities/capacitiesList/azure) で該当する"容量 / Capacity"を選択して [ワークロード]を有効にする。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/17569803-8f6d-2263-07a0-e44335b06fe8.png)
既定値 20 % になっているのだけどうまくいかなかったら 27 % でトライ

### ワークスペースをPremium に配置
[ワークスペースの設定] で ワークスペースを専用キャパシティに移動
![image.png](https://qiita-image-store.s3.amazonaws.com/0/193509/7c344d7c-95f4-88df-86e3-89e42ef383a0.png)

## データフローを編集なり追加なり
Premium な キャパシティを利用するデータフローは Computed entities / Incremental refresh を試すことができる。
 
# Power BI データフローに関する情報
[Learn about dataflows in Power BI - Power BI | Microsoft Docs](https://docs.microsoft.com/en-us/power-bi/service-dataflows-overview)
なにができるのとか、これから読み始めるとよいかな
## Power BI データフローに必要なライセンス
Power BI Pro もしくは Power BI Premium が必要。なぜなら "アプリのワークスペース" / "App Workspace" で利用するものだからということでしょう。