目次
1. はじめに
皆さんこんにちは。
今回からMicrosoft Fabricについての連載ブログを始めていきます。
全9回を予定しています。第1回ではFabricの概要と試用版の作成方法について説明いたします。
第1回:Microsoft Fabric 概要と試用版の作成方法
第2回:Power BI ユーザー向け Fabric チュートリアル (今回)
第3回:Data Factory ユーザー向け Fabric チュートリアル (進行中)
第4回:Data Activator ユーザー向け Fabric チュートリアル (進行中)
第5回:Industry Solutions ユーザー向け Fabric チュートリアル (進行中)
第6回:Synapse Data Engineering ユーザー向け Fabric チュートリアル (進行中)
第7回:Synapse Data Science ユーザー向け Fabric チュートリアル (進行中)
第8回:Synapse Data Warehouse ユーザー向け Fabric チュートリアル (進行中)
第9回:Synapse Real-Time Analytics ユーザー向け Fabric チュートリアル (進行中)
前回のブログで、Microsoft Fabric の概要について説明しました。今回は、Microsoft Fabric のPower BI の使用方法を簡単に説明していきます。
Dataflows Gen2 とパイプラインを使用し、レイクハウスにデータを取込んで、ディメンショナル モデルを作成します。 次は、レポートを自動的に生成してデータセットから売上高を表示します。
・データを準備してレイクハウスに読み込む
・レイクハウスでディメンショナル モデルを構築する
・簡易作成でレポートを自動的に作成する
2. 前提要件
実施する際の前提条件は以下の通りです。
・開始する前に、組織に対して Fabric を有効にする必要があります。
・まだサインアップしていない場合は、無料試用版にサインアップしてください。
・新しいワークスペースを作成し、Fabric 容量を割り当てます。
既存のワークスペースを利用することもできますが、初心者向けにわかりやすい非運用ワークスペースを使用することをおすすめします。
・Contoso データのサンプル クエリを含む Power Query テンプレート ファイルをダウンロードします。
3. Power BI の概要
Power BI は、ソフトウェアサービス、アプリケーション、およびコネクタのコレクションを組み合わせることで、関連性のないデータソースから豊富な対話型の分析情報を得ることができます。Excel スプレッドシート、クラウドベースのハイブリッドデータウェアハウス、およびオンプレミスのデータ ウェアハウスのコレクションなど、さまざまなデータを活用できます。Power BI を使用すると、データソースへの接続、重要な情報を可視化し、必要なユーザーと共有を簡単に実行できます。
4. データを格納するレイクハウスを作成する
データを格納するレイクハウス、列を準備・変換する Dataflows Gen2、スケジュールされた更新とメール アクティビティのオーケストレーションを処理するパイプラインを作成します。
① ワークスペースに移動し、「新規」 を選択します。 次に、「すべて表示」 を選択します。
②「新規」 項目の作成画面で、「Data Engineering」 カテゴリの 「レイクハウス」 を選択します。
③ 新しいレイクハウスに SalesLakeHouse1 という名前を付けます。
④ レイクハウス の画面で 「New Dataflow Gen2」 を選択します。
5. データを準備してレイクハウスに読み込む
5-1.データを準備する
レイクハウスにデータを読み込むために、次の手順を実行します。
① Dataflows Gen2 の Power Query Online エディターの画面で、「Power Query テンプレートからインポート」 →「前提条件」でダウンロードしたテンプレート ファイルを選択します。
②「Data Load」 で DimDate クエリ → 「接続の構成」 を選択します。 必要に応じて、「接続」 を選択する前に、認証の種類を 「匿名」 に設定します。
③ DateKey 列のデータ型を Date/Time に変更します。
④「現在のものを置換」 をクリックします。
5-2.データ格納先を追加する
① データ格納先を確認します。
更新方法を変更します。
② 設定アイコン をクリックします。
③「次へ」 をクリックします。
④ 作成された「SalesLakeHouse1」を選択して 「次へ」 をクリックします。
⑤「自動設定を利用する」オプションを無効にして、「更新方法」 を 「置換」 に設定し、「設定の保存」 をクリックします。
同じ手順を実行して、次の各クエリをレイクハウスをに保存します。
クエリ |
DimCustomer |
DimEmployee |
DimProduct |
DimStore |
「FactOnlineSales」クエリに対して、同様な手順を実行しますが、更新方法 は「アペンドする」を選択します。
⑥「公開」 を選択してデータフローを保存し、Power Query Online エディターを終了します。
⑦ データフロー名を「OnlineSalesDataflow」に変更します。
5-3.データ パイプラインを調整する
パイプラインを使用して、作成されたデータ フローを実行します。 エラーの場合は、Outlook メールを送信します。
① 作成されたレイクハウスを選択します。
②「New data pipeline」 を選択します。
③ パイプライン名を「SalesPipeline」に設定して、 「作成」 をクリックします。
④「コピー アシスタント」ダイアログで「 Yes, cancel」をクリックします。
⑤ エディターの画面で 「Add pipeline activity」 → 「データフロー」 を選択します。
⑥「全般」 タブでアクティビティ名を「OnlineSalesActivity」に変更します。
⑦ データフロー アクティビティを選択したまま、「設定」 タブで「データフロー」 の一覧から 「OnlineSalesDataflow」 を選択します。 必要に応じて、「最新の情報に更新」 アイコンを選択します。
⑧「アクティビティ」 タブで「Office365 Outlook」 アクティビティを選択します。
注意: 「同意する」 ウィンドウが表示されたら、「OK」 を選択して、組織のアカウントでサインインし、「アクセスを許可」 を選択します。
⑨「Office365 Outlook」 アクティビティを選択したまま、アクティビティ名を「Mailonfailure」に変更します。
⑩ Office365 Outlook アクティビティを選択したまま、「設定」タブに情報を入力します。
⑪ ポップアップの選択肢から情報を取得できますが、分かりやすくなるために、ソースコードを提供します。以下のコードをパイプライン式ビルダーにコピペします。
1 |
@concat('Pipeline: ', pipeline().Pipeline, '<br>', 'Workspace: ', pipeline().DataFactory, '<br>', 'Time: ', utcnow()) |
⑫「OnlineSalesActivity」 アクティビティの 「X」 (失敗時) を選択したまま、 「Office365 Outlook」アクティビティと矢印で接続します。
「ホーム」 タブでパイプラインの 「スケジュール」 を設定できます。
⑬ パイプラインを保存して、「実行」ボタンをクリックします。
「Output」ダイアログでパイプライン実行の進捗状況を監視できます。Outputは自動でリフレッシュされますが、必要に応じて手動でリフレッシュします。
状態が 「成功」 を返しました。
6. レイクハウスでセマンティック モデルを作成する
6-1.リレーションシップの作成
ビジネスの構造を分析しやすくなるために、セマンティックモデルを作成します。
① ワークスペース ビューで、「SalesLakehouse1」 SQL エンドポイントを選択します。
② エクスプローラーで、 「モデル」 を選択して、リレーションシップの作成を開始します。
③ FactOnlineSales テーブルの列 CustomerKey を、DimCustomer テーブルの CustomerKey にドラッグ アンド ドロップして、リレーションシップを作成します。
④ 以下のようにリレーションシップを作成します。
⑤ 次の表のように、リレーションシップを作成します。
上記の表を元に、次のリレーションシップ図が作成されました。
6-2.DAX でメジャーを作成する
総売上高を計算する基本的なメジャーを作成します。
① Tables フォルダーの FactOnlineSales テーブルを選択します。 「新しいメジャー」 を選択します。
② 数式エディターに次のコードをコピペします。
1 |
Total Sales Amount = SUM(FactOnlineSales「SalesAmount」) |
6-3.SQL ビューを作成する
月別の総売上高を計算する SQL ステートメントを作成します。
①「ホーム」 タブで 「新しい SQL クエリ」 を選択します。
② クエリ エディターで、次のコードを使用して月別の総売上高を計算します。コードをコピペしてから、「実行」 をクリックして結果を表示します。
※ 文法
1 2 3 4 5 6 7 8 9 |
SELECT column_name(s) FROM table_name WHERE condition GROUP BY column_name(s); |
※ 例
1 2 3 4 5 6 7 8 9 |
SELECT MONTH(DateKey) as "MonthNumber", SUM(SalesAmount) as "TotalSalesAmount" FROM FactOnlineSales GROUP BY MONTH(DateKey) |
③ クエリ テキスト全体を強調表示して、「ビューとして保存」 を選択します。
④ ビュー名を「TotalSalesByMonth」に設定し、「OK」 をクリックします。
7. レポートの自動作成
データをモデル化できたら、次は簡易作成を使って、データを可視化します。
ワークスペース ビューで、項目の種類 「Dataset (default)」 (データセット (既定)) と項目名 「SalesLakehouse1」 をホバーします。 アイコン (「…」) を選択し、「レポートを自動作成する」 を選択します。
「データ」 ペインでの列に基づいてレポートが自動的に生成されます。
8. まとめ
今回は、Microsoft Fabric のPower BI の使用方法をについて説明しました。
第1回:Microsoft Fabric 概要と試用版の作成方法
第2回:Power BI ユーザー向け Fabric チュートリアル (今回)
第3回:Data Factory ユーザー向け Fabric チュートリアル (進行中)
第4回:Data Activator ユーザー向け Fabric チュートリアル (進行中)
第5回:Industry Solutions ユーザー向け Fabric チュートリアル (進行中)
第6回:Synapse Data Engineering ユーザー向け Fabric チュートリアル (進行中)
第7回:Synapse Data Science ユーザー向け Fabric チュートリアル (進行中)
第8回:Synapse Data Warehouse ユーザー向け Fabric チュートリアル (進行中)
第9回:Synapse Real-Time Analytics ユーザー向け Fabric チュートリアル (進行中)
この記事を書いた人
- phongcq