次の方法で共有


チュートリアル: Power BI ユーザー向け Fabric

このチュートリアルでは、Dataflows Gen2 とパイプラインを使ってレイクハウスにデータを取り込み、ディメンショナル モデルを作成する方法について説明します。 また、最初から最後までわずか 45 分で、美しいレポートを自動的に生成して、最新の売上高を表示する方法についても説明します。

それでは始めましょう。

  • データを準備してレイクハウスに読み込む
  • レイクハウスでディメンショナル モデルを構築する
  • 簡易作成でレポートを自動的に作成する

前提条件

データを格納するレイクハウスを作成する

まず、データを格納するレイクハウス、列を準備および変換するための Dataflows Gen2、スケジュールされた更新とメール アクティビティのオーケストレーションを処理するパイプラインを作成します。


  1. ワークスペースに移動し、[新規] を選択します。 その後、[その他のオプション] を選びます。

    新しい項目メニューの [その他のオプション] のスクリーンショット。

  2. [新規] 項目の作成画面で、[Data Engineering] カテゴリの [Lakehouse] (レイクハウス) を選択します。

    [Data Engineering] の項目のスクリーンショット。

  3. レイクハウスの名前を「SalesLakehouse」に設定します。 [作成] を選択します。

    レイクハウスに名前を指定するスクリーンショット。

  4. レイクハウス エディターに移動したら、[New Dataflow Gen2] (新しい Dataflow Gen2) を選択します。

    Note

    リボンから [データを取得] を選択し、[New Dataflow Gen2] (新しい Dataflow Gen2) を選択することもできます。

    レイクハウス エディターの [データを取得] ドロップダウンのスクリーンショット。

データを準備してレイクハウスに読み込む

次の手順を実行して、レイクハウスにデータを読み込みます。

  1. Dataflows Gen2 の Power Query Online エディターに移動したら、[Import from a Power Query template] (Power Query テンプレートからインポート) を選択し、「前提条件」でダウンロードしたテンプレート ファイルを選択します。

    Dataflows Gen2 エディターの透かしのスクリーンショット。

  2. [データの読み込み] クエリ グループで DimDate クエリを選択し、[接続の構成] を選択します。 必要に応じて、[接続] を選択する前に、認証の種類を [匿名] に設定します。

    [接続の構成] メニューのスクリーンショット。

  3. DimDate クエリを選択した状態で、データ プレビュー ウィンドウで、左上のアイコンを選択して DateKey 列のデータ型を Date/Time に変更します。

    Power Query エディター内でのデータ型の変更を示すスクリーンショット。

  4. [列タイプの変更] ウィンドウ内で [現在のものを置換] を選択します。

    [列タイプの変更] メニューのスクリーンショット。

データ格納先を追加する

次の手順を実行して、データ格納先を追加します。

  1. DimDate テーブルを選択した状態で、[ホーム] タブから [Add data destination] (データ格納先の追加) を選択し、[Lakehouse] (レイクハウス) オプション メニュー項目を選択します。

    データ格納先を取得するレイクハウス オプションのスクリーンショット。

  2. 必要に応じて、認証を [組織アカウント] に設定した後、[次へ] を選択します。

    [Connect to data destination] (データ格納先に接続) メニューのスクリーンショット。

  3. ナビゲーターから、このチュートリアルで使用するワークスペースを選択し、展開してすべてのレイクハウス項目を表示します。 [SalesLakehouse] を選択し、既定の [新しいテーブル] が選択されていることを確認してから、[次へ] を選択して続行します。

    格納先ターゲットのナビゲーター項目のスクリーンショット。

  4. [更新方法][置換] に設定し、[設定の保存] を選択します。

    注意事項

    更新方法を [置換] に設定すると、後続の更新のたびに既存のデータがすべて削除され、新しいデータに置き換えられます。

    格納先設定メニュー オプションのスクリーンショット。

    Note

    Power Query Online エディターの右下隅には、クエリ用に構成された [データの格納先] 設定が表示され、そこでさらにカスタマイズしたり、削除したりできます。

    構成されたデータの格納先のスクリーンショット。

  5. このチュートリアルの次のセクションに進む前に、このセクションで前に行ったのと同じ手順を実行して、次の各クエリのデータ格納先としてレイクハウスを構成してください。

    クエリ
    DimCustomer
    DimEmployee
    DimProduct
    DimStore
  6. データ変換クエリ グループで、FactOnlineSales クエリを選択します。 [ホーム] タブで、[データ送信先の追加] を選択します。 [Lakehouse] オプションを選択します。

    データ格納先のレイクハウス ターゲット オプションのスクリーンショット。

  7. 必要に応じて、認証を [組織アカウント] に設定した後、[次へ] を選択します。

    [Connect to data destination] (データ格納先に接続) メニューのスクリーンショット。

  8. ナビゲーターから、このチュートリアルで使用するワークスペースを選択し、展開してすべてのレイクハウス項目を表示します。 [SalesLakehouse] を選択し、既定の [新しいテーブル] が選択されていることを確認してから、[次へ] を選択して続行します。

    格納先ターゲットのナビゲーター ウィンドウのスクリーンショット。

  9. [更新方法][追加] に設定し、[設定の保存] を選択します。

    Note

    このプロセスでは、後続の更新のたびにデータが挿入され、テーブル内の既存の行は保持されます。

    格納先設定メニューの選択を示すスクリーンショット。

  10. [発行] を選択してデータフローを保存し、Power Query Online エディターを終了します。

    Power Query Online 内の [発行] ボタンのスクリーンショット。

  11. ワークスペース内の作成したデータフローの上にマウス ポインターを合わせ、省略記号 ([...])[プロパティ] オプションの順に選択します。

    ワークスペース内のデータフローのプロパティを示すスクリーンショット。

  12. データフローの名前を「OnlineSalesDataflow」に変更して、[保存] を選択します。

    データフローの名前を変更するオプションのスクリーンショット。

