2021.05.02 - #02
Power BI
Architecture Dojo
自己紹介:
清水 優吾 (Yugo Shimizu)
株式会社セカンドファクトリー
CTO, シニア テクニカル アーキテクト
UX を看板に掲げて、飲食業を営んでいる IT 企業に勤めている会社員で
Data Platform をメインに活動をしている Technical Architect
専門・興味:
Data Platform (Azure),
Power Platform (Power Apps, Power Automate, Power BI, Power Virtual Agents)
Qiita: https://qiita.com/yugoes1021
Power BI 勉強会: https://powerbi.connpass.com
Japan Power BI User Group: https://www.facebook.com/groups/JapanPBUG/
Japan Power Virtual Agents User Group: https://www.facebook.com/groups/JPVAUG/
Japan Power of Humans Community: https://jpohc.connpass.com/ (次回: 未定)
YouTube (Yugo’s Room) : https://www.youtube.com/channel/UCdBYN0oIDm7tDlZoZJg4Q-A
Microsoft MVP
for Data Platform -
Power BI
(2017.02 - )
MVP
プロフィールページ
Twitter: @yugoes1021
Facebook: yugoes1021
LinkedIn: yugoes1021
今夜はデータを扱うすべての人に
意識をしておいて欲しいことをお話します
特に Power BI Desktop だけでやられている方には
普段あまり意識していないことかもしれません
が、とても大事なことです
Power BI に限らない、そんなお話です
• (英)architecture 名詞
建築、建築学、構造、基本設計概念
• (英)architect 名詞
建築家、設計者、創造者
IT関連では、
アーキテクチャとは?
architecture: 全体の「設計」を指す言
葉
architect: 全体設計をする人
[Power BI Tips] 年月や連番がファイル名にくっついてる Web 上のファイルをデータソースにしたレポートでもスケジュール更新を有効にしたい場合 より引用
予言:
おそらくこのお話が終わった後、今の図を見たら、
皆さんの目の付け所が変わるでしょう
今日はこれが「ゴール」です
参考資料:
技術者として抑えておきたい Power BI アーキテクチャ
https://www.slideshare.net/yugoes1021/power-bi-113651064
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
https://www.slideshare.net/yugoes1021/power-bi-98674803
アーキテクチャとは?
データを持ってきて使うまで
Power BI
Power Query
ETL
Dataset
Report
1
2 3
Data
Sources
データを持ってきて使うまで
Data
Sources
Power BI
Power Query
ETL
Dataset
Report
1
2 3
質問:
①~③はデータの移動を表しています。それぞれの動作主は誰で
データを持ってきて使うまで
Data
Sources
ETL
Dataset
Report
1
2 3
Storage
Getter & Sender
Application
Storage
Consumer
ETL
User
データを持ってきて使うまで
Data
Sources ETL
Dataset
1
2
3
Storage
Getter & Sender
Application
Storage
Consumer
ETL
User
Data Consumer
Power BI
データを持ってきて使うまで
Data
Sources Power Query
Dataset
1
2
3
Storage
Getter & Sender
Application
Storage
Consumer
ETL
User
Report
Storage
= Getter & Sender
Storage
Sender
Getter & Sender
登場人物
1. Storage: データを溜める(溜まっている)場所
2. Getter: データを取得する人
3. Sender: データを目的地に送る人
4. ETL: 渡された(取得した)データを整形・変換する
人
5. Consumer: データを使う人
2, 3, 4, 5 は
Application が担う
サービスによっては「機能」と
して
実装されている
例えば IoT の場合:
数年前まで約3年間稼働させていた
私の自宅の温度湿度をリアルタイムに
Power BI ダッシュボードで見るための
アーキテクチャ図です
完全にノーコードで実現しました
[IoT]Power BI, Sony MESH, IFTTT を使用した自宅の温度湿度の可視化 第
1回
https://yugoes1021.weebly.com/blog/iotpower-bi-sony-mesh-ifttt

[IoT]Power BI, Sony MESH, IFTTT を使用した自宅の温度湿度の可視化 第
2回
https://yugoes1021.weebly.com/blog/iotpower-bi-sony-mesh-ifttt-2
必要なもの:
• MESH アプリが動作するスマホ or タブレット(自宅に置きっぱなし)
• Sony MESH 温度湿度センサー
• Azure Subscription
• Dropbox などのクラウドストレージで Logic Apps のコネクタがあるス
トレージ
Sensor
Getter
&
Sender Receiver
&
Sender
Storage
Getter & Sender
Consumer
登場人物:
1. Storage: データを溜める(溜まっている)場所
2. Getter: データを取得する人
3. Sender: データを目的地に送る人
4. ETL: 渡された(取得した)データを整形・変換する
人
5. Consumer: データを使う人
その他に考えるべきこと
絶対に考えるべきこと:
a. 各登場人物の間はデータが移動する
(=目的語はデータ)
ならば、それぞれの主語は誰か?
b. データ量は?(=Volume)
c. データが発生するタイミングは?(=Velocity)
d. データの種類は?(=Variety)
e. ビジネスシナリオ
登場人物
1. Storage: データを溜める(溜まっている)場所
2. Getter: データを取得する人
3. Sender: データを目的地に送る人
4. ETL: 渡された(取得した)データを整形・変換する
人
5. Consumer: データを使う人
まとめ
絶対に考えるべきこと:
a. 各登場人物の間はデータが移動する
(=目的語はデータ)
ならば、それぞれの主語は誰か?
b. データ量は?(=Volume)
c. データが発生するタイミングは?(=Velocity)
d. データの種類は?(=Variety)
e. ビジネスシナリオ
「上記を考え、試す。そしてちゃんと失敗して、改善する」
これを必ず本番より前にやっておいてください。
そうして初めて適切なアーキテクチャを構築できます
That’s all. Thank you for your attention.
May you have a better Power BI & Data life!

Power BI Architecture Dojo 02