Microsoft Fabric使ってみる(Lakehouse編)

ようやく社内の検証環境でMicrosoft Fabricを使えるようになったので、さっそくどんなものかフィジビリティで感覚をつかんでいきます。
まずはレイクハウスの概要からです。
下記内容はMS Learnにも載っている情報をピックアップして掲載しております。

https://microsoftlearning.github.io/mslearn-fabric/Instructions/Labs/01-lakehouse.html

MS Learnをわざわざ読むのがめんどくさい方向けにスクショで流れをまとめました。

# 準備運動
1. Microsoft Fabric アカウントにサインアップ（アカウントがない人は新規作成）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/470405aa-b309-19e1-ce02-c281e0490814.png)
1. 作業用のワークスペースを準備する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/45ac1bc7-b365-2bb5-7707-74ffe192e693.png)

# 本題
### まずはファイルやデータを新規テーブルにアップロードさせる
1. Microsoft ファブリックのホーム ページで、 [Synapse Data Engineering] を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/7fd2f184-6cce-319b-199c-fbc5a0309a2b.png)

2. 任意の名前でレイクハウスを作成する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/ff095896-9731-662b-942b-140f62da73b4.png)

3. CSVファイルをアップロード
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/4f304f0d-6cd1-ca88-8c23-de59e64a8757.png)

4. 今回は「sales.csv」というサンプルファイルをローカルPCからアップロードします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/3caaccf7-83e2-781e-dce2-933d194c22bf.png)

5. ファイルがアップロードされたらFiles/dataの配下にファイルが配置されたことを確認します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/37aae1fc-ecbb-7e52-cddf-4b357a9a7069.png)
6. テーブルに読み込む
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/597c73a5-25b9-88d9-83bf-bb10ae0e4a46.png)

7. 対象のファイルを新規テーブルにアップロードする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/0991822b-d77a-3824-14bc-01ff71e28def.png)

8. ロードされたデータをテーブルで確認する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/8cf42e4f-203d-9699-2131-878193a8086d.png)

9. 差分テーブルのファイルは Parquet 形式で格納され、テーブルに適用されたトランザクションの詳細がログに記録される _delta_log という名前のサブフォルダーが含まれます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/19c3e5ad-0375-84e6-2f12-69e2ba794650.png)

### SQLを使用してテーブルをクエリしてみる
1. 右上のLakehouseからSQLエンドポイントに切り替える
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/7e68cf41-17a3-ccdf-f99e-d7ac94016583.png)
2. 新しいクエリボタンを押して、クエリエディターを開いてSQL文を入力する(ここの部分はSQL Server Management Studioと同じ使い方で複数のSQL文を発行可能)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/2613beb0-02d4-9bcb-a611-7fd4cad57a18.png)
3. Runボタンを結果が表示される(複数SQLを発行した場合はプルダウンで結果切替可能)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/5cff6eb3-c4b0-c191-850a-a50c8cb2dc89.png)

### ビジュアルクエリを作成する
あとで出てくるPower BIでレポート作成するための情報を整理するためにビジュアルクエリを作成します
1. ツールバーで新しいビジュアルクエリを選択します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/bc597885-6374-7b72-bd77-4c60a5c00dbe.png)

2. 列の管理メニューで列の選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/60d2aec0-a685-a213-6c05-ba08caa7b617.png)

3. 変換メニューでグループ化を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/3110d8f8-1bcb-4cb2-27c6-84195d7180de.png)

4. 結果が出力される
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/a9854c4a-f1a8-e175-be33-e571c6daf9c9.png)


### レポートを作成
 1. [SQL エンドポイント] ページの下部で、 [モデル] タブを選択します。データセットのデータモデルスキーマが表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/bc59b388-570c-04a9-eff9-32beaa603bf7.png)
 2. メニューリボンで、[レポート]タブを選択します。次に、 [新しいレポート] を選択します。新しいブラウザタブが開き、レポートをデザインできます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/804b4cd8-b078-483b-0714-6809d5b22b79.png)
 3. 作成したデータをビジュアライズするグラフを選択します。(ここまでくるとレポートの作成方法自体はPower BI Desktopと変わりないので説明は割愛)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885406/bdd66b38-08f8-f7dd-9741-5ac83aa1980a.png)


# まとめ
GUIで感覚的にできる部分もあるので、すでにETLツールやSQLServer Management Studio、Power BI Desktopを触ったことある方はすんなり入れる感じです。