データ パイプラインを調整する

パイプラインを使って、まずデータ フローの更新を調整します。 エラーが発生した場合は、重要な詳細情報を含むカスタマイズした Outlook メールを送信します。

  1. ワークスペース内で SalesLakehouse という名前のレイクハウス項目を選択します。

    既存のデータフローの名前を変更するスクリーンショット。

  2. レイクハウス エディターに移動したら、[New data pipeline] (新しいデータ パイプライン) を選択します。

    Note

    リボンから [データを取得] を選択し、[New data pipeline] (新しいデータ パイプライン) を選択することもできます。

    レイクハウス エディターの透かしのスクリーンショット。

  3. パイプライン名を「SalesPipeline」に設定します。 [作成] を選択します。

    パイプライン名のメニュー オプションのスクリーンショット。

  4. [キャンセル] を選択して、データのコピー アシスタントを閉じます。 データのコピー ウィンドウの終了を確認するメッセージが表示されたら、[Yes, cancel] (はい、キャンセルします) を選択します。

    データのコピー アシスタント メニューのスクリーンショット。

  5. パイプライン エディターに移動したら、[Add pipeline activity] (パイプライン アクティビティの追加) を選択し、[データフロー] を選択します。

    Note

    リボンから [データフロー] を選択することもできます。

    パイプラインの透かしキャンバスとアクティビティの追加オプションのスクリーンショット。

  6. パイプライン エディター内でデータフロー アクティビティを選択し、[全般] セクション内でその [名前] の値を「OnlineSalesActivity」に変更します。

    データフロー名の値のスクリーンショット。

  7. データフロー アクティビティを選択したまま、[設定] を選択し、[データフロー] の一覧から [OnlineSalesDataflow] を選択します。 一覧を更新する必要がある場合は、[最新の情報に更新] アイコンを選択します。

    データフローの選択の設定を示すスクリーンショット。

  8. [アクティビティ] タブを選択し、[Office365 Outlook] アクティビティを選択します。

    Note

    [同意する] ウィンドウが表示されたら、[OK] を選択して、組織のアカウントでサインインし、[アクセスを許可] を選択します。

    Office365 Outlook アクティビティの情報のスクリーンショット。

  9. パイプライン エディター内で [Office365 Outlook] アクティビティを選択し、[全般] セクション内でその [名前] の値を「Mail on failure」に変更します。

    Office365 Outlook アクティビティ名のスクリーンショット。

  10. Office365 Outlook アクティビティを選択したまま、[設定] を選択します。 [宛先] フィールドを自分のメール アドレスに、[件名] を「Pipeline failure」に更新します。 メール本文の [動的なコンテンツの追加 [Alt+Shift+D]] を選択します。

    Note

    From (差出人)、Cc、Bcc、秘密度ラベルなどのその他のメール構成オプションは、[詳細プロパティ] から使用できます。

    Office365 Outlook 設定のスクリーンショット。

  11. パイプライン式ビルダーに、次の式のコード ブロックを貼り付けます。

    @concat(
        'Pipeline: '
        , 
        , '<br>'
        , 'Workspace: '
        , 
        , '<br>'
        , 'Time: '
        , 
    )
    

    式ビルダーでの Office365 Outlook アクティビティのスクリーンショット。

  12. [システム変数] を選択して、以下の変数を挿入します。次の表から対応する名前を選択してください。

    値の名前 折れ線 システム変数
    パイプライン: 3 パイプライン ID
    ワークスペース: 6 ワークスペース ID

    パイプライン システム変数のスクリーンショット。

  13. [関数] を選択し、以下の関数を挿入します。次の表から対応する名前を選択してください。 完了したら [OK] を選択します。

    値の名前 折れ線 システム変数
    Time: 9 utcnow

    パイプラインの関数のスクリーンショット。

  14. OnlineSalesActivity を選択します。 使用可能なパス オプションから、"X" (失敗時) を選択します。 これにより、失敗時にメール送信アクティビティにドロップされる矢印が作成されます。 これで、OnlineSalesActivity が失敗した場合にこのアクティビティが呼び出されるようになりました。

    失敗時のパスのスクリーンショット。

  15. [ホーム] タブから [スケジュール] を選択します。 以下の構成を更新したら、[適用] を選択して変更内容を保存します。

    名前
    Scheduled run オン
    Repeat 毎日
    時刻 午前 12:00:00

    失敗時の分岐のスクリーンショット。

  16. [ホーム] タブから [実行] を選択します。 ダイアログ ウィンドウが表示されたら、[保存および実行] オプションを選択して続行します。

    [ホーム] タブの [実行] オプションのスクリーンショット。

    パイプラインの現在の状態を監視するには、現在のアクティビティの進行状況が表示される [出力] テーブルを確認できます。 テーブルは自動で定期的に更新されます。更新アイコンを手動で選択して更新することもできます。

    現在のパイプライン アクティビティの進行状況を示すスクリーンショット。

  17. 状態が [成功] を返したら、ワークスペースに戻ってチュートリアルの次のセクションに進むことができます。

    サイド レールとワークスペースの選択を示すスクリーンショット。

