1. シニア テクニカル アーキテクト
清水 優吾(しみず ゆうご) / 株式会社セカンドファクトリー
@yugoes1021
yugoes1021 Microsoft MVP
for Data Platform - Power BI
(2017.02 -)
Facebook のデータを
Power BI で見てみると…
~セルフマーケティングに活用できるかも!?~
2017-09-02
Power BI 勉強会 – 第5回
https://www.slideshare.net/yugoes1021/facebook-power-bi
8. 自己紹介:
清水 優吾 (Yugo Shimizu) ♂
株式会社セカンドファクトリー
シニア テクニカル アーキテクト
• もともと金融系システムの開発者。今はテクニカルアーキテクト。
• 時々コーディングもしてます。開発者の端くれです。
専門:
Power BI, Web API, “つくらず、つなぐこと”
Twitter: @yugoes1021
Facebook: https://www.facebook.com/yugoes1021
Power BI 勉強会: https://powerbi.connpass.com
Japan Web API Community: https://jwacom.connpass.com
2017/09/02 Power BI 勉強会 8
Microsoft MVP
for Data Platform -
Power BI
(2017.02 - )
9. 注意事項と前提
■注意事項
• 資料はすべて公開(powerbi.connpass.com or SlideShare)
• 写真・動画の撮影は自由に!
• 私の肖像権はフリー
• SNS 等へのアップOK(私以外の方が含まれる場合は、ご遠慮願います。)
ハッシュタグ:
#PowerBI #PBIJP #PowerBI勉強会
■私が心掛けていること
• 誰でも実現可能な方法であること
• お金がかかっても、できるだけ安価であること
• なにより「試してみよっかなー」と思っていただけること
2017/09/02 Power BI 勉強会 9
10. Power BI を使う際に最初に決めること
1. 取得対象のデータを決める
2. Power BI へのつなぎ方を決める
つまり…
1. =データソース
2. =アーキテクチャ
ということですね。
2017/09/02 Power BI 勉強会 10
皆さん自身の Facebook データ
Data Connector
今回の場合…
12. アーキテクチャ
今回は以下を使用します。
• Power BI Desktop 標準の Data Connector
皆さん自身の Facebook のデータを収集
• Power BI Desktop
データを可視化・分析するのに使用
2017/09/02 Power BI 勉強会 12
13. Facebook 用データコネクタを使用したレポートの作成方法
Facebook 用データコネクタを使用したレポートを作成するには、Power BI Desktop でレ
ポートを作成します。作成した pbix ファイルを Power BI service に発行すると Power BI
service で動作させることができます。
2017/09/02 Power BI 勉強会 13
Power BI service
データソース
pbix
ファイル
クライアント PC
2.発行
pbix 作成時の接続情報
1.作成
3.データ更新
発行後のスケジューリ
ングをお忘れなく!
27. 2.データの加工(ETL)
2017/09/02 Power BI 勉強会 27
• Data Analysis Expressions (DAX) 言語
DAX は、関数、演算子、および定数を集めたもので、これらを数式または式の中で使用して、1 つまたは複数の値を計算して返すこと
ができます。 さらに簡単に説明すると、DAX は、現在のモデルに既に含まれているデータから新しい情報を作成するのに役立ちます。
(引用:https://powerbi.microsoft.com/ja-jp/documentation/powerbi-desktop-quickstart-learn-dax-basics/ )
例)指定する日付範囲での製品カテゴリごとの成長率、売上の前年比、等
• M 言語 (正式名:Power Query Formula Language)
正式名称は Power Query Formula Language なのに、なぜだか M 言語と呼ばれる。
詳細は Power BI 勉強会 第3回 で紹介された沼口さんの資料をご覧ください。
https://docs.com/numaguchi-shige/2280/20170218-powerbi-m
https://road2cloudoffice.blogspot.jp/2017/02/m-power-query-formula-language.html
私の中の分類ですが、ざっくりと以下のように捉えています。
• M 言語 ⇒ クエリエディターで編集
データを取得する際に、複数のデータを結合、過不足ないデータにするときに使用。基本的にドラッグ&ドロップで自動生成されたもの
を手動で編集する(イチから書かない)
• DAX 言語 ⇒ Power BI Desktop の [データ] や [フィールド] から選択し [数式バー] から編集
M 言語によって、過不足ない状態で取得されたデータを、整形するのに使用。[メジャー] が該当。
ここで言う「整形」とは、表示形式の変更、取得したデータから新たなデータを作成すること。Excel で言うとセルの書式設定。
例:日付の表示形式、列データの分割・結合、並び替え等
28. 2.データの加工(ETL)
2017/09/02 Power BI 勉強会 28
■Facebook 等、SaaS をデータソースにする場合の注意点 – 日時 (DateTime) 型
クラウドサービスでは通常 協定世界時 UTC (英語:coordinated universal time) が使用されます。
https://ja.wikipedia.org/wiki/%E5%8D%94%E5%AE%9A%E4%B8%96%E7%95%8C%E6%99%82
実際は昨今の DB では
「UTC を表す “値” を保持していて、それを使用する際に各地の現地時刻に直して扱っている」
というのが正確な表現です。
これを考慮せずに Facebook からデータを取得、Power BI Desktop でレポート作成、Power BI service に
発行 すると、データが更新された際に、時刻がおかしくなる可能性があります。
大事なのはクエリエディターでデータを取得した際の日時データの形式です。
32. 2.データの加工(ETL)
2017/09/02 Power BI 勉強会 32
■詳細エディターを開く
1. [クエリを編集] クリック
2. クエリエディターで [詳細エディター] をクリック
■修正後
let
ソース = Facebook.Graph("https://graph.facebook.com/v2.10/me/posts"),
変更された型 = Table.TransformColumnTypes(ソース,{{"created_time", type datetimezone}}),
変更された型2 = Table.TransformColumns(変更された型, {"created_time", each DateTimeZone.SwitchZone(_, 9), type datetimezone})
in
変更された型2
■修正前
let
ソース = Facebook.Graph("https://graph.facebook.com/v2.10/me/posts"),
変更された型 = Table.TransformColumnTypes(ソース,{{"created_time", type datetimezone}})
in
変更された型
【M 言語】
35. 3.Data alerts の設定
2017/09/02 Power BI 勉強会 35
さて、こうやって無事データが取得できて、分析もでき、Power BI service へ発
行もできました。
ところで BI というのは ビジネスインテリジェンス の略ですよね。一般的に BI
では インサイトを得る と言います。英単語 insight だと「洞察(力)、物事の実態
を見抜くこと(力)」という意味です。
BI では「データを見て、その変化を見て、何が起きているのかを見抜いたり、推
測したりすること」です。
36. 流行のキーワード
2017/07/06
Backend Frontend Services
D B
IoT
AI (人工知能)
Machine Learning
(機械学習)
Chat Bot
Robot
Mobile App
業務アプリ
Storage
SNS Office 365
Salesforce
Consumer Business
kintoneFinTech
Gateways
on the Edge
Gateways
on the cloud
Business
Intelligence
=APISensors
Devices
37. 3.Data alerts の設定
2017/09/02 Power BI 勉強会 37
ただ、どんなに綺麗に可視化できたとしても、1日中ダッシュボードを眺めている
人なんていませんよね?
でも見てないとリアルタイムの変化を知る必要がある場合は、気付けないかもし
れない。。。
そんなあなたに朗報です。そう、Power BI service には 通知 をしてくれる機能
があります。
Data alerts in Power BI service です。
38. 3.Data alerts の設定
2017/09/02 Power BI 勉強会 38
[Power BI サービスでのデータ アラート]
https://powerbi.microsoft.com/ja-jp/documentation/powerbi-service-set-data-alerts/
Power BI での通知は ダッシュボード にあるタイルに設定することができます。
ただし設定可能なタイルは ゲージ、カード、KPI です。