DevOpsハッカソン (Power BI編)
今回は「ビジネスの可視化」(Power BI) について書きます。(作業時間にしておよそ二日間)
■目的
サービスの利用状況などをグラフィカルに見える化することで、ビジネスを加速させる。
■Power BIとは
様々なデータソースから取得したデータを可視化するためのツール。
かなり強力です!!!
だいたいどこからでもデータを取ってこれます。
Azureはもちろん、Google Analyticsやエクセルファイル、Webページからも取って来れるのでだいたいのことは出来てしまいます。
■今回やったこと(概要)
Power BI Desktopを用いてAzureのDBやGAからデータを取得し、グラフを作成しました。そして、作ったレポートをoffice 365のPower BIへ発行し、同じoffice365グループのメンバに共有しました。
DBから取得したデータを用いてこんな感じのグラフを作成しました。
では簡単にグラフを作成して発行までの手順をまとめてみたいと思います。
■Power BI Desktopでデータの取得
サーバー名とデータベース名を入力します。
OKを押した後に認証情報などを入力します。
SQLステートメントにはクエリを直書きできるので、既存の集計クエリなどがある場合にはかなり便利です。もちろんテーブル単位での読み込みも可能です。
SQLを設定しない場合はデータベースごと読み込むので、後の画面で読み込むテーブルを選択します。
クエリは後からでも編集できるのでできるだけクエリにしてやった方が後でグラフにしやすい気がします。
webからも取得できるので、ここでは気象庁のページから週間天気予報を取得したいと思います。
http://www.jma.go.jp/jp/week/319.html
から東京周辺の週間天気を取得します。
上記のようにプレビューで取得するデータを確認できます。
編集を押すと、下記のクエリエディターが開いて、テーブルを整形できます。
列をある規則で分割したり、列ごと削除したり、行と列を入れ替えたり色々できます。
列のヘッダーにわかりやすい名前を設定しておくと後でグラフが作成しやすいです。
ウインドウの右側にステップが記録されているので、データが更新されたときにも同じ整形がされます。
「閉じて適用」を押し、次にメイン画面でグラフを作成します。
■グラフの作成
軸と値を選択すると簡単なグラフはすぐに作成できます。
注意する点としては、上記のクエリの編集において上部のメニューから気温などの値を10進数に変換しておくことです。そうしないとグラフがプロットできません。。。
筆マークをクリックするとビジュアルな部分についても編集できます。タイトルや文字の大きさなど設定できます。若干設定できる項目に限りがあるので、もう少し改善されると良いなと思います。
■リレーションシップの作成
次にリレーションシップの管理をやってみます。
今回は適当なページから独身女性の残業曜日比率を取得してきて、曜日をキーにリレーションを設定してみました。
リレーションを設定しておくと、例えば下記の図のように月曜日だけにデータをフィルタリングするみたいなことがグラフィカルに行えます。
天気と残業時間をリレーションしても何の意味もないですけどねw
グラフの作成が終わったら、PowerBIのsharepointに発行します。
サインインしておけば上部の発行ボタンでワンタッチで最新を反映できます。
Office 365のPower BIのページにいって、Power BI Desktopで作成したpbixファイルをアップロードすることでも更新できます。
■注意すべき点いろいろ
○proライセンスと普通のライセンスによってできることが少し違う
- 普通では更新頻度が1日1回だがproライセンスでは1日8回までスケジュールを組める。
- オンプレミス(誰かのローカルのパソコン含む)のデータセットを定期的に更新するにはproライセンスが必要→特にPower BI Desktopでローカルのエクセルを参照して作成し、office 365に発行すると、オンプレミスに繋いでいる扱いになるので注意が必要です。参照するエクセルファイルもoffice 365上にアップしてデータを取得するのが良いと思います。
○共有範囲の設定
- office 365の場合は同じ組織内のメンバーに共有は簡単だが、組織外のメンバーには共有できない。(たぶん)
○web上のPower BIやExcel for Power Query
- web上のPower BI はDesktop版よりできることが少ないのであまりお勧めできない。
- Excelのアドインで利用できるExcel for Power Queryでもほぼ同じようなことができるが、実際に使ってみたところかなりエクセルが重たくなって強制終了が多発してしまったので実用性はなんともいえない。。。ただ、ファイルを配布すればoffice365の環境がなくても各ローカルからデータを見れるという点においては便利かもしれない。
■まとめ
グラフ化がとにかく楽しい!!
そして簡単!!
無料でかなりのことができるのでかなり強力ですね。
そして一番の収穫は、すぐに業務で活かせたことですね~。