レイクハウスでセマンティック モデルを作成する

読み込んだデータは、レポートのための準備がほとんど完了しています。 まず、SQL エンドポイントを使って、レイクハウスにリレーションシップと SQL ビューを作成しましょう。 これにより、セマンティック モデル内のデータに簡単にアクセスできるようになります。これは、抽象化され論理ディメンションに変更された物理データベース オブジェクトを含むメタデータ モデルです。 これは、ビジネスの構造に従って分析用にデータを提示するように設計されています。

リレーションシップの作成

このモデルは、データウェアハウスで見られるスター スキーマです。つまり、星の形に似ています。 星の中心にあるのは、ファクト テーブルです。 周囲にあるテーブルはディメンション テーブルと呼ばれ、リレーションシップにより、ファクト テーブルと関連付けられます。


  1. ワークスペース ビューで、[SalesLakehouse] という名前の SQL エンドポイント項目を選択します。

    ワークスペース内の SQL エンドポイント項目のスクリーンショット。

  2. エクスプローラーで、画面の下部にある [モデル] ビューを選択して、リレーションシップの作成を開始します。

    [モデル] ビューの選択を示すスクリーンショット。

  3. FactOnlineSales テーブルの列 CustomerKey を、DimCustomer テーブルの CustomerKey にドラッグ アンド ドロップして、リレーションシップを作成します。

  4. [リレーションシップの作成] ウィンドウで、次の表に示すように、正しいテーブル、列、設定が選択されていることを確認します。 [確認] を選択して続行します。

    このリレーションシップをアクティブにする テーブル 1 から (列) テーブル 2 へ (列) カーディナリティ クロス フィルターの方向
    FactOnlineSales (CustomerKey) DimCustomer (CustomerKey) 多対一 (*:1) Single

    FactOnlineSales テーブルと DimCustomer テーブルの間のリレーションシップを示すスクリーンショット。

  5. 次の表に示す残りの各テーブルと列に対して同じ手順を実行し、リレーションシップを作成します。

    このリレーションシップをアクティブにする テーブル 1 から (列) テーブル 2 へ (列) カーディナリティ クロス フィルターの方向
    FactOnlineSales (ProductKey) DimProduct (ProductKey) 多対一 (*:1) Single
    FactOnlineSales (StoreKey) DimStore (StoreKey) 多対一 (*:1) Single
    FactOnlineSales (DateKey) DimDate (DateKey) 多対一 (*:1) Single
    DimStore (StoreKey) DimEmployee (StoreKey) 多対一 (*:1) 両方

    次の図は、作成したすべてのリレーションシップが含まれている、完成したセマンティック モデルのビューを示しています。

    モデル ビュー ペインのテーブル リレーションシップのスクリーンショット。

