Microsoft Fabric ビジュアルクエリを使ってみた

Microsoft Fabricのビジュアルクエリでは、SQLなどのコードを記述せずにデータベースクエリを作成することができます。

本記事では、ローカル上にある複数のCSVファイルをレイクハウスに格納し、ビジュアルクエリでデータの加工を行い、最終的にグラフ作成まで実施したいと思います。

事前準備

利用するデータ

今回は、自作した「製品データ.csv」と「注文データ.csv」を利用します。

製品データ.csv ※一部抜粋

製品ID 製品名 カテゴリー サブカテゴリー 価格
201 ノートパソコン 電子機器 コンピューター 70000
202 スマートフォン 電子機器 モバイルデバイス 50000
203 プリンター 電子機器 周辺機器 10000
204 タブレット 電子機器 モバイルデバイス 40000
205 オフィスチェア 家具 オフィス家具 15000

注文データ.csv ※一部抜粋

注文ID 顧客ID 注文日 製品ID 数量 合計金額
1 1564 2023/1/1 203 4 40000
2 1802 2023/1/1 203 2 20000
3 1658 2023/1/2 228 1 15000
4 1984 2023/1/3 248 3 30000
5 1549 2023/1/3 206 3 60000

レイクハウスの作成

Synapase Data Engineeringのホーム画面から「レイクハウス」を選択し、「CustomerOrder_Lakehouse」という名前のレイクハウスを作成します。

CSVファイルのアップロード、テーブル化

作成したレイクハウス上で「ファイルのアップロード」をクリックし、「製品データ.csv」と「注文データ.csv」をアップロードします。

次に、アップロードした各CSVファイルのテーブル化を行います。Filesにアップロードした各CSVファイルの右側に表示される「…」 > 「テーブルに読み込む」を順にクリックし、「新しいテーブル」からテーブル名を以下のように入力します。

  • 注文データ.csv:order_table
  • 製品データ.csv:product_table

作成後、Tablesフォルダーからテーブルのデータを確認することができます。

ビジュアルクエリの利用

今回は、ビジュアルクエリを使い、データのフィルタリング・結合・グループ化を実施します。

ビジュアルクエリの作成

まずは、右上の「Lakehouse」をクリックし、「SQL分析エンドポイント」に切り替えを行います。

SQL分析エンドポイントへの切り替え後、「新規SQLクエリ」 > 「New visual query」を順にクリックし、ビジュアルクエリの作成を行います。

データの追加とフィルタリング

作成した2つのテーブルをドラッグして追加を行います。

データの追加後、order_tableのデータをフィルタリングします。「注文日」の列を選択後、「行の削除」 > 「行のフィルター処理」を順にクリックします。

今回は、2023年1月のデータのみを抽出します。下図のように設定を記載し、「OK」をクリックします。

フィルタリング処理が追加され、2023年1月のデータのみを抽出したテーブルが表示されます。

データの結合

次に、製品IDをキーとして、order_tableとproduct_tableの結合を行います。「結合」 > 「クエリのマージ」を順にクリックします。

下記の内容を設定し、「OK」をクリックします。

結合したテーブルの右側にある記号をクリックし、製品ID以外を選択します。

テーブルの展開が完了し、結合したテーブルが表示されることを確認します。

グループ化

今回は、2023年1月のサブカテゴリー別総売り上げを、グループ化で表示させたいと思います。

サブカテゴリーの列を選択後、「変換」 > 「グループ化」を順にクリックします。

詳細設定として下記の内容を設定し、「OK」をクリックします。

グループ化が完了すると、サブカテゴリーごとの合計金額のテーブルを確認することができます。

ビューの作成

「ビューとして保存」をクリックします。

今回は、ビュー名に「TotalSalesBySubcategory_202301」を設定して、「OK」をクリックします。

作成が完了すると、Viewsからデータを確認することができます。

Power BIでの可視化

ビジュアルクエリで作成したビューなどを利用して、レポート作成を行います。

Reportingタブを選択し、「New report」をクリックして新規レポートを作成します。

今回は、作成したビューを利用して棒グラフと円グラフを作成し、可視化を行いました。

おわりに

今回は、ビジュアルクエリを利用してデータのフィルタリング、加工、グループ化を行いました。

ビジュアルクエリを使うことで、SQLなどのコードを書かずにGUI上でクエリを実施することができます。しかし、機能制限やパフォーマンス面では実際にコーディングする方が向いていることもあるので、使い分けが重要となります。

今後も、Microsoft Fabricについて記事にできればと思います。

執筆担当者プロフィール
松井 耕太

松井 耕太(日本ビジネスシステムズ株式会社)

2023年度入社。Data系を扱う部門に所属しています。

担当記事一覧