DAX でメジャーを作成する

総売上高を計算する基本的なメジャーを記述してみましょう。

  1. Tables フォルダーの FactOnlineSales テーブルを選択します。 [ホーム] タブで、[新しいメジャー] を選択します。

    モデル ビューのテーブル リレーションシップのスクリーンショット。

  2. 数式エディターで、総売上高を計算する次のメジャーをコピーして貼り付けるか、入力します。 チェック マークを選択してコミットします。

    Total Sales Amount = SUM(FactOnlineSales[SalesAmount])
    

    チェック マークを選択して DAX メジャーをコミットしているスクリーンショット。

SQL ビューを作成する

月別の総売上高を計算する SQL ステートメントを記述しましょう。 次に、このステートメントをビューとしてレイクハウスに保存します。 これにより、今後、月別の総売上高に簡単にアクセスできます。

  1. [ホーム] タブで [新しい SQL クエリ] を選択します。

    [ホーム] タブの [新しい SQL クエリ] のスクリーンショット。

  2. クエリ エディターで、以下のクエリをコピーして貼り付けるか、入力すると、月の番号ごと (降順) に総売上高が計算されます。 入力したら、[実行] を選択して結果を表示します。

    SELECT 
    MONTH(DateKey) as "MonthNumber",
    SUM(SalesAmount) as "TotalSalesAmount"
    FROM FactOnlineSales
    GROUP BY MONTH(DateKey)
    

    SQL クエリ エディターのスクリーンショット。

  3. クエリ テキスト全体を強調表示して、[ビューとして保存] を選択します。

    [ビューとして保存] オプションのスクリーンショット。

  4. [ビューとして保存] ウィンドウで、[ビュー名] を「TotalSalesByMonth」に設定し、[OK] を選択します。

    [ビューとして保存] ウィンドウのスクリーンショット。

  5. エクスプローラーで、[ビュー] セクションを展開し、[TotalSalesByMonth] を選択して、結果を [データのプレビュー] で確認します。

    レイクハウス エクスプローラーでのビューのスクリーンショット。

    SQL エンドポイント エディターの探索が完了したら、ワークスペースに戻って、チュートリアルの次のセクションに進むことができます。

    サイド レールとワークスペースの選択を示すスクリーンショット。

レポートの自動作成

データをモデル化できたので、次は簡易作成を使って、データを視覚化して調査しましょう。


  1. ワークスペース ビューで、項目の種類 [Dataset (default)] (データセット (既定)) と項目名 [SalesLakehouse] の上にマウス ポインターを合わせます。 省略記号 ([…]) を選択し、[レポートを自動作成する] を選択します。

    ワークスペースでのレポートの自動作成オプションのスクリーンショット。

    レポートが自動的に生成され、[データ] ペインでの列の選択に基づいて動的に更新されます。

    • 表示されるレポートは、画像とは異なる場合があります。

    完成した自動作成レポートのスクリーンショット。

  2. リボンから [保存] を選択して、現在のワークスペースにコピーを保存します

    • 完全な視覚化作成エクスペリエンスに移動する場合は、リボンの [編集] を選択できます。

    データを視覚化するときの [保存] ボタンのスクリーンショット。

  3. [レポートの保存] ダイアログ ボックスの [レポートの名前を入力してください] フィールドに、「Sales Summary」と入力します。 完了したら、[保存] を選択します。

    データを視覚化するときにそのプロセスを完了する [保存] ボタンのスクリーンショット。

詳しくは、簡易作成に関する記事を参照してください。

これでチュートリアルは完了です。 チュートリアル用にワークスペースを作成した場合は、今すぐ削除することもできます。 または、チュートリアル中に作成された個々の項目を削除することもできます。

Power BI ユーザーが Microsoft Fabric を使ってあらゆる規模のデータに関する分析情報を簡単に提供できることが、このチュートリアルでご理解いただけたでしょうか。